-
Notifications
You must be signed in to change notification settings - Fork 469
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
use xtables.lock #506
Comments
@Daryltp thanks for reporting the issue. kube-router need to hold xtables.lock before trying to run iptables commands kube-router manifests need to mount xtables.lock, go-iptables library that kube-router uses can lock to prevent concurrency issues. |
I took a quick look at this.
|
I see now that the go-iptables library always runs with --wait, so would mounting the xtables.lock file be enough to resolve this?
|
I've added the following to my kube-router deployments to allows usage of xtables
|
The volume mount doesn't really solve the issue. We also see kube-proxy on the same node giving errors like - From the messages it looks like a race condition between kube-proxy and kube-router on iptables lock. We've been seeing this issue persistently in our clusters (AKS cluster with around 20 nodes). |
@soumeng09 can you please share kube-router logs? Lock is held by It woule be good to look at the both kube-router and kube-proxy logs to understand what sort of contention is happening. Also is it possible that some other process is holding up the lock? |
used by iptables command when run by kube-router Fixes #506
…loudnativelabs#884) used by iptables command when run by kube-router Fixes cloudnativelabs#506
When deploying networkpolicies to two namespaces in the same cluster on Azure Kubernetes Service simultaneously we have observed the following error. It appears to be due to resource contention on the iptables command. The issue is that both deployments will complete "successfully" but the traffic flows the policy allows will fail and the error is only apparent when you view the logs of the kube-router pod/s.
The text was updated successfully, but these errors were encountered: