Setting Kubernetes DNS cluster addon for high availability

10/29/2016

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?

-- Erez Rabih
kubernetes

1 Answer

11/1/2016

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.

-- rwehner
Source: StackOverflow