1. 课程导论:云原生成本分摊与 HPA 水位预测的背景、课程目标与学习路径
1.1 背景:为什么需要成本分摊与 HPA 水位预测?
云原生架构的普及让企业获得了弹性与敏捷性,但也带来了两个核心挑战:成本黑洞与容量失控。Kubernetes 集群中,多个团队共享计算资源,缺乏精细的成本归属机制,导致财务部门无法准确核算每个业务线的资源消耗。同时,面对突发的流量洪峰(如电商大促、秒杀活动),传统的固定副本数策略要么资源浪费严重,要么因扩容滞后导致服务降级。
本课程聚焦于解决这两个痛点:
- 成本分摊模型:将集群总成本(CPU、内存、存储、网络)按实际使用量、请求量或业务标签,公平、透明地分摊到各个团队或应用。
- HPA 水位预测:基于历史指标与业务特征,提前预测 Pod 的 CPU/内存水位,指导 HPA 提前扩容,避免突增时的性能抖动。
核心矛盾:云原生弹性带来的“按需付费”优势,在缺乏精细化治理时,反而会因过度配置或闲置资源导致成本飙升。成本分摊与水位预测是 FinOps 落地的关键抓手。
1.2 课程目标
完成本课程后,你将能够:
| 目标维度 | 具体能力 | 对应章节 |
|---|---|---|
| 成本治理 | 设计并实施基于标签、命名空间、Pod 的多维度成本分摊模型 | 第 2-8 章 |
| 容量预测 | 使用时间序列模型(Prophet、LSTM)预测 HPA 水位,并配置提前扩容策略 | 第 9-18 章 |
| 工具实战 | 熟练使用 Kubecost、Karpenter、Prometheus + HPA V2 进行成本与弹性管理 | 第 19-25 章 |
| FinOps 闭环 | 建立成本告警、预算控制、容量规划的持续优化流程 | 第 26-30 章 |
1.3 学习路径与知识体系
课程分为四个阶段,建议按顺序学习:
- 基础篇(第 1-8 章):成本分摊模型设计、Kubernetes 资源计量、标签治理。
- 预测篇(第 9-18 章):HPA 原理、水位指标采集、预测算法选型与调优。
- 实战篇(第 19-25 章):Kubecost 部署、Karpenter 动态扩缩、HPA 自定义指标。
- 优化篇(第 26-30 章):成本异常检测、容量规划、FinOps 组织落地。
学习建议:如果你已有 Kubernetes 基础,可以直接从第 9 章开始;但建议至少阅读第 2-3 章的成本分摊概念,因为水位预测的最终目标是优化成本。
1.4 关键概念速览
在进入具体章节前,先统一几个核心术语:
| 术语 | 定义 | 在本课程中的角色 |
|---|---|---|
| 成本分摊 | 将集群总成本按规则分配给不同业务单元 | 成本治理的基础,决定账单归属 |
| HPA | Horizontal Pod Autoscaler,水平 Pod 自动扩缩 | 弹性执行器,根据水位调整副本数 |
| 水位预测 | 基于历史数据预测未来资源使用率 | 提前触发 HPA,避免扩容延迟 |
| FinOps | 云财务运营,融合财务、技术、业务的管理模式 | 课程顶层方法论,指导成本与容量优化 |
常见误区:成本分摊不是简单的“按 Pod 数量平分”,必须考虑资源请求量、实际使用量、节点预留等维度。HPA 水位预测也不是越灵敏越好,需要平衡扩容速度与资源浪费。
1.5 前置知识要求
为了顺利学习本课程,建议你具备以下基础:
- 熟悉 Kubernetes 基本概念(Pod、Deployment、Service、Namespace)
- 了解 Prometheus 监控指标与查询语言(PromQL)
- 具备基础的 Python 或 Shell 脚本能力(用于实验)
- 对云服务计费模式(按需、预留、Spot)有基本认知
资源准备:课程实验需要一套 Kubernetes 集群(推荐 1.24+ 版本)和 Prometheus + Grafana 环境。我们会在第 2 章提供一键部署脚本。