创建服务时,我可以指定集群 IP 范围中的静态 IP 地址,也可以不指定任何 IP 地址,在这种情况下,将动态分配此类地址。
但是在指定静态IP地址时,如何确保它不会与现有动态分配的IP地址冲突?例如,我可以以编程方式查询此类 IP 地址是否已在使用中。或者,我更喜欢指定集群方式保留用于手动分配的 IP 范围。例如
现在,我可以自己管理 10.20.5.0-10.22.5.255 范围内的 IP 地址,并且 kubernetes 可以使用剩余的池进行动态分配。 DHCP/静态 IP 范围通常如何在家庭路由器上工作。
这种场景在 kubernetes 中可能吗?
您手动选择的服务 IP 必须属于所选范围,否则您将收到来自 kubernetes 的
invalid
(422) 响应。 kubernetes 文档 有一个为服务选择您自己的 IP 部分。如果您拥有集群的管理员权限,最简单的选项是执行 kubectl get services --all-namespaces
,这将向您显示集群中配置的每项服务及其相应的集群 IP。
ServiceIPStaticSubrange 可用于降低分配此类 IP 的风险