我们已经设置了一个具有特定service-cluster-ip-range的Kubernetes集群。现在,此范围已完全用于IP地址,因此我们无法创建新服务。当尝试这样做时,我们得到以下错误:
Warning ProvisioningFailed 2s persistentvolume-controller Failed to provision volume with StorageClass "glusterfs-storage": failed to create volume: failed to create endpoint/service default/glusterfs-dynamic-gluster-vol-mongodb-data-03: error creating service: Internal error occurred: failed to allocate a serviceIP: range is full我们必须增加或更改集群网段。
我们还没有找到任何关于如何更改集群IP范围的文档。这有可能吗?做这件事的步骤是什么?
谢谢。
发布于 2021-05-04 05:04:46
您可以通过修改/etc/kubernetes/manifest/kube-controller-manager.yaml文件来更改集群ip服务范围。但是,您应该隔离受影响的节点并停止所有服务/部署,删除所有服务/部署,以便可以重新创建它们。您可能需要更改cni插件的设置。我使用Calico,它需要更改集群CIDR,但不需要更改服务ip范围。更换端口后,请务必重新启动kubelet。
发布于 2019-01-02 18:53:23
Weave Net和Docker的默认配置都使用Private Networks,其地址在公共互联网上永远找不到,因此减少了IP重叠的机会。但是,可能是您或您的主机提供商正在使用相同范围内的某些私有地址,这将导致冲突。
如果在weave launch之后,将显示以下错误消息:
Network 10.32.0.0/12 overlaps with existing route 10.0.0.0/8 on host.
ERROR: Default --ipalloc-range 10.32.0.0/12 overlaps with existing route on host.
You must pick another range and set it on all hosts.正如消息指出的那样,Weave Net想要使用的默认范围是10.32.0.0/12 -一个12位前缀,其中所有地址都以位模式000010100010开头,或者以从10.32.0.0到10.47.255.255的十进制数开头。
但是,您的主机正在使用10.0.0.0/8的路由,因为前8位是相同的,因此会重叠。在这种情况下,如果对10.32.5.6这样的地址使用默认网络,内核将永远无法确定这是否意味着10.32.0.0/12的编织网网络或10.0.0.0/8的托管网络。
如果您确定所需的地址未在使用中,则在所有主机上将命令行参数中的--ipalloc-range显式设置为weave launch的范围会强制Weave Net使用该范围,即使它重叠也是如此。否则,您可以选择不同的范围,最好是Private Networks的另一个子集。例如172.30.0.0/16。
https://stackoverflow.com/questions/53782534
复制相似问题