Files
David Bond 373db59dae cmd/k8s-operator,k8s-operator: support dual-stack PeerRelay load balancers (#21663)
The reconciler forced the AWS load balancer address type to ipv4, so on
an IPv6 EKS cluster, where pod targets are IPv6, no Network Load
Balancer was ever provisioned.

Make the address type a default that spec.service.annotations can
override, defaulting IPv6 source NAT on when dualstack is requested.
Resolve load balancer hostnames for both address families and requeue
ready PeerRelays every five minutes, since DNS records for a new load
balancer arrive over several minutes. Add spec.service.ipFamilyPolicy
and ipFamilies so dual-stack GKE and AKS clusters can request a
dual-stack load balancer too.

Shorten the PeerRelay field descriptions and link to the PeerRelay docs
for the detail.

Fixes #21399

Change-Id: Idf22eb02f8ed9a46ff4abea8d4faef4b8c12c111

Signed-off-by: David Bond <davidsbond93@gmail.com>
2026-10-10 10:05:23 +01:00
..

Tailscale Kubernetes operator deployment manifests

./cmd/k8s-operator/deploy contain various Tailscale Kubernetes operator deployment manifests.

Helm chart

./cmd/k8s-operator/deploy/chart contains Tailscale operator Helm chart templates. The chart templates are also used to generate the static manifest, so developers must ensure that any changes applied to the chart have been propagated to the static manifest by running go generate tailscale.com/cmd/k8s-operator

Static manifests

./cmd/k8s-operator/deploy/manifests/operator.yaml is a static manifest for the operator generated from the Helm chart templates for the operator.