首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改Kubernetes集群网段

更改Kubernetes集群网段
EN

Stack Overflow用户
提问于 2018-12-14 23:23:57
回答 2查看 1.2K关注 0票数 0

我们已经设置了一个具有特定service-cluster-ip-range的Kubernetes集群。现在,此范围已完全用于IP地址,因此我们无法创建新服务。当尝试这样做时,我们得到以下错误:

代码语言:javascript
复制
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范围的文档。这有可能吗?做这件事的步骤是什么?

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2021-05-04 05:04:46

您可以通过修改/etc/kubernetes/manifest/kube-controller-manager.yaml文件来更改集群ip服务范围。但是,您应该隔离受影响的节点并停止所有服务/部署,删除所有服务/部署,以便可以重新创建它们。您可能需要更改cni插件的设置。我使用Calico,它需要更改集群CIDR,但不需要更改服务ip范围。更换端口后,请务必重新启动kubelet。

票数 1
EN

Stack Overflow用户

发布于 2019-01-02 18:53:23

检查official documentation

Weave Net和Docker的默认配置都使用Private Networks,其地址在公共互联网上永远找不到,因此减少了IP重叠的机会。但是,可能是您或您的主机提供商正在使用相同范围内的某些私有地址,这将导致冲突。

如果在weave launch之后,将显示以下错误消息:

代码语言:javascript
复制
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。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53782534

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档