0
votes

We're using Kubernetes 1.3.6 on AWS Currently we have a single DNS pod of the cluster addon on the system namespace. If the node which the pod runs on fails for some reason the cluster's DNS service is shut down and most of it can't work correctly.

My question is: How can I setup a more robust DNS service? Can I just kubectl scale the replication controller for more pods? Will that work?

1
github.com/kubernetes/kubernetes/pull/33239 will be in soon(-ish) which should let you do that. - Anirudh Ramanathan
@AnirudhRamanathan The PR is for auto-scaling the DNS. What will happen today if I scale the replication controller for more than one pod? - Erez Rabih

1 Answers

1
votes

You can just scale up the DNS addon manually (or alter the ReplicationController's spec.replicas, depending on how you deploy).

The DNS addon uses basic Kubernetes objects for availability like any application you might deploy. It is behind a Service (called kube-dns by default) that has spec.clusterIP assigned to the same IP address the kubelet is aware of (via the --cluster-dns flag). The Service is the consistent access point for cluster DNS and will load balance the requests across however many kube-dns Pods you have.