主题
00 前言与学习建议
0.1 进阶教材的定位
如果说零基础教材帮助你"会用 Kubernetes",那么进阶教材的目标是帮助你"用好 Kubernetes",能够:
- 设计和维护生产级 K8s 集群
- 排查复杂问题
- 优化集群性能和成本
- 保障集群安全
- 管理大规模和多集群环境
- 推动运维平台化和智能化
0.2 进阶学习的特点
进阶学习与基础学习有很大不同:
| 维度 | 基础阶段 | 进阶阶段 |
|---|---|---|
| 目标 | 掌握概念和基本操作 | 理解原理和生产实践 |
| 深度 | 知道是什么 | 知道为什么和怎么做 |
| 范围 | 单一知识点 | 跨知识点综合 |
| 问题 | 理想环境 | 复杂真实场景 |
| 产出 | 能运行 | 能优化、能兜底、能兜底 |
0.3 学习方法
- 原理驱动:先理解设计原理,再记命令
- 问题导向:带着真实问题去学习
- 阅读源码:适当阅读 K8s 和开源组件源码
- 动手实验:每个概念都要在真实环境中验证
- 复盘总结:把踩过的坑写成文档
- 社区参与:关注 GitHub Issues、CNCF 项目
0.4 实验环境准备
推荐:使用 kubeadm 部署 3 节点集群
bash
# 1 个 Master + 2 个 Worker
# 节点配置:2 核 4GB 以上
# 安装 kubeadm、kubelet、kubectl
# 参考零基础教材第五部分
# 初始化 Master
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
# 安装 Calico 或 Cilium
kubectl apply -f https://raw.githubusercontent.com/projectcalico/calico/v3.27.0/manifests/calico.yaml
# 加入 Worker 节点
sudo kubeadm join <MASTER_IP>:6443 --token <TOKEN> --discovery-token-ca-cert-hash sha256:<HASH>安装 Helm
bash
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash安装常用 CLI 工具
bash
# Stern:多 Pod 日志查看
wget https://github.com/stern/stern/releases/download/v1.28.0/stern_1.28.0_linux_amd64.tar.gz
sudo tar -xzf stern_*.tar.gz -C /usr/local/bin
# k9s:终端 K8s 管理工具
wget https://github.com/derailed/k9s/releases/latest/download/k9s_Linux_amd64.tar.gz
sudo tar -xzf k9s_Linux_amd64.tar.gz -C /usr/local/bin
# kube-ps1 / kubectx / kubens
sudo apt install -y kube-ps1 kubectx0.5 如何做进阶笔记
进阶笔记应包含:
- 原理图解
- 配置示例
- 实验步骤和结果
- 踩坑记录
- 与其他组件的关系
- 性能影响分析
建议用 Markdown + Draw.io/Excalidraw 画图。
0.6 本章练习
- 确认你已掌握零基础教材 80% 以上内容。
- 准备一个 3 节点的 K8s 实验集群。
- 安装 Helm、stern、k9s 等工具。
- 画出你当前对 K8s 网络的理解图。
进入第一部分:K8s 网络进阶。