开始学习

Stage 00 · 启程 · 第 1 / 4

学习路线与使用指南

这套教程怎么学、每个阶段学到什么程度、需要准备什么。

10 分钟|全程第 1 / 37

这套教程面向会用 Linux 命令行、但还没接触过 Kubernetes 的工程师,目标是带你从"第一次听说容器"一路走到"能规划、部署并长期运维一个生产集群,并在上面建设 GPU/AI 平台"。全程分 6 个阶段、36 篇课文,每一篇都尽量配上能在自己电脑上跑起来的例子。

读完这一课,你会知道每个阶段学什么、学到什么程度、适合按什么节奏推进,也会准备好接下来要用的实验环境。

为什么要按路线学

Kubernetes(常简称 K8s,K 和 s 之间有 8 个字母)的知识点多且互相交织:想看懂 Service 需要先懂 Pod 和标签,想排查网络故障需要先懂 CNI 和 kube-proxy,想部署生产集群又需要把前面这些全都串起来。零散地看博客很容易"每个词都认识,连起来不会用"。

所以本站把内容按依赖关系排成一条线:前面的课为后面的课铺路,后面的课会反复引用前面的概念。第一次学建议按顺序走;已经有基础的读者可以根据下面的路线图直接跳到对应阶段。

六个阶段的路线图

阶段名称定位学完能做到
0启程Prerequisites理解容器与 K8s 要解决的问题,在自己电脑上跑起第一个集群
1入门Beginner用 YAML 声明式地部署一个无状态 Web 应用,并对外提供服务
2进阶Intermediate为真实应用配置健康检查、资源、存储、调度和入口流量,并用 Helm / Kustomize 管理
3原理Advanced理解控制平面、网络、安全和扩展机制是怎样工作的,能解释"为什么"
4生产Production规划、部署并长期运维高可用生产集群,出了问题知道从哪里查
5专家Expert在 K8s 上建设 GPU/AI 平台和多租户平台,并持续跟进社区演进

阶段 0:启程——搞懂容器,搭好实验环境

K8s 管理的是容器,所以先把容器本身弄明白:

学到什么程度:能说清楚"容器是什么、K8s 管什么",本地集群能随时创建和销毁。

阶段 1:入门——掌握核心对象

学到什么程度:不看教程也能写出一个 Deployment + Service + ConfigMap 的组合,完成滚动更新和回滚,会用 kubectl logskubectl execkubectl describe 看问题。这大致对应 CKAD 考试的一半内容。

阶段 2:进阶——让应用可靠地跑起来

学到什么程度:能把一个带数据库、定时任务、HTTPS 入口的真实业务完整地搬上 K8s,并用 Helm 或 Kustomize 管理多套环境。

阶段 3:原理——深入内部机制

学到什么程度:遇到"Pod 一直 Pending""Service 访问不通""权限被拒绝"时,能从原理出发推断可能的原因,而不是只会搜报错信息。

阶段 4:生产——部署和运维真实集群

学到什么程度:能独立完成一个裸金属高可用集群的规划、部署、监控和升级。这一阶段的内容来自真实生产实践,大部分需要多台虚拟机或物理机,每课开头会说明所需环境。

阶段 5:专家——构建 AI 与平台级能力

学到什么程度:能为算法团队提供 GPU 训练和大模型推理平台,为多个团队提供隔离的多租户环境。

怎样使用本站

页面布局

  • 左侧目录:按阶段列出全部课文,当前所在的课会高亮。窄屏下可以从页面顶部展开。
  • 右侧大纲:列出本课的二级、三级标题,点击可跳转,滚动时会自动高亮当前小节。
  • 课文底部:有"上一课 / 下一课"导航,以及"标记为已完成"按钮。完成状态保存在浏览器本地,目录中已完成的课会带上标记,方便你随时看到进度。

提示框

正文里会穿插几种颜色不同的提示框,含义固定:

代码块

命令和配置都放在代码块里,右上角可以一键复制。带文件名的代码块(例如 nginx-pod.yaml)表示你应该把内容保存成这个文件再执行后续命令。以 $ 开头的是输入的命令,没有 $ 的行是输出,复制时请只复制命令本身。

