k8s——集群环境问题合集

创建集群

k8s集群创建

集群环境问题合集

重置master节点

kubeadm reset -f
# -f 强制重置 可选

重置node节点

# 当你的master节点重置后,node节点需要重新加入集群
kubeadm reset -f
# -f 强制重置 可选
# 同时需要删除 `rm -rf /var/lib/kubelet` 
# `rm -rf /etc/cni` 两个文件

初始化的时候不指定node的cidr

  • 初始化的时候不指定node的cidr报错
[root@master wangluo]# kubectl describe -n kube-flannel  pod kube-flannel-ds-l64tb 
# 发现事件
Events:
  Type     Reason     Age                From               Message
  ----     ------     ----               ----               -------
  Normal   Scheduled  90s                default-scheduler  Successfully assigned kube-flannel/kube-flannel-ds-l64tb to node
  ******省略******
  Normal   Started    43s (x4 over 87s)  kubelet            Started container kube-flannel
  Warning  BackOff    5s (x7 over 84s)   kubelet            Back-off restarting failed container kube-flannel in pod kube-flannel-ds-l64tb_kube-flannel(6c977410-3384-4379-acda-363a569f194e)
# 报错,查看日志
[root@master wangluo]# kubectl logs -n kube-flannel   kube-flannel-ds-l64tb 
****省略******
de" pod cidr not assigned
I0601 03:27:19.632977       1 main.go:432] Stopping shutdownHandler...
[root@master wangluo]# kubectl logs -n kube-flannel   kube-flannel-ds-l64tb |grep -i error
Defaulted container "kube-flannel" out of: kube-flannel, install-cni-plugin (init), install-cni (init)
E0601 03:27:19.632749       1 main.go:343] Error registering network: failed to acquire lease: node "node" pod cidr not assigned
#解决方案 重新初始化

# 如果重新初始化之后,node节点notready
#  重启docker 和containerd
[root@master wangluo]# kubectl get no
NAME     STATUS     ROLES           AGE   VERSION
master   Ready      control-plane   19m   v1.28.10
node     NotReady   <none>          18m   v1.28.10
# 在node节点上重启两个服务
[root@node ~]# systemctl restart docker 
[root@node ~]# systemctl restart containerd

集群网络问题

# 从网上拉取的flannel.yaml中net-config.json的cidr是10.244.0.0/16,但是集群中cidr是10.88.0.0/24,所以会报错
[root@master wangluo]# kubectl get po -n kube-flannel 
NAME                    READY   STATUS             RESTARTS      AGE
kube-flannel-ds-frnjq   0/1     CrashLoopBackOff   3 (48s ago)   94s
kube-flannel-ds-lh7nt   0/1     CrashLoopBackOff   3 (44s ago)   94s
# CrashLoopBackOff  这个状态表示
# 表示Pod中的容器因为某种原因而退出(crash)
# 并且kubelet正在尝试重新启动该容器。
# 但是,由于某种原因(如配置错误、应用程序错误、资源限制等)
# 容器在启动后立即再次崩溃。
# kubelet会按照其重启策略(默认为Always)
# 继续尝试重新启动容器,
# 但每次尝试都以失败告终,
# 形成了一个循环。


# /etc/cni/net.d/10-flannel.conflist
# 是flannel的配置文件

解决思路

如果pod的状态是CrashLoopBackOff,则需要检查pod中的容器是否因为某种原因而崩溃。

  1. 看日志
  2. 看事件

posted on 2024-06-01 13:33  代码你敲我不敲  阅读(8)  评论(0编辑  收藏  举报

导航

返回顶端