跳转至
DRAFT

Runbook ·

AI 生成 · 待 owner review

本文档由 DocAgent 自动生成,status: draft。owner / SRE review 通过后请把 status 改为 published,并删除 frontmatter 中的 generated_by 字段。

适用范围

  • 场景:{故障处置 / 例行部署 / 灰度发布 / 回滚 / 数据迁移}
  • 触发条件:{监控告警名 / 时间窗口 / 人工触发}
  • 预计耗时:{N} 分钟
  • 影响面:{用户感知 / 服务降级 / 0 影响}

1. 前置检查(Pre-Check)

执行 Runbook 之前必须确认以下条件,任意一项失败 → 停止操作并升级:

  • 当前操作者有对应权限({角色})
  • 已通知值班 / 同步到值班群
  • 备份已完成(若涉及数据变更)
  • 回滚方案已确认(见 §6)
  • 监控大盘已打开:{Grafana / Prometheus 链接}

2. 操作步骤(Step-by-Step)

Step 1 ·

# 命令示例
{cmd}

预期输出:

{expected output}

异常处置:若输出包含 {ERROR_PATTERN} → 跳到 §5 故障处置 · Case 1


Step 2 ·

(同上结构)


Step 3 ·

(同上结构)

3. 验证(Verification)

操作完成后,必须逐项验证:

验证项 检查方式 预期结果
服务存活 curl -f http://{host}/health HTTP 200 + {"status":"ok"}
关键 API curl http://{host}/api/{key-endpoint} 返回业务数据
监控指标 Grafana 看 {metric_name} 无异常告警 / QPS 正常
日志 tail -f {log_path} 30 秒 无 ERROR 级日志

4. 操作流程图

flowchart TD
    A[告警触发 / 计划任务]:::xyL2 --> B[§1 前置检查]:::xyL3
    B -->|通过| C[§2 Step 1]:::xyL3
    B -->|失败| Z[升级值班长]:::xyL5
    C --> D[§2 Step 2]:::xyL3
    D --> E[§2 Step 3]:::xyL3
    E --> F[§3 验证]:::xyL3
    F -->|通过| G[关闭工单]:::xyL0
    F -->|失败| H[§5 故障处置]:::xyL5
    H --> F

    classDef xyL0 fill:#2E8D7E,stroke:#2E8D7E,color:#fff
    classDef xyL2 fill:#E8C9A0,stroke:#E8C9A0,color:#000
    classDef xyL3 fill:#D4A574,stroke:#D4A574,color:#fff
    classDef xyL5 fill:#9D4EDD,stroke:#9D4EDD,color:#fff

5. 故障处置(Troubleshooting)

Case 1 ·

现象:{具体的日志 / 报错 / 监控异常}

根因:{1-2 句根因分析}

处置:

{recovery cmd}

预防:{若可避免,说明如何预防}


Case 2 ·

(同上结构)


Case 3 ·

(同上结构)

6. 回滚方案(Rollback)

回滚触发条件

满足任意一条立即回滚: - §3 验证连续 3 次失败 - 业务监控告警等级 ≥ P1 - 用户投诉 ≥ {N} 起 / 5 分钟

回滚步骤:

# Step R1: 停止新版本
{cmd}

# Step R2: 切回旧版本
{cmd}

# Step R3: 验证旧版本健康
curl -f http://{host}/health

回滚后必须: - [ ] 写 Postmortem(D6 测试运维 · 7 天内) - [ ] 通知值班长 + 受影响业务方 - [ ] 在 Runbook §10 Changelog 加一条"回滚记录"

7. 升级路径(Escalation)

等级 触发条件 联系人 响应 SLA
L1 Runbook 跑通 当前操作者 自处置
L2 §5 故障处置无效 值班 SRE 15 分钟
L3 §6 回滚后仍异常 Tech Lead + 业务负责人 30 分钟
L4 影响 > 1000 用户 CTO + CEO 60 分钟

8. 相关资源

9. 演练记录(Drill Log)

日期 演练人 实际耗时 发现问题 改进项
YYYY-MM-DD {name} {N} min {问题} {改进}

演练频率:每季度至少 1 次。未演练 > 6 个月的 Runbook 自动标 🟡 待演练

10. Changelog

版本 日期 改动
0.1.0 YYYY-MM-DD 首版(DocAgent 生成)

模板使用说明(DocAgent 内部参考,生成正式文档时删除本节): 1. Runbook 必须可机械执行,所有命令带具体参数,禁止"根据情况调整"这类模糊语 2. §5 故障处置 Case 至少 2 个(无 Case 说明覆盖不全) 3. §6 回滚方案必填,即使是"无需回滚"也要显式说明并给出原因 4. §9 演练记录由 SRE 在每次演练后更新,DocAgent 不填具体记录,只保留表头