1. 课程导论与背景

可观测性平台的配置挑战

现代云原生可观测性平台通常由多个开源组件拼装而成:Prometheus(指标采集与告警)、Grafana(可视化面板)、Loki(日志聚合)、Tempo(分布式链路追踪)。每个组件都依赖大量 YAML/JSON 配置文件、Dashboard JSON、告警规则、Recording Rules 以及数据源连接定义。随着微服务数量增长和集群环境增多,纯手工管理这些配置会迅速陷入以下困境:

挑战维度 具体表现 典型后果
配置漂移 开发、预发、生产环境的 Grafana 面板或告警规则不一致 故障漏报、误报,排障效率下降
变更追溯难 谁在什么时候修改了 Prometheus 的 scrape 配置或告警阈值 审计缺失,回滚困难
多集群复制 每个 Kubernetes 集群都需要部署一套可观测性栈,配置重复且易出错 运维负担成倍增加
版本管理缺失 Dashboard JSON 或告警规则文件散落在不同机器或聊天记录中 无法快速恢复到已知稳定版本
环境差异 不同环境的 Loki 存储后端、Tempo 采样率、Prometheus 保留周期各不相同 配置模板化不足,手动修改频繁
核心痛点:可观测性平台的配置本质上是“代码”,但缺乏 GitOps 工作流的管理,导致其陷入与早期应用部署相同的混乱状态。

Argo CD 在 GitOps 中的角色

Argo CD 是 Kubernetes 生态中最主流的 GitOps 工具之一。它将 Git 仓库作为声明式基础设施和应用的“单一事实来源”,通过自动或手动同步机制确保集群状态与 Git 仓库中定义的期望状态一致。在可观测性平台管理场景中,Argo CD 承担以下关键角色:

  • 配置声明化:将 Prometheus、Grafana、Loki、Tempo 的所有配置(包括 Helm Values、原生 YAML、ConfigMap、Secret)统一存储在 Git 仓库中。
  • 自动化同步:当 Git 仓库中的配置发生变更时,Argo CD 自动或按需将变更应用到目标集群,消除手动 kubectl apply 或 Helm upgrade 带来的风险。
  • 状态可视化:通过 Web UI 或 CLI 实时展示集群中可观测性组件的实际状态与 Git 期望状态之间的差异(Diff)。
  • 多集群分发:利用 Argo CD 的 ApplicationSet 或多集群管理能力,将同一套可观测性配置模板化地部署到多个 Kubernetes 集群,仅通过参数覆盖环境差异。
  • 回滚与审计:任何配置变更都对应一次 Git commit,回滚只需 revert 提交或同步到历史版本,所有操作记录天然留存于 Git 历史中。
Argo CD 在可观测性 GitOps 中的核心角色 Git 仓库 单一事实来源 Argo CD 自动同步 + Diff 检测 K8s 集群 实际运行状态 git pull kubectl apply Prometheus Grafana Loki Tempo Git 仓库中管理的配置类型 Helm Values · 告警规则 · Dashboard JSON · 数据源配置 · Recording Rules · 日志采集配置 ConfigMap · Secret · 服务发现配置 · 保留策略 · 采样率参数

课程目标与受众

本课程旨在帮助 DevOps 和 SRE 工程师掌握使用 Argo CD 管理可观测性平台(Prometheus、Grafana、Loki、Tempo)配置的完整工程方法。课程从 GitOps 基础概念出发,逐步深入到多集群配置分发、Sealed Secrets 安全处理、Drift 检测与自动修复、以及生产级 CI/CD 集成方案。

维度 详细说明
核心目标 建立一套可审计、可回滚、可复用的可观测性配置 GitOps 工作流
实践产出 完整的 Git 仓库结构、Argo CD Application 定义、多环境参数覆盖方案、告警规则管理流程
目标受众 DevOps 工程师 · SRE · 平台工程师 · 对 GitOps 和可观测性感兴趣的技术人员
前置知识 Kubernetes 基础操作 · Helm 包管理 · Prometheus/Grafana 基本使用 · Git 版本控制
课程定位:这不是 Argo CD 的入门教程,而是聚焦于“可观测性配置”这一特定领域的 GitOps 深度实践。如果你已经熟悉 Argo CD 的基本操作,本课程将帮你把技能提升到生产级工程水平。
课程知识体系全景 基础与原理 GitOps 声明式模型 Argo CD 架构与组件 可观测性配置类型 仓库结构设计原则 核心实践 Prometheus 告警规则管理 Grafana Dashboard 版本化 Loki/Tempo 配置 GitOps 多环境参数覆盖 进阶与生产 多集群 ApplicationSet Sealed Secrets 安全方案 Drift 检测与自动修复 CI/CD 集成与审批 课程交付物与能力 ✅ 一套可直接复用的可观测性 GitOps 仓库模板 ✅ 多集群配置分发与安全管理的工程方案 ✅ 生产级告警规则变更审批与自动同步流水线
重要提示:本课程所有实践操作均基于 Argo CD v2.8+ 和 Helm v3.12+。如果你使用的版本低于上述要求,部分功能(如 ApplicationSet 的 Matrix 生成器、Diff 自定义配置)可能不可用,建议先升级环境。