Replies: 1 comment 2 replies
We're solving that with our commercial offering, with an SNI-based solution: https://kamaji.clastix.io/enterprise-addons/ It's currently based on Ingress, but it can be ported to the Gateway API: get in touch with CLASTIX if your business is up for such a commitment. |
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hi there,
I am currently validating a configuration to expose the
kube-apiserverusing the Gateway API.I have set the Gateway's IP address in
spec.networkProfile.advertiseAddress. This IP address corresponds to thekind: Gatewayhostname configured asspec.controlPlane.gateway.hostname: *.cluster.dev.The issue I am facing is related to
kubernetes.default.svc, which is also discussed here.Because traffic from Pods to
kubernetes.default.svcis IP-address-based rather than SNI-based, they fail to connect to the Control Plane.How can I address this issue? If there are any common solutions or workarounds, please let me know.
Currently, even the initially deployed CoreDNS cannot connect to the Control Plane, which effectively leaves me stuck and unable to proceed with anything.
I have confirmed a working workaround by setting
--endpoint-reconciler-type=noneon thekube-apiserverto disable the automatic creation of EndpointSlices for thekubernetesservice, and then rewriting the kubernetes service into anExternalNameService like this:While this is one potential approach, rewriting it to an
ExternalNameService prevents theKUBERNETES_SERVICE_HOSTandKUBERNETES_SERVICE_PORTenvironment variables from being injected into Pods. Consequently, any Pods that rely on these environment variables (which are quite common, including CoreDNS) will fail to function.What other approaches or solutions could be considered to resolve this issue?
All reactions