接上文:
五、Pod 资源对象配置 DNS 信息
除了使用集群范围的DNS服务(如CoreDNS),在Pod级别也能设置DNS的相关策略和配置。
5.1、DNS 策略配置
在Pod的YAML配置文件中通过 spec.dnsPolicy 字段设置DNS策略,例如:
apiVersion: v1
king: Pod
metadata:
name: nginx
spec:
containers:
- name: nginx
image: nginx
dnsPolicy: Default
目前可以设置的DNS策略如下:
Default:继承Pod所在宿主机的DNS设置。
ClusterFirst:优先使用Kubernetes环境的DNS服务(如CoreDNS提供的域名解析服务),将无法解析的域名转发到从宿主机继承的DNS服务器。
ClusterFirstWithHostNet:与ClusterFirst相同,对于以hostNetwork模式运行的Pod,应明确指定使用该策略。
None:忽略Kubernetes环境的DNS配置,通过spec.dnsConfig自定义DNS配置。这个选项从Kubernetes 1.9版本开始引入,到Kubernetes 1.10版本升级为Beta版,到Kubernetes 1.14版本升级为稳定版。
5.2、DNS 配置设置
自定义DNS配置可以通过 spec.dnsConfig 字段进行设置,可以设置下列信息。
nameservers:一组DNS服务器的列表,最多可以