Kubernetes技术与架构-网络 2

Kubernetes集群支持IP地址以及DNS访问Pod或者Service。

Service域名解析

Service域名解析包括A/AAAA记录以及SRV记录

A/AAAA记录

域名:my-svc.my-namespace.svc.cluster-domain.example

该域名对应的service名称是my-svc、service的命名空间是my-namespace、service对应的集群域名后缀是svc.cluster-domain.example

SRV记录

域名:_port-name._port-protocol.my-svc.my-namespace.svc.cluster-domain.example

该域名对应的端口号名称是_port-name、端口号支持的协议是_port-protocol

Pod域名解析

Pod域名解析包括A/AAAA记录

A/AAAA记录

域名:pod-ip-address.my-namespace.pod.cluster-domain.example

该域名对应的pod的ip地址是pod-ip-address、pod的命名空间是my-namespace、pod对应的集群域名后缀是pod.cluster-domain.example

域名:172-17-0-3.default.pod.cluster.local

该域名对应的pod的ip地址是172.17.0.3、pod的命名空间是default

域名:pod-ip-address.service-name.my-namespace.svc.cluster-domain.example

该pod域名是指任何一个pod被一个service绑定之后的域名

 

Kubernetes技术与架构-网络 2_第1张图片

Kubernetes技术与架构-网络 2_第2张图片

Kubernetes技术与架构-网络 2_第3张图片

如上所示,名称是busybox-subdomain的service绑定了两个名称是busybox1、busybox2的pod,则busybox-subdomain的service的域名是busybox-subdomain.my-namespace.svc.cluster-domain.example、busybox1的pod的域名是busybox-1.busybox-subdomain.my-namespace.svc.cluster-domain.example、busybox2的pod的域名是busybox-2.busybox-subdomain.my-namespace.svc.cluster-domain.example

Default

dns的默认策略,其使用Kubernetes集群中的pod运行的node服务器节点的域名解析

ClusterFirst

该dns策略,其优先使用Kubernetes集群的后缀域名解析,不匹配Kubernetes集群后缀的域名由上一级的dns负责解析

ClusterFirstWithHostNet

该dns策略,其使用主机网络运行pod时设置的dns策略

None

不使用dns策略

Kubernetes技术与架构-网络 2_第4张图片

如上所示,hostNetwork设置为true时的dns策略是ClusterFirstWithHostNet

nameservers

在pod中直接设置指定dns域名解析服务器的地址

searches

在pod中直接设置指定可以解析该pod的域名地址

Kubernetes技术与架构-网络 2_第5张图片

如上所示,直接设置指定pod对应的dns域名解析服务器的地址以及可以解析当前pod的域名

你可能感兴趣的:(Kubernetes技术与架构,kubernetes,架构,网络)