解析:ndots 含义
ndots 意思就是 点号. (dot) 的个数
ndots: 5 就是 5个点号
5个点号 的意思就是说
对于一个 域名, 如果不是完全限定名(即某个域名不是以. 结尾, a.com 不是, a.com. 是)
且点号数量少于5个, 那么就按照 search 的顺序,依次解析
如果点号大于或者等于5, 直接解析
如上面的 search 配置项表达的解析顺序就是
backend.svc.cluster.local
svc.cluster.local
cluster.local
localdomain
1、修改ndots 点号数
name: nginx
dnsConfig:
options:
- name: ndots
value: "3"
dnsPolicy: ClusterFirst
2、 coredns 自定义域名
2.1、修改coredns configmap,添加要解析的域名和ip
kubectl edit cm -n kube-system coredns
health {
lameduck 5s
}
hosts {
10.107.156.113 k8s.nginx.com
fallthrough
}
2.3、coredns 插入外部dns ip 指定dns解析域名修改如下内容红色部分 baidu.com 指定114.114.114.114 域名解析或者.:53 监听所有域名
kubectl edit cm -n kube-system coredns
prometheus :9153
forward . /etc/resolv.conf {
max_concurrent 1000
}
cache 30
loop
reload
loadbalance
}
baidu.com:53 {
errors
cache 30
forward . {
114.114.114.114
}
reload
}
2.2、 重启coredns,并验证域名是否解析成功,创建pod 去ping 域名