全书目录

第十一篇:Kubernetes 完全指南 —— 星际舰队宇宙

第一章:先别急着背 YAML —— Kubernetes 到底在解决什么问题

1 分钟 331 字 第 224 / 962 个阅读单元

Docker 解决的是:怎么把一个程序装进标准集装箱里跑起来。

Kubernetes 解决的是:当你有很多集装箱、很多机器、很多副本、很多版本、很多流量时,怎样让整支舰队稳定、自动、可扩地运行。

把它想成一支星际舰队:

text
你有一支舰队要长期执行任务
│
├── 有很多母舰(机器)
├── 每艘母舰上有很多任务舱(容器工作单元)
├── 有的任务舱坏了要自动补
├── 有的任务需要临时增兵
├── 外部游客要从统一关口进入
├── 每个任务舱要吃到配置和密钥
└── 指挥部要始终确保“实际舰队”贴近“计划舰队”

所以 Kubernetes 不是“一个跑容器的命令”,而是一个声明式的舰队控制系统

你不是对它说:

  • “现在去启动 3 个进程”
  • “现在去重启那台机器上的那个容器”

你是对它说:

  • “我希望有 3 个这样的任务舱一直活着”
  • “我希望外界通过这个固定入口访问它们”
  • “我希望它们带着这份配置和这把密钥”
  • “我希望 CPU 高了自动扩到 10 个”

然后控制平面不断把现实拉回你声明的目标。

这就是 Kubernetes 最核心的心智模型:

text
你写下期望状态(desired state)
        │
        ▼
Kubernetes 持续观察当前状态(current state)
        │
        ▼
两者不一致,就自动修正