文章目录
- Kubernetes 组件深度解析与 10 个实战实验
-
- 一、K8s 架构总览
- 二、控制平面组件详解
-
- 2.1 kube-apiserver —— 集群的唯一入口
- 2.2 etcd —— 集群的\”数据库\”
- 2.3 kube-scheduler —— \”调度员\”
- 2.4 kube-controller-manager —— \”控制器大总管\”
- 2.5 cloud-controller-manager(可选)
- 三、工作节点组件详解
-
- 3.1 kubelet —— Node 上的\”管家\”
- 3.2 kube-proxy —— \”网络转发员\”
- 3.3 容器运行时 containerd
- 3.4 CoreDNS —— 集群 DNS
- 3.5 网络插件(CNI)—— Calico / Flannel
- 四、组件交互全流程(以创建一个 Pod 为例)
- 五、端口速查表(面试必背)
- 六、10 个实战实验
-
- 实验 1:追踪 Pod 创建全流程(组件交互验证)
- 实验 2:直接操作 etcd,查看 Pod 存储结构
- 实验 3:kube-scheduler 调度算法验证(污点与容忍)
- 实验 4:kube-controller-manager 的 ReplicaSet 调和循环
- 实验 5:kube-proxy iptables 模式深度解析
- 实验 6:kubelet 与 CRI 交互——手动用 crictl 操作容器
- 实验 7:Node 状态上报与心跳机制
- 实验 8:apiserver 认证授权链路拆解
- 实验 9:CoreDNS 解析与 Service 发现
- 实验 10:组件故障注入与高可用验证
- 七、实验总结与进阶建议
Kubernetes 组件深度解析与 10 个实战实验
环境:CentOS 7.9 + Kubernetes v1.24.17(kubeadm 部署,1 Master + 2 Node) 视角:架构师深度原理 + 零基础大白话,双视角并行
一、K8s 架构总览
Kubernetes 采用声明式 API + 控制器循环的核心设计哲学,整体分为两大平面:
┌─────────────────────────────────────────────────────────────┐
│ Control Plane(控制平面) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │
│ │ kube-apiserver│ │ etcd(集群数据库)│ │ kube-scheduler │ │
│ └──────┬───────┘ └──────┬───────┘ └────────┬─────────┘ │
│ │ │ │ │
│ ┌──────┴─────────────────┴───────────────────┴─────────┐ │
│ │ k



