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=184.108.40.206…”.
can skydns be configured to have a zone forwarder defined for example.local ? just guessing.