K8S中Pod节点状态ContainerCreating原因排查

创建好一个pod之后,STATUS的状态一直是ContainerCreating,然后查看这个pod的详细信息。报错:

网上查看了解决方法:

可以看到是网络问题。

原因是node之前反复添加过,添加之前需要清除下网络

node上执行:

# kubeadm reset
# systemctl stop kubelet
# systemctl stop docker
# rm -rf /var/lib/cni/ /var/lib/kubelet/* /etc/cni/
# ifconfig cni0 down
# ifconfig flannel.1 down
# ifconfig docker0 down
# ip link delete cni0
# ip link delete flannel.1
# systemctl start docker
# # kubeadm join xxx

重新加入后问题即可解决。

感谢:https://www.cnblogs.com/aresxin/p/K8S-issue1.html

原文地址:https://www.cnblogs.com/aidenzdly/p/11505121.html

时间: 2024-10-07 15:52:15

K8S中Pod节点状态ContainerCreating原因排查的相关文章

k8s中node节点资源不足

节点资源耗尽状态 1.查看节点组件的状态 2.查看节点上pod的状态 查看日志内容发现如下内容: 1.Node emay-CMPP01 status is now: NodeHasDiskPressure 2.Warning: "EvictionThresholdMet Attempting to reclaim nodefs" 从以上内容大致可以判断出node3处于磁盘空间不足的状态下,并且该node上的kubelet daemon判断达到了Eviction阀值,试图回收磁盘空间(通

解决k8s出现pod服务一直处于ContainerCreating状态的问题的过程

参考于: https://blog.csdn.net/learner198461/article/details/78036854 https://liyang.pro/solve-k8s-pod-containercreating/ https://blog.csdn.net/golduty2/article/details/80625485 根据实际情况稍微做了修改和说明. 在创建Dashborad时,查看状态总是ContainerCreating [[email protected] k8

k8s 中Pod,Deployment,ReplicaSet,Service关联、关系分析

# 分析 pod首先,我们先从最小的调度单位pod开始.我的k8s集群中目前有一个pod,它的name为admin-mysql-1d29997-5db458497c-h6rrs [[email protected] ~]# kubectl get pod admin-mysql-1d29997-5db458497c-h6rrs NAME READY STATUS RESTARTS AGE admin-mysql-1d29997-5db458497c-h6rrs 1/1 Running 0 5d2

清除线上k8s中node节点无用的镜像

为了以防万一(线上环境一定要谨慎谨慎再谨慎),清除镜像对已有的pod造成不必要的影响:我们以下的操作在容器最少的node节点上运行!(如果没有的话,可以重新开一台node节点) 1.先使用kubectl get po –namespace 命名空间,查看该命名空间已有的pod 2.重新部署pod,在该node节点上产生多余的images镜像 3.使用docker system df命令,在执行清除镜像之前先查看镜像和容器的数量.注:类似于Linux上的df命令,用于查看Docker的磁盘使用情况

k8s 集群 节点状态显示notready

一般情况下 我们是在maste节点上安装网络插件的,然后在join node 节点,这样导致node节点可能无法加载到这些插件 使用 journalctl -f -u kubelet 显示如下内容 Nov 06 15:37:21 jupiter kubelet[86177]: W1106 15:37:21.482574 86177 cni.go:237] Unable to update cni config: no valid networks found in /etc/cni Nov 06

k8s中pod文件的定义格式

# yaml格式的pod定义文件完整内容: apiVersion: v1 #必选,版本号,例如v1 kind: Pod #必选,Pod metadata: #必选,元数据 name: string #必选,Pod名称 namespace: string #必选,Pod所属的命名空间 labels: #自定义标签 - name: string #自定义标签名字 annotations: #自定义注释列表 - name: string spec: #必选,Pod中容器的详细定义 containers

k8s的Pod状态和生命周期管理

Pod状态和生命周期管理 一.什么是Pod? 二.Pod中如何管理多个容器? 三.使用Pod 四.Pod的持久性和终止 五.Pause容器 六.init容器 七.Pod的生命周期 (1)Pod phase(Pod的相位) (2)Pod的创建过程 (3)Pod的状态 (4)Pod存活性探测 (5)livenessProbe和readinessProbe使用场景 (6)Pod的重启策略 (7)Pod的生命 (8)livenessProbe解析 一.什么是Pod? Pod是kubernetes中你可以

【转】K8S中部署Helm

K8S中的包管理工具 1. 客户端Helm(即Helm)  通过脚本安装:curl https://raw.githubusercontent.com/helm/helm/master/scripts/get > helm.sh,赋权运行: 123456789101112 chmod +x helm.sh./helm.sh # 输出Downloading https://kubernetes-helm.storage.googleapis.com/helm-v2.13.1-linux-amd64

K8s之Pod资源管理及创建Harbor私有镜像仓库(含镜像拉取操作,中途含排错)

pod是k8s管理的最小单元 pod中有多个容器,现实生产环境中只有一个容器 特点: 1.最小部署单元2.一组容器的集合3.一个Pod中的容器共享网络命令空间4.Pod是短暂的 Pod容器分类: 1:infrastructure container 基础容器(透明的过程,用户无感知) 维护整个Pod网络空间 node节点操作 `查看容器的网络` [[email protected] ~]# cat /opt/kubernetes/cfg/kubelet KUBELET_OPTS="--logto