k8s 内部dns配置说明

https://support.huaweicloud.com/usermanual-cce/cce_01_0133.html

https://www.jianshu.com/p/dbc063e190c9

None 无任何策略
Default 默认
ClusterFirst 集群 DNS 优先
ClusterFirstWithHostNet 集群 DNS 优先,并伴随着使用宿主机网络

nameserver:容器解析域名时查询的DNS服务器的IP地址列表。如果设置为10.247.x.x说明DNS对接到Kube-DNS/CoreDNS,如果是其他IP地址,则表示采用华为云DNS或者用户自建的DNS。
search:定义域名的搜索域列表,当访问的域名不能被DNS解析时,会把该域名与搜索域列表中的域依次进行组合,并重新向DNS发起请求,直到域名被正确解析或者尝试完搜索域列表为止。对于CCE集群来说,容器的搜索域列表配置3个域,当解析一个不存在的域名时,会产生8次DNS查询,因为对于每个域名需要查询两次,分别是IPv4和IPv6。
options:定义域名解析配置文件的其他选项,常见的有timeout、attempts和ndots等等。Kubernetes集群容器的域名解析文件设置为options ndots:5,该参数的含义是当域名的“.”个数小于ndots的值,会先把域名与search搜索域列表进行组合后进行DNS查询,如果均没有被正确解析,再以域名本身去进行DNS查询。当域名的“.”个数大于或者等于ndots的值,会先对域名本身进行DNS查询,如果没有被正确解析,再把域名与search搜索域列表依次进行组合后进行DNS查询。如查询www.huaweicloud.com域名时,由于该域名的“.”个数为2,小于ndots的值,所以DNS查询请求的顺序依次为:www.huaweicloud.default.svc.cluster.local、www.huaweicloud.com.svc.cluster.local、 www.huaweicloud.com.cluster.local和 www.huaweicloud.com,需要发起至少7次DNS查询请求才能解析出该域名的IP。可以看出,这种配置在访问外部域名时,存在大量冗余的DNS查询,存在优化点。

你可能感兴趣的:(k8s 内部dns配置说明)