1. 课程导论:HPA 故障复测的背景、目标与课程整体架构

1.1 为什么需要 HPA 故障复测?

在生产环境中,Horizontal Pod Autoscaler(HPA)是保障业务弹性伸缩的核心组件。然而,HPA 的配置并非“一次设置,永久生效”。实际运维中,HPA 可能因多种原因失效或表现异常,导致服务过载或资源浪费。传统的“配置即交付”模式无法验证 HPA 在真实故障场景下的行为,因此需要引入故障复测机制。

核心痛点: 配置正确 ≠ 运行正确。HPA 在以下场景中极易出现预期外的行为:
  • Metrics Server 延迟或不可用
  • 自定义指标采集链路中断
  • 集群节点资源竞争导致调度延迟
  • 多 HPA 策略冲突或目标利用率计算偏差

1.2 课程目标

本课程旨在通过混沌工程与故障注入手段,系统性地验证 HPA 伸缩任务编排的健壮性。完成本课程后,学员将能够:

目标维度 具体能力 对应实战章节
故障发现 识别 HPA 在指标延迟、节点故障下的异常行为 第 3-5 章
编排验证 设计并执行多阶段伸缩任务编排,验证依赖关系 第 6-8 章
混沌实验 使用 Chaos Mesh / Litmus 注入 Pod、网络、节点故障 第 9-12 章
自动化复测 构建 CI/CD 流水线中的 HPA 回归测试套件 第 13-15 章

1.3 课程整体架构

课程采用“基础 → 编排 → 注入 → 复测”四阶段递进式设计,覆盖从理论到实战的完整闭环。

课程整体架构图 阶段一:基础 HPA 原理与配置 阶段二:编排 伸缩任务编排设计 阶段三:注入 故障注入与混沌 阶段四:复测 自动化回归 子模块 • Metrics Server 部署 • 自定义指标适配 子模块 • 多阶段伸缩链 • 依赖与回滚策略 子模块 • Pod/网络/节点故障 • Chaos Mesh 实验 子模块 • 回归测试套件 • CI/CD 集成 课程产出:可复用的 HPA 故障复测框架 + 自动化测试流水线 覆盖 10+ 种故障场景,支持自定义编排与混沌实验注入

1.4 课程章节分布

课程共 30 章,按知识密度分为以下模块:

模块 章节范围 核心内容 实战比例
基础篇 第 1-5 章 HPA 原理、Metrics Server、自定义指标、Kubernetes 调度基础 40%
编排篇 第 6-10 章 伸缩任务编排设计、依赖管理、回滚策略、多 HPA 协同 60%
注入篇 第 11-20 章 故障注入工具链、Pod/网络/节点故障、混沌实验设计 80%
复测篇 第 21-30 章 自动化复测框架、CI/CD 集成、报告生成、最佳实践 90%
学习建议: 基础篇建议按顺序学习;编排篇与注入篇可交叉进行;复测篇建议在完成前三个阶段后集中实践。

1.5 故障复测的核心流程

本课程遵循的故障复测流程可抽象为以下闭环:

  1. 基线建立: 在无故障环境下记录 HPA 的正常伸缩行为(伸缩延迟、Pod 数量变化曲线)。
  2. 故障注入: 通过混沌工程工具注入目标故障(如 Metrics Server 延迟、节点资源竞争)。
  3. 行为采集: 实时采集 HPA 决策日志、Pod 状态、指标数据。
  4. 差异分析: 对比故障状态与基线状态的偏差,识别异常模式。
  5. 策略优化: 根据分析结果调整 HPA 配置或编排策略。
  6. 回归验证: 重复上述步骤,确认问题已修复且未引入新缺陷。
故障复测闭环流程 基线建立 故障注入 行为采集 差异分析 策略优化 回归验证 闭环 持续迭代
注意: 故障复测不是一次性活动。每次 HPA 配置变更、集群升级或业务模型调整后,都应重新执行复测流程,确保伸缩行为始终符合预期。