kubernetes - 如何更改 Kubernetes 节点 cidr?
问题描述
集群的 CIDR 为 10.100.32.0/22,但主节点和工作节点的 CIDR 为 172.168.0.0/24
我尝试用 更改每个节点的 CIDR kubectl edit node node_name
,但 vim 只保存一个临时 YAML 文件。
我也尝试过申请,但似乎没有用。
我也尝试使用 kubectl patch 命令,但这似乎也不起作用,返回:
节点“node_name”无效:spec.podCIDRs:禁止:节点更新可能不会将 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 的范围
任何建议都会有所帮助,谢谢。
解决方案
是的,出于安全目的,该字段是只读的。您必须从头开始重新初始化节点。一般来说,即时更改节点 IP 非常冒险,我只会创建一个新的。
推荐阅读
- flutter - *为什么* SizedBox 的宽度和高度没有任何影响?
- java - 如何模拟本地 OAuth2RestTemplate restTemplate?
- python - 在 python 子进程中捕获 logger.info 输出?
- mapstruct - 使用 MapStruct 将 JSON 转换为 Java Pojo
- c++ - CGAL 的共享库 (lib[name].so) 可以在没有安装 CGAL 的计算机上使用吗?
- windows - 在 cygwin-gcc 编译程序中未调用 DllMain
- r - 如何仅在一个样本上运行 set.seed() 生成器?
- python - 在 Pandas 中创建具有特定日期的数据框
- node.js - node.js 上的 Sqlite3 产生 SQLITE_ERROR
- javascript - Jquery:使用具有变量名的类附加到 div