-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Fix ingress reconciliation errors when host network is enabled #40232
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
Fix ingress reconciliation errors when host network is enabled #40232
Conversation
This issue happens in 1.17.x . it should be backported to 1.17 too |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this fix @rtheobald
/test |
I have a fix for the integration test. I am just looking to run the conformance tests locally to figure out what is happening there. |
c337159
to
27b784d
Compare
/test |
For the first failing test, Cilium E2E Upgrade (ci-e2e-upgrade), it is setting this helm value
The second one, Conformance IPsec E2E (ci-ipsec-e2e), the Setup & Test (ipsec-7, 5.15-...) test seems to have been cancelled after an hour of run time. Not sure if that was scripted or an operator intervened. The third failing test Conformance Runtime (ci-runtime) seems to be trying to run make for a target that doesn't exist in the makefile:
|
At least some of those failures I have seen in the past when we change something in the CI on the |
Head branch was pushed to by a user without write access
27b784d
to
06eb366
Compare
/test |
Cilium Cluster Mesh upgrade (ci-clustermesh): Failed Upgrade and Downgrade Test (4, wireguard, iptables, false, 511, cluster) due to errors in the log when an lxd link for endpoint Conformance Cluster Mesh (ci-clustermesh): Failed installing Cilium on the second cluster because a port was already allocated on the host system: Conformance Gateway API (ci-gateway-api): Failed Gateway API Conformance Test (standard, false, ipsec) for MeshHTTPRouteMatching, MeshHTTPRouteQueryParamMatching and MeshHTTPRouteRedirectHostAndStatus as no pods were found. This had the egress gateway enabled |
Head branch was pushed to by a user without write access
06eb366
to
741af69
Compare
/test |
Thanks for triaging those failures. If they're affecting the tree we might want to check if there are existing CI issues filed for those so we can follow up. At a glance they seem unrelated to this PR. |
Previously the ingress annotation code for the external traffic policy was returning Cluster as a default. This would cause a reconciliation error when using the host network and prevent the service from being created. For the service to work in this mode, there should be no external traffic policy. To support this, the ingress service template has to be adjusted to check the host network flag before setting the policy Fixes: cilium#34028 Signed-off-by: Rich Theobald <rich.theobald@gmail.com>
Head branch was pushed to by a user without write access
741af69
to
12002e7
Compare
/test |
Previously the ingress annotation code for the external traffic policy was returning
Cluster
as a default. This would cause a reconciliation error when using the host network and prevent the service from being created:For the service to work in this mode, there should be no external traffic policy.
To support this, the ingress service template also had to be adjusted to check the host network flag before setting the policy.
Fixes: #34028