4. 演练目标设定:演练目的、KPI 定义与成功标准

演练目标是整个故障域隔离演练的“北极星”。目标设定不清晰,后续的指标面板设计、风险控制措施都将失去方向。本节从演练目的、KPI 定义、成功标准三个层次,构建可量化、可验证的目标体系。

4.1 演练目的:验证隔离性与发现盲区

多租户故障域隔离演练的核心目的可归纳为两个维度:

维度 具体说明 典型验证场景
验证隔离性 确认单个租户或单个故障域(如集群、节点、可用区)发生故障时,故障不会扩散到其他租户或域。 租户A的Pod因OOM被驱逐,租户B的Pod不受影响;某可用区网络分区,其他可用区流量正常。
发现盲区 暴露现有架构、配置或监控中未被发现的共享依赖、软隔离缺陷或单点故障。 共享API网关限流配置未按租户隔离;节点级内核参数调整影响同节点所有租户;监控指标未覆盖租户级错误率。
关键认知: 演练不是为了“证明系统完美”,而是为了“找到系统在真实故障下的边界”。发现盲区本身就是演练的重要产出。
演练目的双轮驱动模型 验证隔离性 故障域边界有效性 租户资源隔离 网络/存储隔离 控制面与数据面隔离 发现盲区 共享依赖未识别 软隔离配置缺陷 监控指标缺失 故障恢复盲区 两者共同驱动演练目标设定,缺一不可

4.2 KPI 定义:可量化的隔离性指标

KPI 必须与演练目的直接挂钩,且具备可采集、可对比、可复现的特性。以下为推荐的 KPI 体系:

KPI 类别 指标名称 采集方式 目标值(示例)
故障影响范围 受影响租户数 / 总租户数 演练期间各租户错误率 > 5% 的租户计数 ≤ 1(仅目标租户)
故障恢复时间 目标租户 MTTR(Mean Time to Recover) 从故障注入到租户错误率恢复至基线的时间 ≤ 5 min
非目标租户影响 非目标租户错误率增量 演练前后非目标租户 P99 错误率差值 ≤ 0.1%
资源隔离有效性 非目标租户资源争抢率 CPU/内存/网络带宽使用率变化幅度 ≤ 5%
监控覆盖度 租户级指标可观测率 演练期间可获取的租户级指标维度数 / 预期维度数 ≥ 95%
实践建议: KPI 目标值应在演练前基于历史基线数据设定,避免设定不切实际的“零影响”目标。对于首次演练,可适当放宽非目标租户的影响阈值(如 ≤ 1%),后续逐步收紧。

4.3 成功标准:演练通过/失败判定规则

成功标准是演练的“判决书”。必须提前定义,避免演练结束后出现“公说公有理”的争议。建议采用分级判定机制:

  • P0(硬性通过): 所有 KPI 均达到目标值,且未发生预期外的租户级故障扩散。
  • P1(有条件通过): 非目标租户影响 KPI 在目标值 1.5 倍以内,且故障恢复时间未超过 2 倍目标值。需记录风险项并安排整改。
  • P2(不通过): 出现跨故障域故障扩散、非目标租户服务中断、或任何 KPI 超过目标值 2 倍以上。演练立即终止,启动应急恢复流程。
等级 判定条件 后续动作
P0 通过 所有 KPI 达标,无预期外扩散 输出演练报告,固化隔离策略
P1 有条件通过 非目标租户影响 ≤ 1.5x 目标值,MTTR ≤ 2x 目标值 记录风险项,1 周内完成整改方案
P2 不通过 跨域扩散、非目标租户中断、KPI 超 2x 目标值 立即终止演练,启动应急恢复,组织根因分析
演练目标设定流程 1. 明确演练目的 2. 定义 KPI 3. 设定成功标准 反馈迭代:根据演练结果调整目标 目标设定需在演练前由 SRE、研发、QA 三方评审确认 评审通过后方可进入演练执行阶段
风险提示: 成功标准中必须包含“演练终止条件”。当出现以下任一情况时,无论当前进度如何,都应立即终止演练:
1. 非目标租户出现 P1 及以上告警;
2. 故障恢复时间超过预设的“最大容忍时间”(如 15 分钟);
3. 发现未知的共享依赖导致故障扩散不可控。

4.4 目标设定检查清单

在演练启动前,使用以下清单逐项确认目标设定是否完备:

  • ☐ 目的明确: 本次演练是验证隔离性还是发现盲区?或两者兼有?是否有优先级?
  • ☐ KPI 可采集: 每个 KPI 是否有对应的监控指标和采集工具?数据源是否在演练前已就绪?
  • ☐ 基线已建立: 演练前是否已采集至少 7 天的业务基线数据(错误率、延迟、资源使用率)?
  • ☐ 成功标准已评审: P0/P1/P2 判定规则是否已与所有干系人(SRE、研发、产品、运维)达成一致?
  • ☐ 终止条件已定义: 谁有权决定终止演练?终止后的应急恢复流程是否已文档化?
  • ☐ 盲区记录机制: 演练过程中发现的盲区是否有统一的记录模板和跟踪系统(如 Jira、Bugzilla)?

完成上述检查清单后,演练目标设定阶段即告完成。下一阶段将基于这些目标设计具体的故障注入场景和指标面板。