每课的固定结构

每篇课文都按"为什么需要 → 是什么 → 怎么用 → 生产注意事项"的顺序展开,结尾有三个固定小节:

  • 动手练习:3~5 个小任务,建议全部完成。
  • 自测:点开问题查看答案,答不上来就回去重读对应小节。
  • 参考资料:官方文档链接,想深入时从这里出发。

前置知识

你需要具备:

  • Linux 命令行:会用 cdlscatvim/nanopscurl,知道什么是进程、端口、环境变量、文件权限。
  • 基本网络概念:IP 地址、端口、DNS、HTTP 请求与响应。
  • YAML 语法:缩进表示层级、- 表示列表、key: value 表示映射。不熟也没关系,阶段 1 会边用边讲。

不需要:会写 Go、事先了解 Docker(阶段 0 会从头讲容器)。

实验环境

硬件

一台 8 GB 以上内存的电脑(推荐 16 GB),剩余磁盘空间 20 GB 以上。macOS(Intel 或 Apple Silicon)、Linux、Windows(通过 WSL2)都可以。

本地实验集群用 kind(Kubernetes IN Docker)搭建:它把每个 K8s 节点跑成一个容器,一个 3 节点集群空载时大约占用 2~3 GB 内存。

软件

软件用途说明
Docker 或 Podman容器运行环境,kind 依赖它macOS/Windows 可用 Docker Desktop、OrbStack、Colima 或 Podman Desktop;Linux 直接装 Docker Engine 或 Podman
kubectlK8s 命令行客户端搭建本地实验集群 中安装
kind本地多节点集群同上
一个文本编辑器编辑 YAML推荐 VS Code + Kubernetes/YAML 插件

先确认容器环境可用:

console
$ docker version --format '{{.Server.Version}}'
28.x.x
$ docker run --rm hello-world
Hello from Docker!
...

如果用 Podman,把上面的 docker 换成 podman 即可。

阶段 4、5 的部分内容(高可用集群部署、Ceph 存储、GPU)需要多台 Linux 虚拟机或物理机,届时会单独说明。

参考资料的来源

本站内容有两个主要来源:

  1. Kubernetes 官方文档:优先引用中文版 https://kubernetes.io/zh-cn/docs/。官方文档是最权威的参考,但它更像"字典",适合查阅而不适合从头学。本站负责把知识串成路线,每课末尾给出对应的官方文档链接,方便你深入。
  2. 团队生产实践仓库:阶段 4、5 大量内容来自一个真实的生产实践仓库,涵盖 Kubespray 部署、Cilium 网络、Rook-Ceph 存储、VictoriaMetrics 监控、GPU Operator 等。引用时已去除内部域名和 IP,统一改成 example.com192.168.x.x 这类示例值,使用时请替换成你自己的环境。

动手练习

  1. 浏览左侧目录,找到阶段 4 的"故障排查方法论"一课,再用浏览器后退回来,熟悉导航。
  2. 确认你的电脑内存 ≥ 8 GB,并安装好 Docker 或 Podman。
  3. 执行 docker run --rm hello-world(或 podman run --rm hello-world),确认输出正常。
  4. 把本课标记为"已完成",刷新页面,确认目录里的完成标记仍然存在。

自测

本教程一共几个阶段?哪个阶段开始需要多台机器?

6 个阶段(0~5)。阶段 0~3 的例子都能在本地 kind 集群里运行;阶段 4(生产)开始的部署类内容需要多台 Linux 虚拟机或物理机,阶段 5 的 GPU 相关内容还需要 GPU 节点。

正文里的 PROD 提示框表示什么?

生产实践:来自真实生产集群的经验和注意事项。本地实验时可以先略读,到部署和运维真实集群时再回头细看。

kind 为什么需要 Docker 或 Podman?

kind 把每个 Kubernetes 节点都运行成一个容器(节点镜像为 kindest/node),所以宿主机上必须有一个容器引擎来运行这些"节点容器"。

参考资料

学完了吗?

进度保存在本机浏览器中,可在学习路线页查看。