第 1 / 18 篇

写在开始之前

如果你第一次看到 Kubernetes,读作“库伯内特斯”,觉得它像一堵由英文缩写组成的墙,这本书就是为你准备的。Kubernetes 常简称 K8s,因为首字母 K 与末字母 s 之间有八个字母。它管理运行在一组机器上的容器,让应用按照你声明的要求运行。

本书目标是让你理解核心概念,在自己的电脑上部署一个网页,能找到常见故障的原因,并知道下一步该学什么。完成本书不等于能够独立维护生产集群;生产运维还涉及网络、备份、升级、审计和团队流程。

全书以 Kubernetes 官方文档为主要依据,并用自己的教学语言重新组织。末尾提供可点击的来源与延伸阅读。网络资料持续变化,安装时应以对应工具的官方页面为准。书中的 API 使用稳定版本,不把某个“最新版本号”写死。

怎样阅读

第一次学习请按顺序阅读第 1 至 9 章。每读完一章,先用自己的话回答章末问题,再执行实验。第 10 至 14 章用于补全能力。附录提供练习答案、命令速查和两周安排。

建议准备一台可以安装软件、连接互联网的电脑,至少约 4 GB 可供实验使用的内存和几 GB 空闲磁盘;实际需求取决于操作系统、容器运行时和虚拟化方式,8 GB 及以上整机内存更从容。镜像下载可能很慢,先区分网络问题与 Kubernetes 配置问题。

本书默认选择 Docker + kind + kubectl:Docker 提供容器运行环境,kind 在容器里创建练习集群,kubectl 向集群发命令。macOS、Windows 和 Linux 都能使用这条路线。命令示例以 Bash、zsh 或 WSL 的 shell 为准;Windows 原生 PowerShell 在多行输入和引号上存在差异,初学者可在 WSL 中统一操作。

发布前的自动化实验在新的 GitHub Actions Linux runner 中运行真实 kind 集群,固定 kind v0.33.0、Kubernetes v1.37.0 的官方 node 镜像摘要和同版本 kubectl。它验证网页服务、探针故障、回滚、存储与调度边界;实际证据和未测试项见公开仓库的交付记录。这个固定组合用于复现本次结果,不代替各平台安装文档,也不意味着所有 Kubernetes 版本行为完全相同。

实验仅针对你创建的本地 k8s-book 集群。执行任何写操作前,确认当前上下文,避免误操作工作环境。若你没有权限安装软件,可以先阅读概念,但动手结果必须在真正的集群中验证。