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

CFP: Gateway API support should work even when experimental CRDs are not present #32539

Open
youngnick opened this issue May 15, 2024 · 1 comment
Labels
area/servicemesh GH issues or PRs regarding servicemesh feature/k8s-gateway-api kind/feature This introduces new functionality. sig/agent Cilium agent related.

Comments

@youngnick
Copy link
Contributor

Cilium Feature Proposal

Is your proposed feature related to a problem?

Gateway API v1.1 moved the GRPCRoute resource from Experimental to Standard and, at the same time, bumped the apiVersion from v1alpha2 to v1.

This means that, if you change from Gateway API v1.0 experimental to v1.1 standard, the Cilium operator will fail to start, because it currently requires that all experimental resources are present in the cluster. To put this another way, Cilium's Gateway API support currently will only work with the Experimental channel, which is not very conducive to the idea of Standard being the most stable Gateway API version.

Describe the feature you'd like

The Cilium operator's Gateway API controllers should consider experimental resources like TLSRoute or BackendTLSPolicy as optional, so that Cilium can support either the Experimental or Standard Gateway API releases.

(Optional) Describe your proposed solution

This should be possible by changing the startup and code of the Gateway API controller-runtime manager to only enable processing of Experimental CRDs if they are present in the cluster. Practically, this will mean that the presence-checking code we already have will need to be a bit more complex, and pass config that will allow the Reconcilers to be optionally added if the CRDs are present.

@youngnick youngnick added kind/feature This introduces new functionality. sig/agent Cilium agent related. area/servicemesh GH issues or PRs regarding servicemesh feature/k8s-gateway-api labels May 15, 2024
@youngnick
Copy link
Contributor Author

youngnick commented May 15, 2024

This came up because of kubernetes-sigs/gateway-api#3075 and other reports of upgrade problems.

We may also need to add some upgrade instructions to the Gateway API instructions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/servicemesh GH issues or PRs regarding servicemesh feature/k8s-gateway-api kind/feature This introduces new functionality. sig/agent Cilium agent related.
Projects
None yet
Development

No branches or pull requests

1 participant