Skip to content

00 前言与学习建议

0.1 进阶教材的定位

如果说零基础教材帮助你"会用 Kubernetes",那么进阶教材的目标是帮助你"用好 Kubernetes",能够:

  • 设计和维护生产级 K8s 集群
  • 排查复杂问题
  • 优化集群性能和成本
  • 保障集群安全
  • 管理大规模和多集群环境
  • 推动运维平台化和智能化

0.2 进阶学习的特点

进阶学习与基础学习有很大不同:

维度基础阶段进阶阶段
目标掌握概念和基本操作理解原理和生产实践
深度知道是什么知道为什么和怎么做
范围单一知识点跨知识点综合
问题理想环境复杂真实场景
产出能运行能优化、能兜底、能兜底

0.3 学习方法

  1. 原理驱动:先理解设计原理,再记命令
  2. 问题导向:带着真实问题去学习
  3. 阅读源码:适当阅读 K8s 和开源组件源码
  4. 动手实验:每个概念都要在真实环境中验证
  5. 复盘总结:把踩过的坑写成文档
  6. 社区参与:关注 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 kubectx

0.5 如何做进阶笔记

进阶笔记应包含:

  • 原理图解
  • 配置示例
  • 实验步骤和结果
  • 踩坑记录
  • 与其他组件的关系
  • 性能影响分析

建议用 Markdown + Draw.io/Excalidraw 画图。

0.6 本章练习

  1. 确认你已掌握零基础教材 80% 以上内容。
  2. 准备一个 3 节点的 K8s 实验集群。
  3. 安装 Helm、stern、k9s 等工具。
  4. 画出你当前对 K8s 网络的理解图。

进入第一部分:K8s 网络进阶