部署检查清单
每次发布复制一份,填好并存档到 docs/05-release/<env>-<date>.md。
生产发布必须有人签字。
基本信息
| 项目 |
值 |
| 版本 / Tag |
<...> |
| Commit |
<...> |
| 环境 |
dev / staging / prod |
| 发布日期 |
<...> |
| 发布负责人 |
<...> |
| 回滚版本 |
<...> |
| 变更单 / PR |
<...> |
1. 发布前检查
1.1 质量门禁
1.2 构建产物
1.3 配置与密钥
1.4 数据库
1.5 运维
1.6 生产测试
1.7 人工审批
2. 发布执行
2.1 顺序
1. 备份/快照
2. 数据库迁移
3. 后端部署
4. 健康检查
5. 前端部署
6. CDN 失效
7. 冒烟测试
8. 线上 E2E
2.2 执行记录
| 步骤 |
命令/操作 |
开始 |
结束 |
结果 |
备注 |
| 备份 |
<...> |
|
|
|
|
| 迁移 |
<...> |
|
|
|
|
| 后端 |
<...> |
|
|
|
|
| 前端 |
<...> |
|
|
|
|
| 冒烟 |
<...> |
|
|
|
|
2.3 冒烟测试
3. 发布后观察(至少 30 分钟)
3.1 指标记录
| 指标 |
发布前 |
发布后 |
结论 |
| 错误率 |
|
|
|
| P95 延迟 |
|
|
|
| QPS |
|
|
|
| CPU |
|
|
|
| 内存 |
|
|
|
4. 回滚
4.1 回滚条件
- 错误率显著上升
- P0/P1 功能不可用
- 数据写入错误
- 性能严重下降
- 安全事件
4.2 回滚命令
# 后端(ECS 示例)
aws ecs update-service \
--cluster <cluster> \
--service <service> \
--task-definition <previous-task-def> \
--region <region>
aws ecs wait services-stable \
--cluster <cluster> \
--services <service> \
--region <region>
# 前端(S3 示例)
aws s3 sync <previous-dist>/ s3://<bucket>/ --delete
aws cloudfront create-invalidation \
--distribution-id <id> \
--paths "/*"
4.3 回滚后
5. 发布记录
5.1 签字
发布负责人:________________
审批人:____________________
日期:______________________
结论:成功 / 部分成功 / 已回滚