【问题标题】:How to change Kubernetes nodes cidr?如何更改 Kubernetes 节点 cidr?
【发布时间】:2021-08-05 22:19:06
【问题描述】:

集群的 CIDR 为 10.100.32.0/22,但主节点和工作节点的 CIDR 为 172.168.0.0/24

我尝试使用kubectl edit node node_name 更改每个节点的 CIDR,但 vim 只保存一个临时 YAML 文件。

我也尝试过申请,但似乎没有用。

我也试过用 kubectl patch 命令,但是好像也没用,返回:

节点“node_name”无效:spec.podCIDRs: Forbidden: node 更新可能不会更改 podCIDR,除非从 "" 变为有效

当我检查 kube-controller-manager 日志(具有 CrashLoopBackOff 状态)时,它们显示:

错误启动“nodeipam”错误启动控制器:未能标记 idx [0] 处的 cidr[172.168.10.0/24] 被节点占用:node_name:cidr 172.168.10.0/24 超出集群 cidr 10.100.32.0/22 的范围

任何建议都会有所帮助,谢谢。

【问题讨论】:

    标签: kubernetes cidr


    【解决方案1】:

    是的,出于安全目的,该字段是只读的。您必须从头开始重新初始化节点。一般来说,即时更改节点 IP 非常冒险,我会创建一个新的。

    【讨论】:

      【解决方案2】:

      我已经通过重新初始化整个 Kubernetes 集群成功地更改了 CIDR。

      使用 kubeadm init 将 CIDR 作为参数传递

      【讨论】:

        猜你喜欢
        • 2018-02-10
        • 2021-06-07
        • 2020-04-26
        • 2021-11-12
        • 2019-07-23
        • 2021-09-22
        • 2021-10-29
        • 2021-06-17
        • 2018-07-16
        相关资源
        最近更新 更多