摘要
很多生产发布失败并不是因为代码一定有问题,而是发布后只检查了“进程是否启动”,没有检查“服务是否真正可用”。例如实例显示 Running,但没有 Ready;健康检查通过,但注册中心实例异常;接口能访问,但错误率和延迟已经明显升高。
本文整理一套通用的服务健康检查与发布验收清单,覆盖发布前、发布中、发布后的检查项,适用于 Kubernetes、虚拟机、注册中心、网关、数据库、中间件等常见生产环境。文中不包含任何内部域名、IP、账号、密钥或业务敏感信息,可直接作为团队发布验收规范、SRE 手册或 CSDN 技术文章使用。
一、为什么发布验收不能只看进程状态
很多发布检查只停留在:
服务启动了没有? Pod 是不是 Running? 进程有没有挂?这些检查只能证明“程序大概率还活着”,不能证明“用户请求能正常完成”。
更完整的发布验收应该回答:
1. 实例是否启动成功? 2. 实例是否进入就绪状态? 3. 流量是否真的打到新版本? 4. 注册中心、网关、负载均衡是否同步正常? 5. 核心接口是否成功? 6. 错误率、延迟、资源是否稳定? 7. 出现异常时是否可以快速回滚?发布验收的目标不是走流程,而是在影响扩大前发现问题。