成为赞助商——支持中文 Agent 生态

了解赞助
库Agent场景库
← 返回用例列表

Kubernetes Pending Pod 调度分诊

根据 Pending 原因与 describe 摘要,分诊资源不足、亲和/污点与 PVC,生成排查顺序与对外说明;不代改集群调度。

飞书DeepSeekClaudeChatGPT🛠️ 开发者工具🏢 企业协作

场景说明

面向独立开发者与平台工程:把 Pod 一直 Pending 收成可读分诊简报,区别于灰度回滚、OOM 日志与配置漂移。

案例叙事

01他们做了什么

Pod 一直 `Pending` 时,业务只看到「服务没起来」。值班需要把调度失败翻译成:CPU/内存不够、污点/亲和不匹配,还是 PVC 绑不上。本地化做法是让 Agent 吃 describe 摘要,吐分诊简报。

Kubernetes 文档《Debug Pods》说明:若 Pod 卡在 Pending,表示无法被调度到节点,通常是因为某类资源不足以完成调度;应查看 `kubectl describe` 输出中的信息以定位原因。本场景在此基础上输出通用检查顺序(资源请求、节点选择/亲和、污点容忍、PVC/存储类、资源配额)与沟通稿。禁止在未提供集群状态时声称「已调度成功」。

02实际效果

  • 源未披露量化「平均多快从 Pending 恢复」;公开文只描述 Pending 表示无法调度及应查看 describe 输出。
  • 排障有固定顺序,减少盲目扩容。
  • 给业务方的白话说明可复用。

03值得知道

  • 托管 Kubernetes(ACK/EKS 等)的节点组扩容入口不同,缓解步骤需本地化。
  • Pending 也可能来自准入控制器/配额,不只是 CPU 内存。
  • 上面写的是 Kubernetes 官方调试说明,不是你的集群现场结论。

04可复制提示词

Pending Pod 分诊简报

你是 Kubernetes Pending 分诊助手。只根据用户提供的 describe/事件摘要分析,不要编造集群容量。

describe/事件摘要:{{describe}}
资源 requests/limits:{{resources}}
节点池/污点/亲和(已知):{{scheduling}}

输出 Markdown:
1. 根因候选(资源不足 / 亲和污点 / PVC / 配额 / 信息不足)
2. 检查顺序(每步看什么字段)
3. 临时缓解建议(扩容、放宽调度、修 PVC——均标「人工执行」)
4. 给业务的非技术说明
禁止声称已调度成功;禁止要求粘贴完整 kubeconfig 或云密钥。

恢复后复盘提纲

Pending 已解决,写短复盘。

最终原因:{{root_cause}}
处置:{{fix}}

输出:
1. 时间线
2. 监测改进(Pending 时长告警)
3. 容量/配额改进行
4. 下次预防检查项
不要伪造 SLO 达标声明。

05一手来源

Kubernetes Documentation · Debug Pods ↗

文档更新

怎么做

  1. 粘贴 `kubectl describe pod` / 事件摘要(可脱敏)、资源请求与节点池概况
  2. Agent 输出:Pending 根因候选、检查顺序、临时缓解与给业务的说明
  3. 人工用 kubectl/控制台调整;Agent 不持有 kubeconfig、不自动扩容

实用提示

  • 先读 Events 里的 FailedScheduling 原因,再猜镜像或业务逻辑
  • 与 canary-release-rollback-checklist / ecs-oom-killer-log-triage-agent 不同:本条是调度不上去,不是发布回滚或节点 OOM
#Kubernetes#Pending#调度#排障#kubectl