Kubernetes集群支持为Pod或者Service申请IPV4或者IPV6的地址空间。

如上所示,使用Kubernetes组件设置IPV4或者IPV6的地址空间

Kubernetes技术与架构-网络 3-LMLPHP

如上所示,设置Service同时使用IPV4以及IPV6

Kubernetes技术与架构-网络 3-LMLPHP

如上所示,设置Service仅支持IPV4

Kubernetes技术与架构-网络 3-LMLPHP

如上所示,设置headless类型Service的IP配置

Kubernetes技术与架构-网络 3-LMLPHP

如上所示,当设置service.kubernetes.io/topology-mode为auto,使用拓扑感知的方式路由,即根据实际流量的大小,将实际流量平衡地调度到所有区域zone中

Kubernetes技术与架构-网络 3-LMLPHP

如上所示,使用静态的方式直接指定分配的IP地址,Kubernetes集群支持动态地从地址空间中选择分配一个IP地址,或者直接指定一个静态的IP地址

Kubernetes技术与架构-网络 3-LMLPHP

如上所示,Kubernetes集群为避免申请IP地址的时候发生地址冲突,使用公式min(max(16, cidrSize / 16), 256)约束静态IP地址与动态IP地址的个数比例的申请,该公式表示静态IP地址的最小偏移量,10.96.0.0/24 的地址个数是256-2=254,min(max(16, 256/16), 256) = min(16, 256) = 16,静态地址范围是10.96.0.1到10.96.0.16,而动态的地址最大值是 10.96.0.254

Kubernetes技术与架构-网络 3-LMLPHP

如上所示,10.96.0.0/20的地址个数是4096-2= 4094,min(max(16, 4096/16), 256) = min(256, 256) = 256,静态地址范围是10.96.0.1到10.96.1.0,而动态的地址最大值是 10.96.15.254

Kubernetes技术与架构-网络 3-LMLPHP

如上所示,10.96.0.0/16的地址个数是65536-2=65534,min(max(16, 65536/16), 256) = min(4096, 256) = 256,静态地址范围是10.96.0.1到10.96.1.0,而动态的地址最大值是 10.96.255.254

10-24 06:18