Skip to content

Use pod-network k8s service endpoint for non-cluster-host Typha#4840

Merged
caseydavenport merged 1 commit into
tigera:masterfrom
caseydavenport:casey-nch-typha-podnet
May 21, 2026
Merged

Use pod-network k8s service endpoint for non-cluster-host Typha#4840
caseydavenport merged 1 commit into
tigera:masterfrom
caseydavenport:casey-nch-typha-podnet

Conversation

@caseydavenport
Copy link
Copy Markdown
Member

@caseydavenport caseydavenport commented May 21, 2026

The non-cluster-host Typha deployment runs pod-networked, but it inherits its KUBERNETES_SERVICE_HOST / KUBERNETES_SERVICE_PORT env vars from the host-network endpoint. On MKE clusters that's proxy.local:6444, which pods can't resolve, so the NCH Typha crashloops with DNS timeouts during the iptables-to-eBPF migration.

#4474 already plumbed a separate PodNetworkEndpoint (from the KUBERNETES_SERVICE_HOST_POD_NETWORK / KUBERNETES_SERVICE_PORT_POD_NETWORK entries in the kubernetes-service-endpoint ConfigMap) for exactly this case, but the NCH Typha render code wasn't consuming it. This passes it through TyphaConfiguration and overrides the host-network values in typhaEnvVarsNonClusterHost when it's set.

Fixes the non-cluster-host Typha deployment crashlooping on clusters where the host-network kube-apiserver endpoint is not reachable from pod-networked pods (e.g. MKE's proxy.local). The pod-network endpoint from the kubernetes-service-endpoint ConfigMap is now used when set.

The non-cluster-host Typha deployment runs pod-networked, but it was
inheriting KUBERNETES_SERVICE_HOST/PORT from the host-network endpoint.
On MKE clusters that resolves to proxy.local:6444, which is unreachable
from pods, so the deployment crashloops with DNS timeouts.

Override those env vars from K8sServiceEpPodNetwork (populated from the
kubernetes-service-endpoint ConfigMap's *_POD_NETWORK keys) when set.
@caseydavenport caseydavenport merged commit e3664ff into tigera:master May 21, 2026
7 of 9 checks passed
@caseydavenport caseydavenport deleted the casey-nch-typha-podnet branch May 21, 2026 18:33
caseydavenport added a commit that referenced this pull request May 21, 2026
… (#4842)

The non-cluster-host Typha deployment runs pod-networked, but it was
inheriting KUBERNETES_SERVICE_HOST/PORT from the host-network endpoint.
On MKE clusters that resolves to proxy.local:6444, which is unreachable
from pods, so the deployment crashloops with DNS timeouts.

Override those env vars from K8sServiceEpPodNetwork (populated from the
kubernetes-service-endpoint ConfigMap's *_POD_NETWORK keys) when set.

(cherry picked from commit e3664ff)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants