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?
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.