When the pods on GKE k8s are deployed they have the ability to connect to other GCE (google compute engine) instances by ip or google metadata DNS server name.

I use internal bind installed on 2 (master/slave) GCE instances for resolving. Let say example.local is the internal zone name, and all the instances are using it to do name-resolving. i do use custom dns, because i need to resolve on-premises dns records, and google cloud internal dns can't be managed.

GKE kubernetes pods are using the kube-dns and use /etc/resolv.conf resolver IP's which are using instance default google settings, and I can’t resolve my internal zone.

I really don’t know how to overcome this issue. Using Docker for example has the option to pass dns on container boot with “docker -d -p…… --dns=…”.

can skydns be configured to have a zone forwarder defined for example.local ? just guessing.


This feature is coming in Kubernetes v1.6:


It will allow you to inject private zones into the kube-DNS configuration.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.