为什么 pod 仍处于暂挂状态?
排查仍处于 “待处理” 状态且无法在可用工作节点上进行调度的 Pod。
虚拟私有云 传统基础设施
运行 oc get pods`` 时,你会看到一些仍处于 “Pending” 状态的 Pod。
如果您刚刚创建了 Red Hat OpenShift 集群,工作节点可能仍在进行配置。
如果该群集是现有群集,则可能是以下问题造成的。
- 那么可能是集群中没有足够的容量来部署 pod。
- pod 可能已超出资源请求或限制。
此任务要求 IBM Cloud IAM 管理员平台访问角色 用于群集,管理器服务访问角色 用于所有命名空间。
如果您刚刚创建了 Red Hat OpenShift 集群,请运行以下命令,并等待工作节点完成初始化。
oc get nodes
如果这是现有集群,请检查集群容量。
-
从 控制面板中选择仪表盘。
-
单击 Red Hat OpenShift Web 控制台。
-
检查集群中是否有足够的容量来部署 pod。
-
如果集群中没有足够的容量,请调整工作程序池的大小以添加更多节点。
- 查看工作程序池的当前大小和类型模板,以决定要调整哪个工作程序池的大小。
ibmcloud oc worker-pool ls ``` 2. 调整工作程序池的大小,以将更多节点添加到池所跨的每个专区。 ```sh {: pre} ibmcloud oc worker-pool resize --worker-pool WORKER_POOL --cluster CLUSTER_NAME_OR_ID --size-per-zone WORKERS_PER_ZONE ``` -
可选:检查 pod 资源请求。
- 确认
resources.requests值不大于工作程序节点的容量。 例如,如果 Pod 请求cpu: 4000m(即 4 个核心),但工作节点的大小仅为 2 个核心,则无法部署该 Pod。
oc get pod <pod_name> -o yaml ``` 2. 如果请求超出了可用容量,请添加一个包含能够处理该请求的工作节点的工作池。 有关更多信息,请参阅 [将工作程序节点添加到经典集群](/docs/openshift?topic=openshift-add-workers-classic) 或 [将工作程序节点添加到 VPC 集群](/docs/openshift?topic=openshift-add-workers-vpc)。 - 确认
-
如果工作节点完全部署后,您的 Pod 仍处于 “待处理”状态,请查阅《 Kubernetes 》文档,以进一步排查 Pod 处于“待处理”状态的问题。