2. Change Risk 参数概念
Change Risk 参数是变更风险评估任务编排中的核心元数据,它定义了变更操作在“风险维度”上的量化特征与评估规则。理解 Change Risk 参数的概念、作用及其与变更任务的关系,是正确配置风险评估策略的前提。
2.1 什么是 Change Risk 参数
Change Risk 参数是一组预定义的、可配置的键值对或结构化字段,用于描述一次变更操作在多个风险维度上的属性值。这些参数通常由 SRE 团队在变更管理平台中定义,并在变更任务创建时被赋值或自动推导。
| 参数类别 | 典型参数示例 | 说明 |
|---|---|---|
| 变更范围 | scope、affected_nodes、region |
描述变更影响的服务、节点或地域范围 |
| 变更类型 | change_type、operation |
标识是配置变更、代码发布、扩缩容还是重启操作 |
| 变更窗口 | window_start、window_end、is_emergency |
定义变更执行的时间窗口及是否紧急 |
| 依赖关系 | dependencies、blocked_by |
记录变更的前置依赖或阻塞条件 |
| 回滚策略 | rollback_plan、rollback_timeout |
描述回滚方案及预期耗时 |
| 历史指标 | previous_failure_rate、last_success_time |
引用该类型变更的历史成功率数据 |
关键理解: Change Risk 参数不是静态的标签,而是可被风险评估引擎读取、计算、比较的“风险信号源”。每个参数都对应一个风险贡献因子。
2.2 参数在风险评估中的作用
Change Risk 参数在风险评估流程中扮演三个核心角色:输入源、权重载体、决策依据。
- 输入源: 风险评估引擎读取所有 Change Risk 参数,作为风险计算的原始数据。例如,
affected_nodes=50表示变更影响面较大,风险系数升高。 - 权重载体: 每个参数被赋予不同的权重值,反映该维度对整体风险的贡献程度。例如,
is_emergency=true的权重通常高于region参数。 - 决策依据: 风险评分结果直接用于判断变更是否可执行、是否需要人工审批、是否需要自动暂停或回滚。
实践建议: 在配置参数权重时,优先为“变更范围”和“变更类型”分配较高权重,因为它们对故障半径的影响最直接。
2.3 参数与变更任务的关系
Change Risk 参数与变更任务之间是“定义-绑定-评估”的三层关系。变更任务是参数的载体,参数是任务的风险画像。
| 关系层次 | 说明 | 示例 |
|---|---|---|
| 定义层 | 变更任务创建时,系统根据任务类型自动填充或要求用户填写 Change Risk 参数 | 创建“数据库主从切换”任务时,自动设置 change_type=db_switch、scope=core_db |
| 绑定层 | 参数与任务的生命周期绑定,任务状态变更时参数可被更新(如回滚后标记失败) | 任务执行失败后,last_failure_time 参数自动更新 |
| 评估层 | 风险评估引擎在任务执行前、执行中、执行后分别读取参数,进行动态风险评分 | 执行前检查 dependencies 是否满足;执行中监控 affected_nodes 健康状态 |
常见误区: 不要将 Change Risk 参数视为一次性配置。变更任务在执行过程中,部分参数(如
current_error_rate、progress_percentage)应当支持动态更新,以实现实时风险评估。
2.4 参数配置的核心原则
- 可观测性: 每个参数的值应当能被监控系统采集和展示,避免“黑盒参数”。
- 可继承性: 子任务或关联任务应能继承父任务的 Change Risk 参数,减少重复配置。
- 可覆盖性: 允许在特定场景下手动覆盖自动推导的参数值(如紧急变更时强制提升风险等级)。
- 可审计性: 所有参数的变更历史应被记录,用于事后复盘和合规审计。