作业13 · 值班 Runbook(一页)— 上游 429 / 5xx / 超时
适用:LiteLLM / 模拟上游 / vLLM 等 OpenAI 兼容链路。打印贴值班群即可。
0. 先判级(30 秒)
| 级别 | 现象 | 动作 |
|---|---|---|
| P1 | 大面积失败 / 业务不可用 | 立刻切 backup 或降级公告 + 拉相关人 |
| P2 | 部分 429/超时,成功率下降 | 限流/降并发 + 查 upstream |
| P3 | 偶发错误 | 记录 Trace,观察 15 分钟 |
快速探测:
# 换成本环境地址
curl -sS -o /tmp/r.json -w "%{http_code} %{time_total}\n" \
http://127.0.0.1:4010/v1/chat/completions \
-H "Authorization: Bearer sk-hw13-test-4010" \
-H "Content-Type: application/json" \
-d '{"model":"primary","messages":[{"role":"user","content":"ping"}],"max_tokens":8}'1. 上游返回 429(限流 / 过载)
含义:上游或网关认为当前并发/QPS 超限。
处理顺序:
- 确认是哪一层 429:客户端→LiteLLM,还是 LiteLLM→上游(看响应 body / LiteLLM 日志)。
- 立即:业务侧降低并发;暂停非核心压测/批跑。
- 短时:把流量切到虚拟模型
backup(或 fallback 已配置则确认是否已切)。 - 根因:查上游排队、GPU 利用率、是否被刷;对照作业13「安全并发建议」下调常态并发。
- 恢复标准:连续 5 分钟无 429,且成功率 ≥ 99%,再逐步恢复流量。
不要:在 429 高峰无脑加倍重试(会雪崩)。
2. 上游返回 5xx(500/502/503)
含义:上游进程异常、反代错误、短暂不可用。
处理顺序:
- 看错误是否集中在某一
model/ 某一 upstream。 - 立即:切换
backup;对 primary 停止新流量。 - 查上游进程/容器是否存活;重启策略按变更窗口执行(先通告)。
- 查最近发布/配置变更;必要时回滚 LiteLLM config。
- 恢复标准:primary 单探活连续成功 3 次,再灰度切回。
3. 超时(客户端 timeout / gateway timeout)
含义:排队过久、模型生成过慢、网络不通、超时阈值过短。
处理顺序:
- 区分:连接超时 vs 读超时(是否已建连)。
- 查上游 in-flight / waiting 队列;GPU 是否打满。
- 立即:降并发、降
max_tokens、非关键请求改异步/排队。 - 核对超时配置:客户端 < LiteLLM < 上游,避免「下层还在跑、上层已放弃」。
- 恢复标准:p95 延迟回到基线附近,再升并发。
4. 值班话术(可复制)
【推理告警】时间:____ 模型:primary/backup
现象:429 / 5xx / 超时(选一) 比例:____
已做:降并发 / 切 backup / 查进程(选填)
需要:____(扩容 / 重启审批 / 业务方限流)5. 升级与记录
- 15 分钟未缓解 → 升级平台负责人
- 事后:补一条「现象→原因→处理→并发建议变更」到当日值班笔记