文档

概述

更新时间:
一键部署

变更是指对线上系统的任何操作(如:发布、增加、修改或移除等),或其他对生产业务可能有影响的任何操作。基于阿里巴巴的历史经验,有一半以上的重大故障皆为变更触发,因此,变更过程的风险防御显得尤为重要,会直接关乎业务的稳定性。

变更系统是指承载任何对线上生产环境变更操作的系统或工具。例如拥有控制台的白屏化系统/工具、压测/演练平台、黑屏脚本、开放出来的可触发变更操作的API、不以变更为主要功能和目标的平台/系统,如具备了对生产环境实施变更的功能,则相应的变更功能部分也视同变更系统对待等。

变更风控首先是一个业务理念,是稳定性领域内指导变更操作的一套标准,同时规范经济体变更系统的能力建设。其次变更风控是一套技术体系,通过技术手段干预变更的整个生命周期,在变更前进行准入检测,变更中约束渐进式的执行过程,并通过宏观的观测手段验证变更的阶段结果,及时发现问题进行回滚止血,同时在变更后,通过影响面的拓扑提供变更数据的应用,辅助故障定位和问题排查。

变更风控主要有三个目的:

  • 收敛因变更触发的重大故障;

  • 规范业务团队的变更操作,沉淀通用变更能力和执行标准;

  • 帮助变更系统建设风控能力,护航业务变更执行。

(应用上云规划-应用上云实施-图5)  备份 8 2.jpg

标准的变更过程一般可分为:计划、执行、结束三个部分,其中:

  1. 计划阶段:该阶段主要包含变更申请,以及申请的准入审批。变更申请需要明确变更计划、窗口期、潜在影响以及回滚方案。

  2. 执行阶段:首先对变更行为进行二次校验,如确定变更环境是否满足要求,业务流量已按预期停止等。变更过程建议先在测试环境验证后,再进入生产环境变更阶段,同时灰度、分批进行。每批次间设定一定间隔时间,并进行观察记录至少一项可反应核心业务健康状态的指标(业务监控项、日志文件名等),同时须具备回滚能力。

  3. 结束阶段:通过监控、日志等数据验证业务是否正常,并记录上报相关数据。

对线上系统的任何操作(如:发布、增加、修改或移除等),或其他对生产业务可能有影响的任何操作时,都需要满足变更风险防控的三原则“可观测、可灰度、可回滚”。