7.7. 检查 pod 问题
OpenShift Container Platform 利用 Kubernetes 的 pod 概念,它是共同部署在同一主机上的一个或多个容器。pod 是可在 OpenShift Container Platform 4.7 上定义、部署和管理的最小计算单元。
在定义了 pod 后,它将分配到节点上运行,直到容器退出,或直到它被删除为止。根据策略和退出代码,Pod 可在退出或保留后删除,以便访问其日志。
首先要检查 pod 出现问题时 pod 的状态。如果发生 pod 故障,请观察 pod 的错误状态以识别特定镜像、容器或 pod 网络问题。根据错误状态集中诊断数据收集。查看 pod 事件消息以及 pod 和容器日志信息。通过访问命令行中运行的 pod,或根据 Pod 的部署配置启动具有 root 访问权限的调试 pod 来动态诊断问题。
7.7.1. 了解 pod 错误状态
pod 失败返回显式错误状态,可在 oc get pods
输出的 status
字段中观察到。Pod 错误状态会涵盖镜像、容器和容器网络相关的故障。
下表提供了 pod 错误状态及其描述列表。
Pod 错误状态 | 描述 |
---|---|
| 通用镜像检索错误。 |
| 镜像检索失败。 |
| 指定镜像名称无效。 |
| 镜像检查没有成功。 |
|
|
| 当尝试从 registry 检索镜像时,会出现 HTTP 错误。 |
| 指定容器在声明的 pod 中不存在或未由 kubelet 管理。 |
| 容器初始化失败。 |
| pod 的容器都没有成功启动。 |
| 没有 pod 的容器被成功终止。 |
| 容器已终止。kubelet 将不会试图重启它。 |
| 容器或镜像尝试使用 root 权限运行。 |
| Pod 沙盒创建没有成功。 |
| Pod 沙盒配置没有获得。 |
| pod 沙箱没有成功停止。 |
| 网络初始化失败。 |
| 网络终止失败。 |