0
votes

We are thinking about running SkyDNS on every Kubernetes host with Daemon Sets or static pods (via the Kubernetes manifest). We want to make every container use the local SkyDNS, deliberately bypassing Kubernetes cluster IP / kube-proxy routing. One way to achieve this would be to map DNS port 53 from the SkyDNS pod to each host and force each container to resolve on the host. Probably by somehow passing the docker bridge IP to the kubelet with --cluster-dns in a systemd unit.

Are there better alternatives to achieve the same?

Thanks, Andrej

1

1 Answers

0
votes

It sounds like you're on the right track. I'd pass the localhost address to the kubelet's --cluster-dns flag and promote the skydns container's UDP and TCP ports to be hostPorts.

That'll require the least configuration and the least additional privilege for the DNS pod.