背景:master主节点IP地址发生变化时,需要进行kubernetes集群环境重置

一、基础环境调整
1. 环境部署总览

以前

ip地址类型操作系统服务配置
192.168.122.132MasterCentos7.62核CPU 2G内存 20G硬盘
192.168.122.133node1Centos7.62核CPU 2G内存 20G硬盘
192.168.122.134node2Centos7.62核CPU 2G内存 20G硬盘

现在

ip地址类型操作系统服务配置
192.168.122.135MasterCentos7.62核CPU 2G内存 20G硬盘
192.168.122.133node1Centos7.62核CPU 2G内存 20G硬盘
192.168.122.134node2Centos7.62核CPU 2G内存 20G硬盘
2. 修改hosts文件
vi /etc/hosts
192.168.122.135  master
192.168.122.133  node1
192.168.122.134  node2

在这里插入图片描述

3. 执行重置

.需要在每台节点执行 kubeadm reset

kubeadm reset

在这里插入图片描述

4. 删除$HOME/.kube

在主节点 执行 rm -rf $HOME/.kube

rm -rf $HOME/.kube

在这里插入图片描述

二、集群初始化
2.1. 配置初始化

只需要在master节点上执行即可

kubeadm init \
--kubernetes-version=v1.17.4 \
--pod-network-cidr=10.244.0.0/16 \
--image-repository registry.aliyuncs.com/google_containers \
--service-cidr=10.96.0.0/12 \
--apiserver-advertise-address=192.168.122.135

在这里插入图片描述

注意:–image-repository 需要更改为阿里云加速镜像
–apiserver-advertise-address=192.168.122.132 修改为自己的 master的ip。
初始化大概需要花费1分钟左右
查看日志

journalctl -xeu kubelet

备份等会用:

kubeadm join 192.168.122.135:6443 --token qyntd9.mqxmjvwlzg0nsxo6 \
    --discovery-token-ca-cert-hash sha256:aed10b6c2d2b05e50f7f3b71232e1f4b9595fb547dea53fb3c1c5ff2a8be9f94
2.2. 创建必要文件
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

在这里插入图片描述

2.3. 加入集群

拷贝该到其他两个节点执行 加入 k8s集群环境
只需要在node1和node2二哥工作节点依次执行,master

kubeadm join 192.168.122.135:6443 --token qyntd9.mqxmjvwlzg0nsxo6 \
    --discovery-token-ca-cert-hash sha256:aed10b6c2d2b05e50f7f3b71232e1f4b9595fb547dea53fb3c1c5ff2a8be9f94

node1
在这里插入图片描述

node2
在这里插入图片描述

2.4. 执行获取节点信息

kubectl get nodes
master节点执行以下命令(其他工作节点没有安装此命令)

kubectl get nodes

在这里插入图片描述

如果还是都是为 notready状态
则需要修改 每台节点的/var/lib/kubelet/kubeadm-flags.env文件删除--network-plugin=cni属性

vi /var/lib/kubelet/kubeadm-flags.env

删除前
在这里插入图片描述
删除后
在这里插入图片描述

2.5. 重新启动

则需要修改 每台节点的

systemctl daemon-reload
systemctl restart kubelet

在这里插入图片描述

2.6. 验证状态

查看状态 是否为 ready状态

kubectl get nodes

在这里插入图片描述

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