K8S:K8S部署常见错误及解决方法

目录

1、node节点kubelet服务起不来

2、安装cni网络插件时 kubectl get node master和node一直noready①有延时,需要等待10分钟左右,超过15分钟则有问题

3、部署报错kubectl get nodes No resources found

4、k8s部署报错error:kubectl get csr No resources found


1、node节点kubelet服务起不来

问题:node节点kublet起不来服务器内存资源不足,node节点kubelet服务启动不了也不保存

解决方法:top命令然后按shift 加M可按内存排序,然后找到对应进程使用lsof | grep 进程查看进程运行的是什么内容,将不需要的进程关闭。或者添加内存

2、安装cni网络插件时 kubectl get node master和node一直noready
①有延时,需要等待10分钟左右,超过15分钟则有问题

②查看kubelet的服务 状态中有此报错failed to find plugin"flannel" in path [/opt/cni/bin]],是由于在/opt/cni/bin下缺少可 执行的flannel。

解决方法:重新上传cni插件包或者重新网络源下载
 

③ kubcectl  get -n kube-system查看pod信息上发现kube-flannel-ds开头的三个都为0/1则是网络安装cni网络插件拉取镜像失败。使用kubectl describe pod kube-flannel-ds-rxh5w(pod名称) -n kube-system可以查看日志。

 解决方法:使用命令手动拉取镜像   docker pull quay.io/coreos/flannel:v0.14.0

                   拉取完毕后修改镜像命   docker tar  源名称   目的名称(改为没有拉取成功的名称)

 

3、部署报错kubectl get nodes No resources found

kubectl  get nodes 
#查看节点信息
报错问题:kubectl get nodes No resources found

排查思路:
所有节点:
1.关闭防火墙: 
systemctl stop firewalld
systemctl disable firewalld 

2.关闭selinux: 
sed -i 's/enforcing/disabled/' /etc/selinux/config 
setenforce 0 

3.关闭swap:  
swapoff -a 临时 
vim /etc/fstab 永久 

4.添加主机名与IP对应关系(记得设置主机名): 
cat /etc/hosts 
master 192.168.30.11
node1 192.168.30.12
node2 192.168.30.13

5.node节点
vim /usr/lib/systemd/system/docker.service
#在[Service]区域下增加一行
......
[Service]
ExecStartPost=/usr/sbin/iptables -P FORWARD ACCEPT
......

systemctl daemon-reload 
systemctl restart docker

4、k8s部署报错error:kubectl get csr No resources found

kubectl get csr
#查看csr节点申请信息
No resources found.
#报错信息
报错原因方法:因为原来的ssl证书在重启后失效了,不删除的话,即重启kubelet也无法与master通讯
解决方法:
node节点:删除所有证书
cd /opt/kubernetes/ssl
ls
kubelet-client-2023-05-11-08-41-36.pem  kubelet-client-current.pem  kubelet.crt  kubelet.key
# 删除所有的证书
rm -rf *
# 关闭开启的kubelet
systemctl stop kubelet
master节点: 删除证书重新创建
kubectl delete clusterrolebinding kubelet-bootstrap
clusterrolebinding.rbac.authorization.k8s.io "kubelet-bootstrap" deleted

kubectl create clusterrolebinding kubelet-bootstrap --clusterrole=system:node-bootstrapper --user=kubelet-bootstrap
clusterrolebinding.rbac.authorization.k8s.io/kubelet-bootstrap created
node节点:重新执行kubelet安装
#node01
bash kubelet.sh 192.168.30.11
#node02
bash kubelet.sh 192.168.30.12
master节点:测试是否成功
kubectl get csr

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

asddASD323432

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值