Skip to content
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

kube-proxy-replacement=strict doesn't enable needed features like kube-proxy-replacement=true does #32711

Open
2 of 3 tasks
zviratko opened this issue May 24, 2024 · 1 comment
Labels
area/helm Impacts helm charts and user deployment experience kind/bug This is a bug in the Cilium logic. kind/community-report This was reported by a user in the Cilium community, eg via Slack. need-more-info More information is required to further debug or fix the issue. sig/agent Cilium agent related.

Comments

@zviratko
Copy link

Is there an existing issue for this?

  • I have searched the existing issues

What happened?

I hit this when starting with Cilium, another user on Slack hit it recently.

Looking into code, it looks like it's supposed to work like a boolean, but it is a string.
In some places, tests are done whether it's "true" or "false", but "strict" is neither.

func (d *Daemon) getKubeProxyReplacementStatus() *models.KubeProxyReplacement {

I'm not exactly sure about the configuration logic, but I'm pretty sure it's not working right and doesn't enable the features needed for it to work correctly

option.EnableNodePort, option.EnableExternalIPs,

The above will only work if it is "true", but not "strict".

Please make it a boolean and die if it's strict (please don't do the thing cilium does where it just warns somewhere on startup and keeps people pulling their hair!). I wonder how many people hit this.

Cilium Version

1.15.5

Kernel Version

1.2.34

Kubernetes Version

1.30.1

Regression

No response

Sysdump

No response

Relevant log output

No response

Anything else?

No response

Cilium Users Document

  • Are you a user of Cilium? Please add yourself to the Users doc

Code of Conduct

  • I agree to follow this project's Code of Conduct
@zviratko zviratko added kind/bug This is a bug in the Cilium logic. kind/community-report This was reported by a user in the Cilium community, eg via Slack. needs/triage This issue requires triaging to establish severity and next steps. labels May 24, 2024
@joestringer
Copy link
Member

joestringer commented May 29, 2024

It looks like the use of "strict" was deprecated in v1.14 and removed in v1.15, per the release notes: https://docs.cilium.io/en/v1.14/operations/upgrade/#deprecated-options .

If I follow correctly, what you are asking for is for Helm to detect this misconfiguration and alert when you attempt to configure Cilium with an invalid value for this configuration. Is that accurate?

Unfortunately at the time of the v1.15 release we didn't have a schema for linting Helm configurations, so it may be a bit tricky to retrospectively apply this for those versions. However, as of the v1.16 prereleases, this should now be much more user-friendly. For example:

$ helm template cilium/cilium --version v1.16.0-pre.2  --set kubeProxyReplacement=strict
Error: execution error at (cilium/templates/cilium-configmap.yaml:70:5): kubeProxyReplacement must be explicitly set to a valid value (true or false) to continue.

Use --debug flag to render out invalid YAML

@joestringer joestringer added the need-more-info More information is required to further debug or fix the issue. label Jun 3, 2024
@ti-mo ti-mo added area/helm Impacts helm charts and user deployment experience sig/agent Cilium agent related. and removed needs/triage This issue requires triaging to establish severity and next steps. labels Jun 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/helm Impacts helm charts and user deployment experience kind/bug This is a bug in the Cilium logic. kind/community-report This was reported by a user in the Cilium community, eg via Slack. need-more-info More information is required to further debug or fix the issue. sig/agent Cilium agent related.
Projects
None yet
Development

No branches or pull requests

3 participants