Skip to content

Kubernetes集群节点扩容实战

1.1 部署目标

在Kubernetes集群中添加node节点及master节点

1.2 初始集群架构

参考基于kubeasz的k8s v1.34.x高可用集群部署部署一个单master,单Node的k8s集群

节点类型数量功能IP
master1k8s控制端172.31.7.101
harbor1镜像服务器172.31.7.104
etcd1保存集群数据172.31.7.106
HA1高可用172.31.7.109
deploy1部署用、后期可作为HA172.31.7.110
node1运行容器172.31.7.111

1.3 目标集群架构

添加一个master节点和一个Node节点

节点类型数量功能IP
master2k8s控制端172.31.7.101、102
harbor1镜像服务器172.31.7.104
etcd1保存集群数据172.31.7.106
HA1高可用172.31.7.109
deploy1部署用、后期可作为HA172.31.7.110
node2运行容器172.31.7.111、112

1.4 节点准备

配好IP地址、主机名、把deploy节点公钥传过去 具体步骤可参考基于kubeasz的k8s v1.34.x高可用集群部署

1.5 添加master节点

ubuntu@deploy01:/etc/kubeasz$ ./ezctl add-master k8s-cluster1 172.31.7.102 k8s_nodename="172.31.7.102"

验证节点信息

ubuntu@deploy01:~$ sudo kubectl get node
NAME               STATUS                     ROLES    AGE    VERSION
172.31.7.101       Ready,SchedulingDisabled   master   4d2h   v1.34.2
172.31.7.102       Ready,SchedulingDisabled   master   18s    v1.34.2 
172.31.7.111       Ready                      node     4d1h   v1.34.2

1.6 添加node节点

ubuntu@deploy01:/etc/kubeasz$ ./ezctl add-node k8s-cluster1 172.31.7.112 k8s_nodename="172.31.7.112"
ubuntu@deploy01:~$ sudo kubectl get node
NAME               STATUS                     ROLES    AGE    VERSION
172.31.7.101       Ready,SchedulingDisabled   master   4d2h   v1.34.2
172.31.7.102       Ready,SchedulingDisabled   master   18s    v1.34.2 
172.31.7.111       Ready                      node     4d1h   v1.34.2
172.31.7.112       Ready                      node     2min   v1.34.2