一、Pod 常见状态
Unschedulable | pod 不能被调度,kube-scheduler 没有匹配到合适的 node 节点 |
PodScheduled | pod 正处于调度中,在 kube-scheduler 刚开始调度的时候,还没有将 pod 分配到指定的 node, 在筛选出合适的节点后就会更新 etcd 数据,将 pod 分配到指定的 node |
Pending | 正在创建 pod,但 pod 中的容器还没有全部被创建完成。处于此状态的 pod 应该检查依赖的存储是否有权限挂载、镜像是否正常等 |
Failed | pod 中有容器启动失败而导致 pod 工作异常 |
Unknown | 由于某种原因无法获得 pod 的当前状态, 通常是由于与 pod 所在的 node 节点通信错误 |
Initialized | 所有 pod 中的初始化容器已经完成了 |
Running | pod 内部的容器已经被创建并且启动 |
Ready | 表示 pod 中的容器已经可以提供访问服务 |
Error | pod 启动过程中发生错误 |
NodeLost | pod 所在节点失联 |
Waiting | pod 等待启动 |
Terminating | pod 正在被销毁 |
CrashLoopBackOff | pod 之前是启动了,后面又异常退出了,只要 pod 的 restartPolicy 不是 Never 就可能被重启拉起,此时 pod 的 RestartCounts 通常是大于 0 的 |
ImagePullBackOff | pod 所在的 node 节点下载镜像失败 |
InvalidImageName | node 节点无法解析镜像名称导致的镜像无法下载 |
ImageInspectError | 无法校验镜像,镜像不完整导致 |
ErrImageNeverPull | 策略禁止拉取镜像,可能镜像中心权限是私有等 |
RegistryUnavailable | 镜像服务器不可用,网络原因或 harbor 宕机 |
ErrImagePull | 镜像拉取出错,超时或下载被强制终止 |
CreateContainerConfigError | 不能创建 kubelet 使用的容器配置 |
CreateContainerError | 创建容器失败 |
RunContainerError | pod 运行失败,容器中没有初始化 PID 为1的守护进程等 |
ContainersNotInitialized | pod 没有初始化完毕 |
ContainersNotReady | pod 没有准备完毕 |
ContainerCreating | pod 正在创建中 |
PodInitializing | pod 正在初始化中 |
DockerDaemonNotReady | node 节点 docker 服务没有启动 |
NetworkPluginNotReady | 网络插件没有启动 |