1. 课程导学与环境总览
1.1 课程目标
本课程旨在带领学员从零构建一套完整的 Kubernetes 报表导出服务集成环境,并实现全流程的环境回放能力。通过 30 个章节的实战,你将掌握以下核心能力:
- 在 K8s 集群中部署高可用的报表导出微服务
- 使用 Helm 管理应用生命周期与版本回滚
- 集成 Prometheus + Grafana 实现服务监控与报表指标可视化
- 搭建 Jenkins + GitLab CI/CD 流水线,实现代码提交到自动部署的闭环
- 设计并实现集成环境回放机制,支持历史构建/部署场景的精确复现
🎯 最终产出:一套可演示、可复用的报表导出服务交付体系,附带完整的回放测试用例与运维手册。
1.2 前置知识要求
为顺利跟上课程节奏,建议学员具备以下基础:
| 领域 | 具体要求 | 推荐学习资源 |
|---|---|---|
| Linux 基础 | 熟悉常用命令、文件权限、进程管理 | 《鸟哥的 Linux 私房菜》基础篇 |
| Docker | 掌握镜像构建、容器运行、docker-compose | Docker 官方文档入门教程 |
| Kubernetes 入门 | 了解 Pod、Service、Deployment 等核心资源 | K8s 官方交互式教程 (Katacoda) |
| Git 版本控制 | 熟练使用分支、合并、标签操作 | Pro Git 在线书籍 |
| 基础编程能力 | 能阅读 Python/Go/Java 任意一种代码 | 语言官方快速入门 |
💡 提示:如果对某部分知识感到生疏,课程每章末尾会提供“前置知识速查”链接,方便你按需补课。
1.3 整体技术栈
本课程涉及的核心组件及其在架构中的角色如下:
| 组件 | 版本 | 在课程中的职责 |
|---|---|---|
| Kubernetes | v1.28+ | 容器编排平台,承载所有微服务与中间件 |
| Helm | v3.14+ | K8s 应用包管理,实现报表服务的标准化部署与回滚 |
| Prometheus | v2.50+ | 指标采集与告警规则引擎,监控报表生成性能 |
| Grafana | v10.4+ | 可视化仪表板,展示报表导出成功率、延迟等关键指标 |
| Jenkins | v2.440+ | CI/CD 调度中心,触发构建、测试、部署流水线 |
| GitLab | v16.8+ | 代码仓库与 CI 运行器,管理报表服务源码与流水线配置 |
1.4 集成环境回放概念介绍
集成环境回放是指将某一时刻的完整集成环境(包括代码版本、配置参数、中间件状态、部署拓扑)进行快照保存,并在后续任意时间点精确重建该环境的能力。在本课程中,回放机制解决以下核心痛点:
- 故障复现:生产环境出现报表导出异常时,可回放到问题发生时的环境状态进行根因分析
- 版本对比:回放不同版本的集成环境,对比报表生成质量与性能差异
- 回归测试:每次代码变更后,自动回放基准环境运行测试用例,确保功能一致性
- 培训与演示:新成员可通过回放快速搭建与生产一致的开发/测试环境
⚠️ 注意:环境回放不等于简单的容器重启或镜像拉取。它要求对 K8s 资源定义、Helm values、持久化数据、监控历史进行全量编排与校验,这也是本课程的核心挑战所在。
1.5 课程章节速览
全课程共 30 章,划分为 5 个阶段:
| 阶段 | 章节范围 | 核心内容 |
|---|---|---|
| 基础环境搭建 | 第 1-6 章 | K8s 集群初始化、Helm 安装、GitLab/Jenkins 部署 |
| 报表服务开发与容器化 | 第 7-12 章 | 报表导出微服务编码、Docker 镜像构建、K8s 资源清单编写 |
| 监控与可观测性 | 第 13-18 章 | Prometheus 指标接入、Grafana 仪表板设计、告警规则配置 |
| CI/CD 流水线集成 | 第 19-24 章 | Jenkins Pipeline 脚本、GitLab CI 集成、自动化测试与部署 |
| 环境回放与实战 | 第 25-30 章 | 回放机制设计、快照与恢复、全链路演练与故障排查 |
📌 学习建议:每章结束后,在本地环境执行对应的实验操作,并提交一次 Git 标签。这既是练习,也是为后续环境回放积累快照素材。