前言

k8s 概念多,刚上手容易懵。其实核心就两件事:把容器跑起来,让别人访问到。这篇整理一条最短的学习路径,再把自己用下来觉得顺手的工具列一下,工具装对了能少走很多弯路。

1、架构

控制平面管「应该是什么样」,节点负责「实际是什么样」:

控制平面(Control Plane)                     工作节点(Node x N)
├── kube-apiserver    ← 一切操作的入口         ├── kubelet        ← 管本机容器生命周期
├── etcd              ← 集群的数据库           ├── kube-proxy     ← 管 Service 转发
├── kube-scheduler    ← 决定 Pod 落在哪个节点   └── 容器运行时      ← containerd
└── kube-controller-manager ← 维持期望状态

用 k8s 做的所有操作,本质都是告诉 apiserver 一个期望状态,然后控制器发现差距、往那个方向收敛。理解了这个,Deployment、ReplicaSet、HPA 就都好懂了。

……

阅读全文