Skip to content

k8s: Skip endpoints without conditions#41234

Merged
joamaki merged 1 commit intocilium:mainfrom
joamaki:pr/joamaki/lb-ignore-endpoints-without-conditions
Aug 18, 2025
Merged

k8s: Skip endpoints without conditions#41234
joamaki merged 1 commit intocilium:mainfrom
joamaki:pr/joamaki/lb-ignore-endpoints-without-conditions

Conversation

@joamaki
Copy link
Copy Markdown
Contributor

@joamaki joamaki commented Aug 18, 2025

Skip endpoints in endpoint slices that have no conditions set as those are not yet ready to serve traffic. Before this they were marked quarantined which caused issues as the quarantined state was restored and not cleared until health checked (and we usually don't have a health checker).

While we do want to keep unready endpoints around, we'll need to figure out what to mark them as that doesn't have the interaction with health checking. This is thus a temporary fix to go back to the old behavior. Opened issue #41244 to follow up on this.

Fixes: #41194
Fixes: 6f41c98 ("loadbalancer: Keep non-serving terminating backends")

@maintainer-s-little-helper maintainer-s-little-helper bot added the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Aug 18, 2025
@joamaki joamaki added the release-note/misc This PR makes changes that have no direct user impact. label Aug 18, 2025
@maintainer-s-little-helper maintainer-s-little-helper bot removed the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Aug 18, 2025
@joamaki
Copy link
Copy Markdown
Contributor Author

joamaki commented Aug 18, 2025

/ci-ginkgo

@joamaki
Copy link
Copy Markdown
Contributor Author

joamaki commented Aug 18, 2025

/test

Skip endpoints in endpoint slices that have no conditions set as those
are not yet ready to serve traffic. Before this they were marked quarantined
which is unnecessary and it caused issues as the quarantined state was restored
and not cleared until health checked (and we usually don't have a health checker).

Fixes: cilium#41194
Fixes: 6f41c98 ("loadbalancer: Keep non-serving terminating backends")
Signed-off-by: Jussi Maki <[email protected]>
@joamaki joamaki force-pushed the pr/joamaki/lb-ignore-endpoints-without-conditions branch from 44e243c to ddfc499 Compare August 18, 2025 11:28
@joamaki
Copy link
Copy Markdown
Contributor Author

joamaki commented Aug 18, 2025

/test

@joamaki joamaki marked this pull request as ready for review August 18, 2025 11:29
@joamaki joamaki requested review from a team as code owners August 18, 2025 11:29
@joamaki joamaki requested review from aditighag and marseel August 18, 2025 11:29
Copy link
Copy Markdown
Member

@borkmann borkmann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ack lgtm, I presume this was also the behavior prior to the set of fixes, right?

@joamaki
Copy link
Copy Markdown
Contributor Author

joamaki commented Aug 18, 2025

ack lgtm, I presume this was also the behavior prior to the set of fixes, right?

Correct, prior to 6f41c98 we just skipped such backends.

@joamaki joamaki enabled auto-merge August 18, 2025 11:55
Copy link
Copy Markdown
Member

@marseel marseel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

from offline discussion: this change (revert) is incorrect as mentioned above from service load balancing point of view, but it unblocks CI for everyone. Approve pending creating issue to track it.

@joamaki
Copy link
Copy Markdown
Contributor Author

joamaki commented Aug 18, 2025

from offline discussion: this change (revert) is incorrect as mentioned above from service load balancing point of view, but it unblocks CI for everyone. Approve pending creating issue to track it.

#41244

@joamaki joamaki added this pull request to the merge queue Aug 18, 2025
Merged via the queue into cilium:main with commit af7dde3 Aug 18, 2025
75 of 77 checks passed
@joamaki joamaki deleted the pr/joamaki/lb-ignore-endpoints-without-conditions branch August 18, 2025 13:42
joamaki added a commit to joamaki/cilium that referenced this pull request Oct 14, 2025
To avoid disrupting connections to backends that are flapping on their
readiness state, keep the backends in the backends BPF map, but not in
the services map.

This in effect reverts the temporary workaround in cilium#41234.

Fixes: cilium#41244
Signed-off-by: Jussi Maki <[email protected]>
joamaki added a commit to joamaki/cilium that referenced this pull request Oct 14, 2025
To avoid disrupting connections to backends that are flapping on their
readiness state, keep the backends in the backends BPF map, but not in
the services map.

This in effect reverts the temporary workaround in cilium#41234.

Fixes: cilium#41244
Signed-off-by: Jussi Maki <[email protected]>
joamaki added a commit to joamaki/cilium that referenced this pull request Oct 20, 2025
To avoid disrupting connections to backends that are flapping on their
readiness state, keep the backends in the backends BPF map, but not in
the services map.

This in effect reverts the temporary workaround in cilium#41234.

Fixes: cilium#41244
Signed-off-by: Jussi Maki <[email protected]>
joamaki added a commit to joamaki/cilium that referenced this pull request Oct 27, 2025
To avoid disrupting connections to backends that are flapping on their
readiness state, keep the backends in the backends BPF map, but not in
the services map.

This in effect reverts the temporary workaround in cilium#41234.

Fixes: cilium#41244
Signed-off-by: Jussi Maki <[email protected]>
github-merge-queue bot pushed a commit that referenced this pull request Oct 28, 2025
To avoid disrupting connections to backends that are flapping on their
readiness state, keep the backends in the backends BPF map, but not in
the services map.

This in effect reverts the temporary workaround in #41234.

Fixes: #41244
Signed-off-by: Jussi Maki <[email protected]>
joamaki added a commit to joamaki/cilium that referenced this pull request Nov 11, 2025
[ upstream commit 73812ed ]

To avoid disrupting connections to backends that are flapping on their
readiness state, keep the backends in the backends BPF map, but not in
the services map.

This in effect reverts the temporary workaround in cilium#41234.

Fixes: cilium#41244
Signed-off-by: Jussi Maki <[email protected]>
github-merge-queue bot pushed a commit that referenced this pull request Nov 17, 2025
[ upstream commit 73812ed ]

To avoid disrupting connections to backends that are flapping on their
readiness state, keep the backends in the backends BPF map, but not in
the services map.

This in effect reverts the temporary workaround in #41234.

Fixes: #41244
Signed-off-by: Jussi Maki <[email protected]>
@cilium-release-bot cilium-release-bot bot moved this to Released in cilium v1.19.0 Feb 3, 2026
nddq pushed a commit to nddq/cilium that referenced this pull request Feb 17, 2026
[ upstream commit 73812ed ]

To avoid disrupting connections to backends that are flapping on their
readiness state, keep the backends in the backends BPF map, but not in
the services map.

This in effect reverts the temporary workaround in cilium#41234.

Fixes: cilium#41244
Signed-off-by: Jussi Maki <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release-note/misc This PR makes changes that have no direct user impact.

Projects

No open projects
Status: Released

Development

Successfully merging this pull request may close these issues.

CI: Conformance Ginkgo (ci-ginkgo): E2E Test (1.33, f14-datapath-service-ns-xdp-2): ClusterIP can be accessed when external access is enabled

4 participants