-
Notifications
You must be signed in to change notification settings - Fork 41.9k
Description
BUG REPORT:
Kubernetes version (use kubectl version):
Kubernetes v1.3.5+coreos.0,
Kube-dns add-on v19 from gcr.io/google_containers/kubedns-amd64:1.7
Environment:
- Cloud provider or hardware configuration: on-premise VMs
- OS (e.g. from /etc/os-release): Ubuntu Xenial
- Kernel (e.g.
uname -a): 4.4.0-38-generic - Install tools: Kube-dns add-on v19 from gcr.io/google_containers/kubedns-amd64:1.7
- Others:
What happened:
ndots:5 is hardcoded to the containers' base /etc/resolv.conf by kubelet running with --cluster_dns, --cluster_domain, --resolv-conf=/etc/resolv.conf flags.
What you expected to happen:
ndots should be configurable via the kubedns app definition or a configmap to allow users to chose if skydns shall be attempting absolute domains or utilizing the search domains, f.e.:
args:
# command = "/kube-dns"
- --domain=cluster.local.
- --ndots=5
- --dns-port=10053
AFAICT, DNS SRV records expect ndots:7, thus will fail to resolv via skydns (or maybe not! #33554 (comment))
Also, this might affect DNS performance by generating undesired additional resolve queries for suggested search subdomains before actually trying the absolute domain, when a number of dots in the initial query exceeds the given ndots threshold.
How to reproduce it (as minimally and precisely as possible):
Deploy kube dns cluster add-in, check containers' /etc/resolv.conf within pods
Anything else do we need to know:
This is rather a docs issue, see #35525 (comment) for details and please address that in docs.