![在 Kubernetes 中更改 serviceSubnet](https://linux22.com/image/733333/%E5%9C%A8%20Kubernetes%20%E4%B8%AD%E6%9B%B4%E6%94%B9%20serviceSubnet.png)
我有一个正在运行的 k8s 集群,其 serviceSubnet 范围为默认。更改它的流程是什么?
到目前为止我尝试过:
kubeadm config upload from-flags --service-cidr 172.26.0.0/16
我可以在 kubeadm 配置视图中看到更改,但服务仍在使用旧范围,即使重新启动节点。
有任何想法吗?
答案1
更改默认 IP 范围:
kubectl -n kube-system edit cm kubeadm-config
还有这个文件:
/etc/kubernetes/manifests/kube-apiserver.yaml
在所有主节点上执行此操作并重新启动后,我可以看到服务正在使用 172.26.0.0/16 范围。
它可能会给出 172.26.0.1 的错误,因为 PKI 无法识别该 IP。
在 k8s 1.12 中,可以使用以下方法修复:
kubeadm alpha phase certs all --apiserver-advertise-address 0.0.0.0
--apiserver-cert-extra-sans=<leaderip>,<newserviceip>