Closed irbekrm closed 2 weeks ago
Thanks for review @oxtoacart , I am going to merge this and rebase #11019 . I am going to think about and experiment with https://github.com/tailscale/tailscale/pull/11919#discussion_r1585124332 a bit more separately (will create an issue once these three initial pieces get merged)
This is https://github.com/tailscale/tailscale/pull/11017 that was already once merged, but I reverted it just before 1.64 release in https://github.com/tailscale/tailscale/pull/11669 as we did not have the bandwidth to review the second part (https://github.com/tailscale/tailscale/pull/11019) and I did not want to release half of a feature. Below is the original PR description, the contents haven't changed:
This PR is the first part of the work towards enabling support for MagicDNS name resolution from within Kubernetes cluster. Second part that updates the nameserver config with 'DNS records' is in https://github.com/tailscale/tailscale/pull/11019. This PR:
DNSConfig
custom resource that can be used to tell the operator to deploy the nameserverDNSConfig
sOperator advertizes the nameserver's
Service
IP address on the DNSConfig status. Users can read it from there to update clusterDNS. Example flow:Apply a
DNSConfig
:Wait for the DNSConfig's status to be updated:
Update cluster DNS to add a stub nameserver for ts.net (the following example is for kube-dns, Corefile has different syntax):