k8s多master节点集群搭建
创始人
2025-05-28 13:53:56

k8s多master节点集群搭建

  • 单master节点集群搭建
  • 添加多个master节点
  • 可能遇到的错误

单master节点集群搭建

首先搭建一个单master节点的集群,具体可以参考博文k8s单master节点集群搭建:使用kubeadm和kubernetes群集部署与测试、以及K8s集群部署中的变化和注意事项。

添加多个master节点

参照集群中的第一个master节点,对后续要加入集群的master节点做好kubeadm init命令之前的所有环境配置工作(操作系统参数、网络配置、镜像仓库、yum源等)。无需单独在这些后续加入的master节点上安装k8s网络插件。

在还未加入集群的master节点上创建目录:

mkdir -p /etc/kubernetes/pki/etcd

将第一个master节点上的下列文件拷贝到还未加入集群的master节点上:

scp /etc/kubernetes/admin.conf root@{k8s_master02_IP}:/etc/kubernetes/
scp /etc/kubernetes/pki/ca.* root@{k8s_master02_IP}:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/sa.* root@{k8s_master02_IP}:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/front-proxy-ca.* root@{k8s_master02_IP}:/etc/kubernetes/pki/
scp /etc/kubernetes/pki/etcd/ca.* root@{k8s_master02_IP}:/etc/kubernetes/pki/etcd/

注意不能多拷贝其他文件,否则在加入集群时可能会收到下面的报错:

error execution phase control-plane-prepare/certs: 
error creating PKI assets: failed to write or validate certificate "etcd-peer": 
certificate etcd/peer is invalid: x509: certificate is valid for k8s-master01, localhost, not k8s-master02

在第一个master节点上打印出加入集群的命令:

kubeadm token create --print-join-command

在还未加入集群的master节点上执行上面打印出来的命令来加入集群,注意加上--control-plane来表明是以管理节点的身份加入。

kubeadm join {k8s_master01_IP}:6443 --token xxxxxx --discovery-token-ca-cert-hash sha256:xxxxxx --control-plane

最后检查加入集群的master节点状态是否READY。

kubectl get nodes

可能遇到的错误

如果收到下面的报错信息:

error execution phase preflight: [preflight] Some fatal errors occurred:[ERROR FileContent--proc-sys-net-ipv4-ip_forward]: /proc/sys/net/ipv4/ip_forward contents are not set to 1
[preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`

修改对应的操作系统参数,再重新加入master节点即可。

echo 1 > /proc/sys/net/ipv4/ip_forward

如果收到下面的报错信息:

unable to add a new control plane instance a cluster that doesn't have a stable controlPlaneEndpoint address

需要执行下面的命令来修改kubeadm配置文件:

kubectl edit cm kubeadm-config -n kube-system

kubernetesVersion同一级添加controlPlaneEndpoint配置,再重新加入master节点即可。

...kubernetesVersion: v1.23.0controlPlaneEndpoint: {k8s_master01_IP_OR_LoadBalance_IP}:6443
...

References
[1] https://blog.csdn.net/Sebastien23/article/details/112976697
[2] https://blog.csdn.net/Sebastien23/article/details/113757356
[3] https://blog.csdn.net/Sebastien23/article/details/125958860
[4] https://blog.csdn.net/wangy_0228/article/details/128157888
[5] https://blog.csdn.net/hedao0515/article/details/126342939?spm=1001.2014.3001.5506

相关内容

热门资讯

你常去的苏式面馆里,可能藏着“... 转自:扬子晚报当百年苏面遇上当代艺术,当地铁出行变成一趟文艺之旅,会碰撞出怎样的火花?12月27日下...
北京推出三项“AI+教育”应用...   炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会! (来源:财联社) 财...
太空小鼠实验构想到现实历时10... #4只太空小鼠有名字了#【#太空小鼠实验构想到现实历时10年#】12月27日,在“航天小鼠飞天记”主...
日本政府:在全球竞争中的“落后... (来源:上观新闻)日本政府今日首次制定国家人工智能基本计划,承认在AI全球竞争中显著落后,宣布将通过...
瑞茂通“大动脉”式裁员 超20... 财联社12月27日讯(记者 张晨静 王平安)曾经的河南大宗商品供应链巨头瑞茂通(600180.SH)...