1. 课程导学:分布式追踪值班台高可用部署的整体架构与学习路径
本课程面向 SRE 工程师、平台架构师与可观测性运维人员,聚焦于将 Jaeger 从“开发调试工具”升级为“生产级高可用分布式追踪值班台”。课程围绕三大核心目标展开:数据不丢、查询不断、故障可巡。
1.1 值班台架构全景
生产级 Jaeger 部署不再是单点 All-in-One 进程,而是由多个独立组件构成的数据管道。下图展示了本课程将要搭建的完整值班台架构:
架构要点:本课程采用“采集 → 缓冲 → 存储 → 查询”四层分离架构。每一层都设计了故障隔离与弹性伸缩策略,确保单点故障不会导致追踪数据丢失或值班台不可用。
1.2 课程学习路径
课程共分为 6 个模块、30 个章节,从基础概念逐步深入到生产级运维。下表列出了各模块的核心内容与学习目标:
| 模块 | 章节范围 | 核心内容 | 学习目标 |
|---|---|---|---|
| 模块一 基础与架构 |
第 1-5 章 | Jaeger 数据模型、Span/Trace 概念、架构组件、部署模式对比 | 理解分布式追踪原理,掌握 All-in-One 与生产部署的差异 |
| 模块二 高可用采集 |
第 6-11 章 | Collector 水平扩展、Kafka 缓冲、采样策略、背压处理 | 搭建可弹性伸缩的采集管道,确保高吞吐下数据不丢失 |
| 模块三 存储高可用 |
第 12-17 章 | ES 集群调优、索引生命周期、Cassandra 部署、数据备份恢复 | 构建持久化存储层,支持海量 Span 的快速写入与查询 |
| 模块四 查询与值班台 |
第 18-23 章 | Query 服务 HA、UI 定制、Grafana 集成、Trace 搜索优化 | 打造 7×24 可用的值班查询台,支撑故障快速定位 |
| 模块五 监控与告警 |
第 24-27 章 | 组件指标采集、SLO 定义、告警规则、值班 On-Call 流程 | 建立追踪系统的可观测性闭环,实现主动发现故障 |
| 模块六 实战与演练 |
第 28-30 章 | 混沌工程注入、故障演练、容量规划、升级回滚 | 通过实战验证架构韧性,形成可复用的运维手册 |
1.3 值班台高可用设计原则
在课程中,我们将反复强调以下三条设计原则,它们贯穿整个部署架构:
- 无状态优先:Collector 与 Query 服务设计为无状态,通过前置负载均衡(如 Nginx / Envoy)实现流量分发与故障转移。
- 缓冲隔离:引入 Kafka 作为采集与存储之间的缓冲层,避免存储抖动直接冲击采集端,同时提供数据重放能力。
- 降级与限流:当后端存储或 Kafka 出现延迟时,Collector 自动触发降级采样或背压机制,优先保障核心服务的追踪数据完整性。
生产环境基线:本课程所有部署方案均基于 Kubernetes 环境,使用 Helm Chart 进行组件编排。课程提供完整的 values.yaml 配置示例,可直接用于生产集群。
1.4 课程前置知识与环境准备
为获得最佳学习效果,建议学员具备以下基础:
| 领域 | 必备知识 | 推荐资源 |
|---|---|---|
| Kubernetes | Pod、Service、Deployment、HPA 基本操作 | K8s 官方教程 / CKAD 课程 |
| 可观测性基础 | 了解 Metrics、Logging、Tracing 三大支柱 | OpenTelemetry 入门文档 |
| 存储系统 | Elasticsearch 或 Cassandra 基本概念 | ES 官方指南 / Cassandra 基础 |
| 消息队列 | Kafka 主题、生产者、消费者概念 | Kafka 官方快速入门 |
课程实验环境推荐配置:
- Kubernetes 集群(≥ 3 节点,8C16G 以上)
- Helm 3.8+ 与 kubectl 命令行工具
- Jaeger Operator 或官方 Helm Chart(课程将提供具体版本锁定)
- 可选:本地 Kind / Minikube 集群用于快速验证
1.5 课程产出与交付物
完成本课程后,你将获得以下可直接用于工作的产出:
- 生产级 Helm 部署包:包含 Collector HPA、Kafka 缓冲、ES 索引模板、Query HA 的完整配置。
- 值班台 Dashboard 模板:Grafana 监控大盘,覆盖组件健康、吞吐量、延迟、错误率等核心指标。
- 故障演练剧本:3 套混沌工程实验方案(网络分区、存储降级、采集过载),附带验证步骤与回滚脚本。
- 运维手册模板:涵盖日常巡检、扩容流程、数据备份恢复、版本升级的标准操作流程(SOP)。
注意:本课程不涉及 Jaeger 的 SDK 埋点开发细节。我们假设你的服务已经通过 OpenTelemetry 或 Jaeger Client 完成埋点,课程聚焦于后端管道的部署与运维。
1.6 学习建议与节奏
建议按照以下节奏推进学习:
- 第 1-2 周:完成模块一与模块二,搭建最小可用采集管道,理解数据流转。
- 第 3-4 周:完成模块三与模块四,接入存储并部署值班台 UI,实现端到端查询。
- 第 5 周:完成模块五,配置监控告警,让值班台具备主动发现能力。
- 第 6 周:完成模块六,进行故障演练,验证架构韧性并完善运维手册。
每章末尾都配有 动手实验 与 自检清单,建议在真实或模拟环境中完成操作后再进入下一章。