-
Notifications
You must be signed in to change notification settings - Fork 2.8k
feat(gateway) add support for gateway api experimental ListenerSet #5972
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
base: master
Are you sure you want to change the base?
feat(gateway) add support for gateway api experimental ListenerSet #5972
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
|
|
Welcome @bmhughes! |
|
Hi @bmhughes. Thanks for your PR. I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
| - When [experimental](#gateway-experimental-support) support is enabled the Gateway is expanded from | ||
| the `parentRef` of the `XListenerSet`. | ||
|
|
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.
Would you please also complete the example just below accordingly?
|
/ok-to-test |
Pull Request Test Coverage Report for Build 20622387398Details
💛 - Coveralls |
3c418fb to
40b93de
Compare
|
Until gateway-api people have defined what to do for DNS we should stop changing. ListenerSet is likely the right thing to do, but not sure about the x-api. Likely gateway-api should stabilize the API before we change the DNS configuration sources. |
|
/hold likely we will not integrate HTTPRoute in the future , but ListenerSet as told by gateway-api. We should wait until they finalized the API and what external-dns should do to integrate. |
|
Hi Team, With ingress-nginx reaching EOL and no further updates expected beyond March, many of us are actively migrating off the Ingress API and toward Gateway API as the long-term path. In practice, Gateway API today still lacks a viable multi-tenancy story using only standard CRDs. The experimental ListenerSet (a.k.a. XListenerSet) is currently the only workable solution we’ve found for shared gateways with delegated ownership, especially when TLS and hostname isolation are required. We’ve successfully validated this model using Istio’s Gateway API implementation. While ListenerSet is experimental, it’s rapidly becoming a de-facto building block. cert-manager has publicly acknowledged the gap and committed to adding ListenerSet support (targeting Feb): Without ExternalDNS support, ListenerSet-based Gateway API deployments remain incomplete for production use, forcing teams either to maintain custom DNS automation or to delay migration away from Ingress altogether. Given the Ingress deprecation timeline and the ecosystem momentum around ListenerSet, I’d strongly encourage reconsidering the /hold. Even guarded or experimental support in ExternalDNS would meaningfully unblock real-world Gateway API adoption and align with the direction other core tooling (e.g., cert-manager) is already taking. Happy to help test or validate behavior against Istio Gateway API if that’s useful. |
40b93de to
4cf3a64
Compare
4cf3a64 to
588fb12
Compare
What does it do ?
Support the use of ListenerSetswith Gateway API.
Motivation
Using Gateway API and TLS without ListenerSets requires either wildcard certs or all hosts to be known when creating the gateway, ListenerSets removes with requirement but external-dns does not support them currently.
More