Ubuntu使用sealos安装k8s并解决Sealos join节点后节点状态为NotReady问题
1.安装sealos# 下载并安装sealos, sealos是个golang的二进制工具,直接下载拷贝到bin目录即可, release页面也可下载wget -c https://sealyun-home.oss-cn-beijing.aliyuncs.com/sealos/latest/sealos && \chmod +x sealos && mv sealo
·
1.安装sealos
# 下载并安装sealos, sealos是个golang的二进制工具,直接下载拷贝到bin目录即可, release页面也可下载
wget -c https://sealyun-home.oss-cn-beijing.aliyuncs.com/sealos/latest/sealos && \
chmod +x sealos && mv sealos /usr/bin
# 下载离线资源包
wget -c https://sealyun.oss-cn-beijing.aliyuncs.com/05a3db657821277f5f3b92d834bbaf98-v1.22.0/kube1.22.0.tar.gz
2.使用ntpdate同步各个服务器时间
ntpdate time.windows.com
3.在各个服务器host中添加
IP1 worker-1.mservice worker-1
IP2 master-1.mservice master-1
4.运行命令
# 安装一个三master的kubernetes集群
sealos init --passwd 'your_passwordt' \
--master IP2 \
--node IP1 \
--pkg-url /root/kube1.22.0.tar.gz \
--version v1.22.0
使用Sealos join节点后,发现一直报节点Not Ready,于是journalctl -f -u kubelet.service
查看具体的报错信息,报错信息如下:
E0323 08:55:24.182953 150344 kubelet.go:2332] "Container runtime network not ready" networkReady="NetworkReady=false reason:NetworkPluginNotReady message:Network plugin returns error: cni plugin not initialized"
经过各种网络上尝试都未果,get nodes状态一直显示NotReady
最终的解决方案如下:
重启一下那个节点的containerd或者docker,这里我的是containerd,所以重启containerd即可
systemctl restart containerd
重启之后再重启kubelet,再次查看节点状态,发现变为Ready状态
更多推荐
已为社区贡献1条内容
所有评论(0)