-
Notifications
You must be signed in to change notification settings - Fork 466
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing NPC heartbeat because of interfering Pod updates #725
Comments
ticpu
pushed a commit
to ticpu/kube-router
that referenced
this issue
May 31, 2019
In reference to issue cloudnativelabs#725, we modified kube-router to send heartbeats during policy sync to prevent missing heartbeats while running iptables commands. Signed-off-by: Jérôme Poulin <[email protected]>
ticpu
pushed a commit
to ticpu/kube-router
that referenced
this issue
May 31, 2019
In reference to issue cloudnativelabs#725, we modified kube-router to send heartbeats during policy sync to prevent missing heartbeats while running iptables commands. Signed-off-by: Jérôme Poulin <[email protected]>
ticpu
pushed a commit
to ticpu/kube-router
that referenced
this issue
May 31, 2019
In reference to issue cloudnativelabs#725, we modified kube-router to send heartbeats during policy sync to prevent missing heartbeats while running iptables commands. This commit is the first part to make kube-router faster and more robust when applying network policies. Signed-off-by: Jérôme Poulin <[email protected]>
ticpu
pushed a commit
to ticpu/kube-router
that referenced
this issue
May 31, 2019
In reference to issue cloudnativelabs#725, we modified kube-router to send heartbeats during policy sync to prevent missing heartbeats while running iptables commands. This commit is the first part to make kube-router faster and more robust when applying network policies. Signed-off-by: Jérôme Poulin <[email protected]>
ticpu
pushed a commit
to ticpu/kube-router
that referenced
this issue
May 31, 2019
In reference to issue cloudnativelabs#725, we modified kube-router to send heartbeats during policy sync to prevent missing heartbeats while running iptables commands. This commit is the first part to make kube-router faster and more robust when applying network policies. Signed-off-by: Jérôme Poulin <[email protected]>
ticpu
pushed a commit
to ticpu/kube-router
that referenced
this issue
May 31, 2019
In reference to issue cloudnativelabs#725, we modified kube-router to send heartbeats before starting policy sync to prevent missing heartbeats while running iptables commands. Signed-off-by: Jérôme Poulin <[email protected]>
ticpu
pushed a commit
to ticpu/kube-router
that referenced
this issue
May 31, 2019
In reference to issue cloudnativelabs#725, we modified kube-router to send heartbeats before starting policy sync to prevent missing heartbeats while running iptables commands. Signed-off-by: Jérôme Poulin <[email protected]>
murali-reddy
pushed a commit
that referenced
this issue
Jun 24, 2019
In reference to issue #725, we modified kube-router to send heartbeats before starting policy sync to prevent missing heartbeats while running iptables commands. Signed-off-by: Jérôme Poulin <[email protected]>
This should be fixed with the pull request #741 merged, if you want to give it a try. |
Cytrian
pushed a commit
to yieldlab/kube-router
that referenced
this issue
Jul 9, 2019
Missing NPC heartbeat because of interfering Pod updates commit 94fd7b6
murali-reddy
pushed a commit
that referenced
this issue
Jul 25, 2019
In reference to issue #725, we modified kube-router to send heartbeats before starting policy sync to prevent missing heartbeats while running iptables commands. Signed-off-by: Jérôme Poulin <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
We are experiencing regular kube-router failures. The health check sometimes fails.
I could nail it down to this situation:
Normally network_policy_controller Run() executes Sync() every 5 minutes, regulated by a Ticker.
After executing Sync() it sends a NPC heartbeat.
On pod updates, OnPodUpdate() also executes Sync().
If OnPodUpdates() executes Sync() just before the heartbeat is expected by healthcheck and Sync() takes too long, the health_controller misses a heartbeat.
TLDR: Run() cannot execute Sync() when Sync() is already started by OnPodUpdate().
Here's a shortened/commented log of this situation.
To fix this, I suggest calling
healthcheck.SendHeartBeat(healthChan, "NPC")
inOnPodUpdate()
andOnNetworkPolicyUpdate()
andOnNamespaceUpdate()
The text was updated successfully, but these errors were encountered: