1. 课程导论:Deployment 水位巡检的背景与目标

1.1 为什么需要 Deployment 水位巡检

在 Kubernetes 集群的日常运维中,Deployment 是最核心的工作负载抽象。然而,随着微服务数量膨胀,Deployment 的配置漂移、资源浪费、异常副本等问题逐渐成为运维盲区。传统巡检依赖人工登录集群执行 kubectl get deploy,存在以下痛点:

  • 配置漂移:副本数、资源限制、更新策略被临时修改后未同步至 CMDB。
  • 资源浪费:大量 Deployment 长期处于 0 副本或低负载状态,占用 etcd 和调度器资源。
  • 异常副本:Pod 重启次数过高、CrashLoopBackOff 未被及时告警。
  • 版本黑洞:镜像版本长期不更新,安全漏洞无法追溯。
核心目标:通过服务目录平台统一纳管所有 Deployment,建立可量化的水位指标,实现从“被动救火”到“主动巡检”的运维模式转变。

1.2 服务目录平台概述

服务目录平台(Service Catalog Platform)是企业内部微服务的“活字典”。它聚合了 CMDB、Kubernetes API、监控系统、发布系统等多源数据,为每个服务提供统一的元数据视图。在本课程中,服务目录平台承担以下角色:

角色 说明
数据底座 存储 Deployment 的期望状态(副本数、资源限制、镜像版本)
巡检引擎 定时对比实际集群状态与目录中的期望状态,生成差异报告
可视化看板 以水位图、趋势图展示集群健康度,支持下钻到单个 Deployment
工单联动 自动创建变更工单或告警事件,驱动修复流程
服务目录平台与 Deployment 巡检关系架构 服务目录平台 CMDB Kubernetes API 监控系统 发布系统 水位看板 差异报告 告警工单 巡检引擎定时对比期望状态与实际状态,驱动水位计算

1.3 课程整体结构

本课程共 30 章,按“认知 → 设计 → 实现 → 运营”四阶段递进。下表展示了各阶段的核心内容:

阶段 章节范围 核心产出
认知 第 1-4 章 水位指标体系、服务目录数据模型
设计 第 5-12 章 巡检引擎架构、差异计算算法、告警分级策略
实现 第 13-24 章 核心代码实现、API 设计、前端看板、工单集成
运营 第 25-30 章 巡检报告模板、SLA 度量、持续优化案例
学习建议:如果你对 Kubernetes 和服务目录已有基础,可以直接从第 5 章“巡检引擎架构设计”开始;如果你是运维新手,建议按顺序学习,先建立水位指标认知。
课程四阶段递进路线 认知 第 1-4 章 指标体系 · 数据模型 设计 第 5-12 章 引擎架构 · 算法 实现 第 13-24 章 代码 · API · 看板 运营 第 25-30 章 报告 · SLA 每阶段均包含实战案例与可复用代码片段

1.4 水位巡检的核心指标

在进入具体实现前,先明确本课程定义的五大水位指标。这些指标将贯穿后续所有章节:

  1. 副本水位:实际副本数与期望副本数的偏差比例。
  2. 资源水位:CPU/Memory 的 request 与 limit 设置是否合理,是否存在超卖。
  3. 更新水位:镜像版本与目录中记录的基线版本是否一致。
  4. 健康水位:Pod 重启次数、就绪探针失败率、CrashLoop 状态。
  5. 废弃水位:长期 0 副本、无更新、无流量的 Deployment 数量。
注意:水位指标不是静态阈值,而是动态基线。本课程第 3 章会详细讲解如何通过历史数据自动计算合理阈值,避免误报。