Kubernetes 赢下容器十年之后,亲手养大它的 Google 说控制面装不下 Agent

发布于 · 12,228 字 · 约 31 分钟#DevOps#趋势洞察
Kubernetes 赢下容器十年之后,亲手养大它的 Google 说控制面装不下 Agent 封面图
  • Google 开源 Kubernetes,传承 Borg 系统理念
  • Kubernetes 1.0 发布,Google 联手 CNCF 捐赠技术
  • Kubernetes 赢得编排器战争,中立性和 API 设计助力
  • Kubernetes 生态爆炸,贡献者数量激增
  • Kubernetes 专注内核,生态接口化,云厂商代码移除

大家好,我是若风。

2026 年 1 月,CNCF 年度调查报告的标题直接写成了「Kubernetes 被确立为 AI 的事实操作系统」。容器用户里 82% 已经在生产跑它,两年前这个数字是 66%。基金会很少用这种口吻下判词。

十二年前它还只是 GitHub 上一个 250 个文件、47,501 行的小项目,内部代号 Project 7。

我把能找到的官方博客、基金会报告、GitHub 仓库和一批社区讨论对了一遍,想搞清楚三件事。它怎么从四人小项目长成行业地基。编排器战争它到底靠什么赢的。AI 时代它还能不能继续坐在这张牌桌上。

Google 藏了十年的家底

故事得从一家「什么都有但什么都不说」的公司讲起。

2003 年前后,Google 内部上线了一套叫 Borg 的集群管理系统。此后十多年,这家公司靠它调度着单集群上万台机器、数千种应用、数十万个作业,把机器利用率压榨到同行难以想象的水平。外面的人只知道 Google 搜索快、Gmail 稳,不知道这背后有一套打了十年补丁、见过所有奇怪故障的调度系统在运转。2006 年,Google 工程师 Rohit Seth 在一封内部邮件里第一次用了 container 这个词来描述这套系统里的隔离单元。十几年后,这个词接管了整个软件行业。

行业对 Borg 的了解要等到 2015 年 4 月。EuroSys 学术会议在波尔多收到那篇著名的论文《Large-scale cluster management at Google with Borg》。时间点耐人寻味,论文发表于 Kubernetes 首次公开之后将近一年。Tim Hockin 后来解释过原因,「大家觉得我们是在把会下金蛋的鹅直接送人」。Google 内部讨论多年后发现,Borg 和自家基础设施缠得太深,抽出来单独卖等于把公司解剖了卖。

于是有了后来那个决定。不卖 Borg,把 Borg 的思想重新实现一遍,开源。

这一点值得强调。Kubernetes 和 Borg 没有一行共享代码。它继承的是教训。Pod 的原型是 Borg 的 alloc。Label 标签体系是为了解决 Borg 里刚性的 Job/Task 模型痛点。每 Pod 一个 IP,取代了 Borg 那套主机端口共享的别扭设计。2016 年 ACM Queue 上那篇《Borg, Omega, and Kubernetes》把三代系统的传承关系讲得很清楚。Kubernetes 是一套在 Google 规模上被反复锤炼过的理念的第二次实现。这个出身,决定了它后来很多性格,包括好的一面,也包括「天生为 Google 规模设计」这个至今甩不掉的包袱。

Project 7,给「脱离集体」起的名字

2013 年,Docker 横空出世,容器突然从大厂内部技术变成了每个开发者笔记本上都能跑的东西。

Joe Beda 在 2013 年夏天建议团队认真研究一下 Docker。这位 Google 首席工程师此前主导过 Google Compute Engine,是云计算一线的老兵。他和 Brendan Burns、产品经理 Craig McLuckie 三个人从那年秋天开始琢磨一件事,容器火了之后,谁来管这些容器?到了 2013 年底,三人得出了两个判断。容器编排器不仅必要,而且必然出现。以及,它必然是开源的。Burns 后来那句话讲得更直接,「如果没有 Docker 改变云开发者看待软件的方式,Kubernetes 根本不会存在。」

说服 Google 管理层花了几个月。McLuckie 写了一系列内部白皮书论证这件事的价值,而真正的关键支持来自 Eric Brewer,那位以 CAP 定理闻名的 Google 高管。他的理由很实际。Google 的业务正从「自己用云」转向「把云卖给别人」,一个云中立的编排器(同时能管 AWS、Rackspace 和私有云的机器)能带动 Google 的云业务。2014 年 6 月 10 日,Brewer 在旧金山 DockerCon 的舞台上公开了 Kubernetes,当天早晨代码刚推上 GitHub。第一个 commit 是 6 月 6 日推送的,250 个文件,47,501 行 Go、bash 和 markdown。

项目内部代号 Project 7,取自《星际迷航 航海家号》里的角色 Seven of Nine,一个脱离了 Borg 集体的个体。七辐船舵的 logo 由 Tim Hockin 设计,至今没变过。创始团队除了三驾马车,还有 Ville Aikas、Dawn Chen、Brian Grant、Daniel Smith 等人,其中 Hockin 和 Grant 都有 Borg/Omega 的一线背景。团队给这个代号定的调子,值得原样记下来。他们要造的是「脱离 Borg 的那个存在」。

第一版 Kubernetes 只有四项功能。副本管理、负载均衡与服务发现、健康检查与自愈、调度。就这四样。2014 年 9 月 9 日,项目打了第一个版本标签 v0.2。

十四个月到 1.0,把皇冠捐出去

从第一个 commit 到 1.0,只用了十四个月。

2015 年 7 月 21 日,波特兰 OSCON 大会,Kubernetes 1.0 发布。同场发生了一件比版本号重要得多的事。Google 与 Linux 基金会联合创建云原生计算基金会(CNCF),Kubernetes 作为种子技术捐赠进去,商标归基金会所有。

McLuckie 多年后回忆这个决策时说,他当时最担心的就是碎片化。如果 Kubernetes 是 Google 的产品,每家云厂商都会 fork 一个自己的版本,生态会分裂成战国。捐出去,是唯一能让 AWS、微软、Red Hat 都放心下场的方式。事后看,这是整个 Kubernetes 历史上承重最大的一根柱子。细节上这件事是分步完成的。CNCF 的项目历程报告把 2016 年 3 月 10 日 Kubernetes 正式成为 CNCF 首个托管项目列为里程碑,2018 年 3 月 6 日它又成为 CNCF 首个「毕业」项目。

早期的另两股力量也在这时进场。Red Hat 派出了 Clayton Coleman,CoreOS 贡献了 Kelsey Hightower,后来用《Kubernetes the Hard Way》教程成为这个领域最著名的布道者。1.0 发布后几个月,Google 推出 GKE(Google Container Engine),全球第一个 Kubernetes 托管服务。自研、捐赠、托管三步几乎无缝衔接。Google 三步连着走,把标准送给行业,把行业引到自家云上。

编排器战争,大多数人参战之前就结束了

今天回头看,容器编排器战争是云计算史上打得最快的大战役之一。快到大多数开发者还没决定学哪个,仗已经打完了。

2015 到 2016 年,战场上至少有五股势力。Kubernetes、Docker Swarm、Apache Mesos(配合 Marathon)、Cloud Foundry,加上各家云厂商自研的编排层。2016 年 3 月,Docker 官方博客发了一篇《Docker Swarm exceeds Kubernetes scale》,宣称 Swarm 在规模测试中超越了 Kubernetes。这篇博文后来成了那场战争最著名的注脚,因为它差不多是 Swarm 最后的高光时刻。Swarm 有过真正的优势。它内置在 Docker Engine 里,开发者一行命令就能启用,分发渠道碾压需要自己搭的 Kubernetes。

转折发生在 2017 年,而且是以「投降潮」的方式发生的。8 月,VMware/Pivotal 宣布倒向 Kubernetes。9 月,最嘴硬的 Mesosphere 也在 TechCrunch 的报道里松口,宣布在 DC/OS 中支持 Kubernetes。10 月 17 日,Docker 官方博客宣布企业版全面支持 Kubernetes,亲手把 Kubernetes 迎进了自家发布会的大门。同月,微软宣布 AKS。11 月,AWS 在 reInvent 大会上宣布 EKS(2018 年 6 月 5 日 GA)。从 Kubernetes 1.0 发布算起,战争主体只打了约二十八个月。

这一节真正该回答的问题是,为什么赢的是它?

我的判断是三条。第一,中立性。CNCF 这个不带厂商姓氏的家,让每家公司都可以贡献而不觉得在给对手打工。Swarm 是 Docker 的,Mesos 生态绑着 DC/OS 的商业版,Cloud Foundry 是 Pivotal 的,唯独 Kubernetes 谁的都不是。第二,API 优先的设计。CRD(自定义资源)让任何人都能在 Kubernetes 上长出自己的控制器,厂商接到的信号很明确,可以在上面造自己的东西。Swarm 和 Mesos 交出的是成品,Kubernetes 交出的是平台。第三,Google 的背书太重。Borg 论文 2015 年发表之后,「Google 用同款思想」这句话在采购会议上值千金。TechCrunch 2019 年那篇《How Kubernetes came to rule the world》里,McLuckie 自己都说 Kubernetes「把 Google 在云计算领域的存在感向前弹射了一大截」。

把内核做小,把生态做大

战争赢了,真正的护城河却是靠接下来几年的「拆自己」修出来的。

2016 年 12 月,容器运行时接口 CRI 发布,kubelet 从绑死 Docker 改成对接标准接口。2017 年 12 月 CSI 进入 alpha,存储系统从此以插件形式接入。2018 年 12 月 CoreDNS 成为默认 DNS。2019 年 1 月 CSI GA。2019 年 9 月,v1.16 里 CRD 正式 GA,自定义资源从实验特性变成平台的承重结构。这一系列动作的方向出奇一致。核心只保留调度和编排,运行时、存储、网络、扩展全部接口化。

「把内核做小」的直接回报是生态爆炸。贡献者构成的变化最能说明问题。CNCF 项目历程报告的数据显示,Google 加 Red Hat 两家公司的贡献占比从早期的 83% 一路降到 2023 年的 46%,参与公司从 731 家涨到 8,012 家,涨幅 996%。一个由两家巨头主导的项目,变成了一个没有哪家说得算的项目。这正是 McLuckie 当年担心的碎片化的反面。到 2018 年 3 月 Kubernetes 从 CNCF「毕业」时,项目已有 11,258 名贡献者、75,000 多次 commit,在 150 万个 GitHub 项目中提交数排第九、作者数和 issue 数排第二,仅次于 Linux 内核。Redmonk 当时的统计是,财富 100 强里 71% 在用容器,超过一半在用 Kubernetes。

这段时间还埋下了一个后来极其重要的伏笔。kubernetes.io 的月访问量从 180 万涨到 1,050 万,CKA 认证考出去 10 万张。知识的普及速度,和代码的普及速度一样惊人。一项技术成为「通用语」,靠的往往是共识,最优解反倒排在后面。而共识需要教材、认证、问答和踩坑帖的海洋。CNCF 生态(当时已有近 200 个项目)全部围绕 Kubernetes API 生长,网络效应就此焊死。

资本的收割季

技术标准一旦确立,资本立刻进场收割。2018 到 2020 年,Kubernetes 生态几乎把「谁值钱」标了个遍。

2018 年 10 月,IBM 宣布以 340 亿美元收购 Red Hat。外界普遍认为这笔云计算史上最大的收购,买的核心资产之一就是 OpenShift(Red Hat 在 2015 年把 OpenShift 3 推倒重来、重构于 Docker+Kubernetes 之上的企业发行版)。仅仅两周后,VMware 宣布收购 Heptio。那是 Beda 和 McLuckie 离开 Google 后于 2016 年 11 月创办的公司,B 轮融资 2,500 万美元、投后估值 1.17 亿美元,最终卖价未披露。Heptio 留下的遗产包括备份工具 Velero(原名 Ark)。2019 年 11 月,Mirantis 收购 Docker Enterprise。注意,被买走的是 Docker 公司的企业业务。那个在 2014 年把自己的发布会舞台借给 Kubernetes 发布的公司,自己先退场了。2020 年 7 月,SUSE 宣布收购 Rancher(12 月完成交割),收购时 Rancher 有 3.7 万个活跃团队、超过 1 亿次下载。

这股并购潮在后来看更像是中盘。2023 年 11 月,Broadcom 完成对 VMware 690 亿美元的收购,Tanzu 组合随之易主。2024 年 4 月,IBM 又以 64 亿美元收购 HashiCorp,The Next Platform 给那笔交易起的标题相当刻薄也相当准确,《IBM 买下 HashiCorp,为的是控制 Red Hat Kubernetes 的替代品》。于是 2026 年的今天出现了一个滑稽的图景。IBM 左手握着最大的 Kubernetes 发行版(OpenShift),右手握着 Kubernetes 最大的挑战者(Nomad),两边的头都归它。还有个更晚的注脚。2026 年 8 月,当年买下 Docker Enterprise 的 Mirantis 自己也被卖了,买家 IREN,一家比特币矿企转型而来的 AI 数据中心公司,对价是 1,260 万股加约 4,000 万美元现金。编排器战争的第一批玩家,就这样一个个退出了牌桌。

做减法的年代

2020 年之后,Kubernetes 进入了一个和前六年气质完全不同的阶段。不再加大的功能,开始拆。

先拆节奏。2021 年 4 月,社区通过 KEP 调整发布节奏,从 v1.22 起,每年发布版本从 4 个降到 3 个,周期约 15 周。官方博客说得很直白,贡献者倦怠是主因。一个每年发四版的项目,每个版本要 15 周,维护者是在用业余时间和时差拼出来的。

再拆 Docker。2020 年 12 月,v1.20 宣布弃用 dockershim,那层为了兼容 Docker 而存在的临时胶水。2022 年 5 月 3 日,v1.24 正式移除。这件事当年闹得很大,很多「Kubernetes 抛弃 Docker」的标题党满天飞,但回头看它是「内核做小」哲学的必然延伸。CRI 早已是标准,Docker 也早已在内部使用符合 CRI 的 containerd。Mirantis 和 Docker 以 cri-dockerd 的形式独立维护了这条兼容路径。有一个历史细节值得咀嚼。Kubernetes 出生在 Docker 的舞台上,八年后亲手剪断了和 Docker 的脐带。标准和实现分了家,实现的那家后来卖身,标准活成了基础设施。

最大的一次拆迁在 2024 年 8 月的 v1.31,树内(in-tree)云厂商代码全部移除。这是 Kubernetes 历史上规模最大的代码迁移,删掉约 150 万行代码,核心二进制体积缩小约 40%。AWS、GCP、Azure 的云集成从内核挪到了标准化的外部插件(CSI、CNI、Cloud Provider 接口)。十几年前「每朵云自己 fork 一个版本」的碎片化噩梦,最终是用接口化的方式根治的。

同期的 etcd 也走了同一条路。2020 年 11 月从 CNCF 毕业,成为独立成熟度项目。2023 年 11 月,因为维护者流失,Kubernetes 社区内部专门成立了 SIG-etcd。2025 年 3 月的 Spotlight 文章给它定了新目标,「成为独立于 Kubernetes 的基础设施方案,而不只是 Kubernetes 的一个组件」。这个方向后来反复出现。Kubernetes 生态越成功,越需要把自己的器官养大放生。

胜利的账单,安全与维护者

胜利不是免费的。这份账单里最沉的两页,一页写着「安全」,一页写着「维护者」。

安全页的第一笔是 2018 年 2 月的特斯拉劫持事件。RedLock 披露,攻击者找到特斯拉暴露在公网、没设密码的 Kubernetes 控制台,顺藤摸瓜拿到 AWS 凭证,进入 S3,植入加密货币挖矿程序,还专门用非标准端口直连矿池、借 Cloudflare 隐藏流量来躲检测。这件事的教育意义在于它一点都不高级。Kubernetes 没被攻破,是「Kubernetes 太新、大家还不会安全地用它」。同年 12 月,CVE-2018-1002105 披露,kube-apiserver 的代理请求处理缺陷让攻击者可以借 API server 的 TLS 凭证向后端发任意请求,CVSS 9.8,影响当时几乎所有版本,被广泛称为「K8s 迄今最严重的漏洞」。2021 年 8 月 NSA 发布《Kubernetes Hardening Guidance》(HN 上 635 分),一个美国安全机构给单个开源项目写加固指南,本身就是采用规模的证明。

真正沉重的是 2025 年的 IngressNightmare。2025 年 3 月 24 日,Kubernetes 官方博客披露 ingress-nginx 的五个 CVE,主漏洞 CVE-2025-1974 拿到 9.8 分。Pod 网络内任何一个工作负载,都能通过配置注入无凭证接管整个集群、窃取全部 Secret。由 Wiz 的四位研究员负责任披露,修复版火速发布。这件事的可怕之处在一个数字,ingress-nginx 部署在全球超过 40% 的 Kubernetes 集群上。而维护它的,是多年来只有一到两名、用业余时间干活的维护者。

于是有了那年 11 月的告别。2025 年 11 月 11 日,安全响应委员会的 Tabitha Sable 官宣 ingress-nginx 退役,官方承认维护者长期短缺、snippets 灵活性已成安全负债,best-effort 维持到 2026 年 3 月。2026 年 3 月 24 日,仓库正式归档只读,从此不再有任何修复。官方引导用户迁移到 Gateway API,配套的 Ingress2gateway 1.0 迁移工具在三天前发布。这不是孤例。2026 年 6 月 1 日,官方又宣布 Kubernetes Dashboard 项目归档、引导迁移到 Headlamp。同一时期,官方还在 5 月发文盘点「存量未修复的 CVE」,在 6 月发布了 AI 参与贡献的政策,禁止 AI 署名共同作者、要求人类可解释否则关闭 PR。

把这些事件排在一起看,模式很清楚。Kubernetes 把部署规模的饼做到了没人能想象的大小,但饼的某些层,最流行的入口控制器、最常用的仪表盘,长期押在极少数志愿者的肩上。胜利放大了一切,包括脆弱。

第二幕,AI 的操作系统

如果故事在 2022 年结束,Kubernetes 的历史定位大概是「容器时代的 Windows」。但 AI 把第二幕提前搬上了台。

伏笔埋得比多数人以为的早。2022 年 12 月的 v1.26 就完成了 Batch/Job API 的大改,官方后来明说这是为 AI/ML 负载铺路。同一版本里,动态资源分配(DRA)进入 alpha。「nvidia.com/gpu 设为 2」这种数数式的 GPU 分配模型,被一套借鉴 PV 架构的第三方驱动体系取代。2024 年 6 月的十周年博客把 AI 工作负载列为「从边缘变核心」的方向,成立了 Serving 工作组。

然后是三年长跑。DRA 在 v1.33 完成结构化参数重构,2025 年 8 月 27 日的 v1.34 里核心 GA,resource.k8s.io/v1 默认启用,官方原话是「stable,将长期存在于 Kubernetes 中」。同一年 12 月的 v1.35 更进一步。全新的 Workload API 与原生 gang scheduling(成组调度,要么全组就绪要么谁也别跑)进入 alpha,官方博客的表述带着点自我革命的意味,「尤其是在 AI 时代……早该让工作负载成为 kube-scheduler 的一等公民」。要知道 gang scheduling 此前一直靠 Volcano 这类外部调度器实现,Kubernetes 选择把它收进内核,等于承认 AI 训练的调度需求已经从「特殊场景」变成「新常态」。2026 年 8 月 26 日的 v1.37 把 gang scheduling 推到 beta,加上 workload 感知抢占、CompositePodGroup、HPA scale-to-zero(为 GPU 省钱的缩容到零)。单看版本号毫无波澜,连起来看,这是一套完整的「AI 数据中心调度内核」在三年内长了出来。

生态侧的动作更密。Kueue(Kubernetes 原生作业排队)2022 年 10 月立项,如今 v0.19、内置支持 RayJob、Kubeflow、JobSet,2026 年路线图上写着 DRA 集成和拓扑感知调度。Kubeflow 在 2026 年 8 月 17 日从 CNCF 毕业。这个 2017 年诞生于 Google 的项目累计 PyPI 下载 2.6 亿次,Bloomberg、NVIDIA、LinkedIn、Spotify 都在用。2025 年 6 月,Gateway API Inference Extension 发布,按推理队列长度和显存水位做负载均衡,官方给的 vLLM+H100 基准里 p90 延迟显著下降。2026 年 3 月 9 日,AI Gateway 工作组成立,要做令牌限流、提示注入防护、经出口网关安全访问 OpenAI/Vertex/Bedrock。十一天后,Agent Sandbox 项目在 SIG Apps 下启动,官方给它的注解很有画面感,「AI v2 正在吃掉 AI v1」,工作负载正从 50 毫秒的无状态调用变成常驻的、有状态的、会写代码的 Agent。

NVIDIA 的表态把这层关系钉死了,「Kubernetes 支撑着生产环境中绝大部分 AI 工作负载」。用户的证据同样硬。OpenAI 2021 年那篇《Scaling Kubernetes to 7,500 Nodes》至今是社区经典,合著者在 HN 确认他们用 PyTorch+NCCL+MPI、训练 Pod 直连 Pod IP 通信。CoreWeave 干脆把自己定位成「Kubernetes 原生的 AI 云」,2026 年拿下了 Gartner Cloud AI Infrastructure 魔力象限的 Visionary。2025 年 11 月 11 日,CNCF 在亚特兰大 KubeCon 上发布 Kubernetes AI 一致性认证 v1.0,第一批通过评审的名单几乎是一份美式云厂商点名册,EKS、GKE、Azure、CoreWeave、Oracle、Red Hat。两个月后,CNCF 2025 年度调查(2026 年 1 月 20 日发布)的报告标题直接写成,《Kubernetes 被确立为 AI 的事实操作系统》。容器用户中 82% 在生产运行 Kubernetes(2023 年是 66%),托管生成式 AI 模型的组织里 66% 用 Kubernetes 跑推理。2026 年 9 月 7 日,KubeCon China 在上海开幕,和 OpenInfra Summit、PyTorch Conference 三会同场,主题两个字,Scale AI。

但第二幕里也有一句刺耳的台词。2026 年 5 月,Google 把 GKE Agent Sandbox 的搭档 Agent Substrate 开源了,一个绕过 Kubernetes 控制面、直接调度 Agent 的轻量层,宣称 30 倍超售率、亚秒级激活,GKE 沙箱五个月长了 16 倍。Google 自己的架构文档里写着两句话。「没有任何聪明的办法能让标准控制面装下那么多对象」。「赢得了容器十年的平台,对 AI Agent 来说用错了控制平面」。The New Stack 2026 年 7 月那篇分析把这层窗户纸捅破了。亲手养大 Kubernetes 的公司,第一个公开说它的心脏可能不适合下一个时代。这个瞬间的分量,怎么估计都不过分。

把十二年压进一张表,大概是这样。

阶段时间核心特征核心矛盾
前史2003 到 2013Borg 在 Google 内部运转十年金鹅要不要放出来
闪电战2014 到 201714 个月到 1.0,28 个月打赢编排器战争标准之争,谁的是中立的
内核化2016 到 2019CRI/CSI/CRD 接口化,生态爆炸大内核还是小内核
收割季2018 到 2020资本并购潮(IBM/VMware/SUSE/Mirantis)生态价值归谁
减法年代2020 到 2022发布降速,dockershim 移除,代码瘦身维护者倦怠
AI 二幕2023 到 2026DRA/Gang/Kueue 内核化,AI 一致性认证控制面还能装下多少对象

每个阶段的矛盾都解决得不错,除了最后一个。它是现在进行时。

战争结束后的四条战线

编排器战争的终局没有悬念到需要争论的程度。CNCF 2025 年度调查(2026 年 1 月发布,386 家终端组织样本)给出三个数字。98% 的组织采用了云原生技术。容器用户中 82% 在生产环境运行 Kubernetes,2023 年这个数字是 66%,两年涨了 16 个百分点。报告原文里有一句罕见的、以基金会身份下的判词,「Kubernetes 赢了,因为它到达了标准阶段,并通过生态、知识和工具形成了替代品无法匹敌的网络效应」。还有一句更妙的。报告把 Kubernetes 描述为 boring(无聊),并说这是「最高的赞美」。Gartner 的预测(被 CNCF 项目历程报告引用)是到 2027 年,超过 90% 运行容器化应用的组织将在生产运行 Kubernetes。

所以横向分析的重点不再是「谁的市场份额大」,而是战争结束之后,竞争去了哪里。我的答案是四条新战线。退场者的遗产、还站着的挑战者、云厂商的隐藏层、以及小团队的反向回流。

退场者档案

Apache Mesos 是一场用了十年才办完的葬礼。Mesos 是战场资历最老的选手,2013 年 6 月就成了 Apache 顶级项目,Twitter 规模的生产验证、Bernstein 们推崇的学术血统,底子不差。它的死亡过程安静得近乎残忍,全部有邮件列表为证。2022 年全年只有 3 名贡献者。2023 年 3 月,PMC 成员 Qian Zhang 在邮件列表发起「Mesos 的下一步」讨论,原话是「过去几年社区一直不活跃,去年只有 3 个贡献者……也许我们得把它移进 Attic 了」。此后 dev 邮件列表 2023 年全年只有约 24 封邮件,2024 年约 29 封。2025 年 7 月 22 日,正式投票启动,「带着一些遗憾」。8 月 20 日 ASF 董事会决议退役。10 月,移入 Attic 归档完成。社区 fork 了一个叫 clusterd 的项目接着活。Mesos 死于什么?我的判断是死于「没有商业引擎也没有中立的家」。它起源于学术,寄生于 DC/OS 的商业模式,商业模式被 Kubernetes 摧毁后,没有一家公司有理由继续养它。

Docker Swarm 死于发行渠道的幻觉。Swarm 的故事更适合用仓库数据讲。经典版 Swarm(classicswarm)2020 年 6 月最后一次提交后归档,5,728 颗星。Swarm 的内核 swarmkit 至今 3,648 颗星,是 Kubernetes(126,309 颗星)的三十五分之一。最能说明问题的是版本断代。swarmkit 在 2016 年 7 月发布 v1.12.0 之后,下一个正式版 v2.0.0 直到 2025 年 6 月才发布,中间隔了九年。九年里它没有彻底死掉,是被折叠进了 Docker Engine 的发布节奏里,失去了自己作为一个项目的身份。有意思的是,Swarm 至今有一批死忠。2024 年 11 月 HN 上「为什么 K8s 赢了 Docker Swarm」的讨论里,用户 nik736 的发言被顶得很高,「我们在生产上用几千台主机跑 Swarm,非常可靠……K8s 只是有所有的热度,而且,没人因为选 K8s 被开除。」最后半句是那句 IBM 大机时代的老谚语「没人因为买 IBM 被开除」的转世,它精准解释了 2017 年之后企业选型的集体心理。

Cloud Foundry 没死,但换了个活法,长在 Kubernetes 上面。CF 是 PaaS 时代的老贵族,官网至今活跃,2026 年 9 月还在办 Summit,营销文案直接开火,「别把时间花在给 Kubernetes 和 Istio 写云基础设施配置上,专注你的代码」,核心卖点仍是那句 cf push。但它第一代上 K8s 的方案 cf-for-k8s 已于 2022 年 8 月归档,现行方案 Korifi 把 CF 的应用 API 跑在 Kubernetes 之上,409 颗星、持续活跃。一个曾经的编排层竞争者,最终变成了 Kubernetes 之上的一个开发者体验层。这大概是败者在这场战争里能得到的最好结局。

最后的挑战者,HashiCorp Nomad

横向战场上还站着一位认真打仗的对手,Nomad。

论出身它不输。HashiCorp 出品,单一二进制文件,天然支持容器、裸二进制、虚拟机和 Java JAR 的混合负载,不需要一整套 K8s 网络和存储生态就能跑起来。2024 年官网存档的营销语毫不掩饰目标,「学 Nomad 比 Kubernetes 快」。客户名单里有德意志银行。游戏服务器平台 Rivet 用 Nomad 加 Rust 管理机队。2022 年 8 月那个著名的 HN 帖「你们离开 Kubernetes 了吗」里,Koyeb 官方账号亲自下场,「我们也从 Kubernetes 迁到了 Nomad……K8s 的复杂性和安全问题让我们很快碰到了大限制。」目前 16,852 颗星,2026 年 4 月发布了 2.0 版本,还在正经迭代。

但 Nomad 的天花板在生态。HN 用户 whinvik 那段话说得最透,「它简单得多,但没人在 Nomad 之上构建任何东西。要 DAG 工作流,有跑在 K8s 上的 Argo Workflows,Nomad 没有。要数据处理,有 Spark on K8s,Nomad 没有。」反向的迁徙也真实存在。SeatGeek 2024 年 12 月把 GitLab CI runner 从 Nomad 迁去了 Kubernetes。Nomad 自己的命运也随东家颠簸。2023 年 8 月 10 日,HashiCorp 把它从 MPL 2.0 改成 BSL 源码许可,社区当即分叉出了 OpenBao、OpenTofu 们(针对的是 Vault 和 Terraform,但寒蝉效应覆盖全线)。2024 年 4 月 IBM 以 64 亿美元收购 HashiCorp,Nomad 的 LICENSE 文件里 Licensor 一栏如今写着 International Business Machines Corporation。

我的判断是,Nomad 是「小政府主义」的活标本,给那些跑混合负载、明确拒绝交「K8s 税」的团队一个体面的选择。它会长期健康地活着,身份是生活方式的选择。尤其当它同时属于 IBM,一家同时拥有最大 K8s 发行版的公司,它在组织层面就已经放弃了十字军,变成了投资组合里的一张对冲牌。

云厂商把 Kubernetes 藏起来了

第二战线更有意思。云厂商没跟 Kubernetes 打,它们把 Kubernetes 藏起来了。

先说唯一真正的例外,AWS ECS。ECS 是 AWS 自研的编排系统,官方定位是「全托管的容器编排服务……没有基础设施管理的复杂性」。什么时候选它?2023 年 6 月那篇流传很广的文章是个好样本,作者解释自己为什么把最近这个客户推荐给了 ECS。一家 AI 初创公司,十几个微服务,团队没有专职 DevOps,「K8s 即使是托管形态也不合适」,最后选了 ECS on EC2。

但另外几个主流 serverless 容器服务,藏的其实就是 Kubernetes。Azure Container Apps 的官方 FAQ 写得坦白,「是否提供对底层 Kubernetes API 的直接访问?不提供。」它的报错信息会泄漏底细,有用户看到的错误是「ImagePullBackOff on legion」,一个标准的 Kubernetes 状态名。Google Cloud Run 建立在 Knative 的 API 规范上,而 Knative serving 仓库 README 的第一句自我介绍就是「builds on Kubernetes」,虽然 Google 现行文档里已经把 Kubernetes 字样基本擦干净了。GKE Autopilot 和 EKS Fargate 则是同一方向的托管化。Kubernetes 在,但你看不见它。

这条战线的规模常被低估。Datadog 2023 年的容器报告(基于数万客户、24 亿个容器)给出过数字,46% 的容器组织在使用 serverless 容器(ECS Fargate、Cloud Run、Container Apps、Autopilot 等),两年前这个比例是 31%。在 Google Cloud 上,这个比例高达 68%。此后 Datadog 没再更新过分项数据,但趋势方向没有争议。

怎么理解这条战线?我认为它是 Kubernetes 胜利的终极形态。它赢了之后开始消失。就像没有人「使用」TCP/IP 一样,越来越多的开发者在不自知地使用 Kubernetes。按 100 毫秒计费的 Cloud Run(vCPU 每秒 0.000018 美元)、不用写一行 YAML 的 Container Apps,把编排器的复杂性折旧进了云账单。对 Kubernetes 项目本身,这是喜忧参半的事。喜在 API 成为事实标准,连竞品都要兼容它的概念(CF 的 Korifi、Nomad 生态的 K8s 兼容层都在做)。忧在标准的最有价值部分(托管控制面)被云厂商收走,社区和云厂商之间的张力会长期存在。一致性认证是目前的胶水。仅 v1.32 一个版本,就有 128 个通过认证的产品,这是防止「藏在各朵云里的 K8s」各自漂移的唯一机制。

反向回流,Compose、Coolify 与 PaaS 复活潮

第四条战线在光谱的另一端。规模越小,对 Kubernetes 的反噬越强。

证据链相当完整。2026 年 1 月,一篇《Kubernetes 是杀鸡用牛刀,我们迁去 Docker Compose 省了 60 小时》在技术社区流传。2024 年 11 月,Gitpod 那篇《We're Leaving Kubernetes》在 HN 拿了 517 分,他们要的是每个工作空间独立、随开随关的控制面,Kubernetes 的常驻集群模型跟这个需求八字不合。同月 Ben Houston 的《我不需要 Kubernetes,你大概率也不需要》拿了 354 分,他自述在 K8s 上浪费了「超过 100 万美元的 DevOps 时间和 Google Cloud 账单」,最终迁去 Cloud Run。2025 年 5 月,一篇《用 systemd 替代 Kubernetes》拿了 436 分。HN 用户 paulgb 的总结最扎心,「我们越是优化,用到的 Kubernetes 核心功能就越少,为我们交的复杂性税换回的价值就越少。」

需求端的导火索是 Heroku 2022 年 8 月砍掉免费层,直接点燃了一轮 PaaS 创业潮。Render(计算从每月 7 美元起)、Railway(每月 5 美元起、按秒计费)、Fly.io 各领风骚,文档站里全都没有「Migrate from Heroku」专区。更凶猛的是开源自托管这股。Coolify 是一个开源的 Vercel/Heroku/Railway 替代品,GitHub 已经 61,350 颗星,是 Nomad 的 3.6 倍、接近 Kubernetes 的一半,self-hosted 全功能免费,云版每月 5 美元,付费客户 3,641 家。它的 HN 热度轨迹(2022 年 158 分、2024 年 172 分、2025 年 382 分)画出来就是一条需求曲线。比 Kubernetes 还大一岁的 Dokku(2013 年创建,MIT 协议,「你见过的最小的 PaaS」)也有 32,123 颗星。中文社区是同一个故事的方言版。V2EX 上关于 k8s 的主题有 5,461 条,高频句式是「k8s 水太深不一定把握得住」「小规模没必要,那么多组件那么多细节」「docker-compose 不香吗」。而折中方案的胜利最能说明问题。轻量发行版 k3s(单二进制、不到 100MB、默认 SQLite)33,874 颗星,超过了它的母公司 Rancher 本体的 25,888 颗。想用 K8s 的人,比想用「全家桶」的人多。

怎么定性这条战线?我的判断是市场分层。Kubernetes 的复杂性地板(哪怕在托管形态下)高于大量团队需求的天花板,没有运维团队、个位数服务器、CRUD 应用。这些团队从来就没成为过 Kubernetes 的用户,2015 年和 2026 年都一样。只是 2018 到 2022 年那段「无 K8s 不云原生」的狂热期,行业假装他们应该是。Coolify 们的崛起是市场对那段狂热的纠偏。真正值得 Kubernetes 害怕的信号只有一个。当「离开 K8s」从失败者的借口,变成了 Gitpod 这类精明团队的理性选择时,说明它的复杂性地板在抬高。

平台工程是共生

还有一股力量常被误认为竞品,平台工程。

Backstage 是 Spotify 捐给 CNCF 的开发者门户,34,313 颗星,ADOPTERS 文件里 290 家组织自报采用,名单里有美国航空、Expedia、Zalando、Peloton。ArgoCD 24,070 颗星、Flux 8,381 颗星(GitOps 双雄)、Crossplane 12,013 颗星(2025 年 11 月毕业)。整个「内部开发者平台」产业都建立在一个前提上。底层是 Kubernetes,复杂性由平台团队封装,开发者看到的是金色的开发者门户。CNCF 2025 年调查里 Backstage 的生产使用率还是个位数(但评估中的比例很高),CNCF 年报里那个典型案例,某组织用 Backstage+K8s+Argo 支撑 441 个业务应用、62 个集群,就是这个模式的样板间。

这是寄生还是共生?我的判断是共生,而且是最健康的那种。平台工程没有消灭 Kubernetes 的复杂性,它是把复杂性转移给了一小撮自愿的专业人士(平台团队),换取大多数开发者不接触复杂性。这条路径和 Kubernetes 的接口化哲学同源。真正的竞争不在这一层,在下一层,谁来做平台团队的平台(Backstage 们自己正在内战)。

「复杂性税」对阵「通用语」

把社区的声音汇总起来,能听到一场持续了八年、至今没有结束的辩论。

反方观点的经典阵容。2019 年 3 月《Maybe You Don't Need Kubernetes》在 HN 拿了 500 分。2020 年 3 月「让我们用 Kubernetes 吧,现在你有八个问题了」719 分。2020 年 6 月 Coinbase 讲为什么他们的技术栈里没有 Kubernetes,778 分,评论区里那句「K8s 赢得太彻底,把其他方案全杀死了。Swarm 死了,Nomad 看不出社区支持在哪,Mesos 像在靠呼吸机活着」被反复引用。2022 年 6 月「说说你的 Kubernetes 噩梦」帖子里有平台工程师承认「我自己的工作就是干这个的,我仍然认为它和它的工具链没必要这么复杂」,有用户吐槽第一次部署要写「至少 150 行 YAML」。成本侧也有数据。CNCF 2023 年 12 月的 FinOps 微调查显示 49% 的受访者表示 Kubernetes 推高了云支出。Stack Overflow 2025 年开发者调查里,Kubernetes 的 admired 率 58%,低于 Docker 的 63.6%。用过的人里,不喜欢它的比例实实在在。

但正方在 2026 年拿出了也许是最重的一份证词。一位面试了约 12 家公司的工程师 6 月写了篇《面试教我的 Kubernetes 常识》,结论让反方沉默,「现在真的所有公司都在 Kubernetes 上了」,包括只有两个服务的十人创业公司。「VM 加 systemd 那派人已经从招聘启事里基本消失了,serverless 留在了小众位置,K8s 就是赢了」。他转述的 CTO 们的理由是组织性的。部署的统一性、GitOps 满足合规审计、「它现在是一种通用语,知识在 YAML 里,不在某个人的脑子里」。他给这个现象起了个准确的名字,「CTO 们在理性地用技术复杂性换取组织收益。」

耐人寻味的是官方调查口径的变化。2026 年的调查里,「复杂性」只被 34% 的组织列为阻碍,排在「开发团队文化转变」(47%)、「培训缺乏」(36%)、「安全」(36%)之后。翻译一下。骂 Kubernetes 太复杂的声音一点没少,但行业已经骂完了、认了、并且开始组织自己适应它。这个状态有个专有名词,标准。

三个决定今天位置的历史决策

把纵轴和横轴叠起来看,今天这个 82% 生产采用率、把竞争者全部送去博物馆或收编为生态位的格局,可以被三个历史决策完整解释。

第一根柱子落在 2015 年的捐赠。商标和种子代码捐给新成立的 CNCF,起因是 McLuckie 对碎片化的恐惧。这个动作的直接效果是中立性,而中立性在 2017 年的投降潮里兑成了现金。AWS 没有任何心理障碍地做了 EKS,微软做了 AKS,Docker 自己都宣布支持 Kubernetes。对比竞品的时间线就明白了。Swarm 绑在 Docker 一家的产品战略上,公司一衰落项目就断代九年。Mesos 没有商业引擎也没有中立的孵化器,最后连葬礼都办得冷清。Nomad 绑在 HashiCorp 一家的许可证上,东家改 BSL、卖 IBM,项目命运跟着颠簸。只有 Kubernetes 把风险摊到了 8,000 多家公司头上。这是制度设计。而它在容器编排这个品类里只成功了一次。

第二根柱子是 API 当产品卖,内核当减法做。CRI/CSI/CNI/CRD 这套接口化动作(2016 到 2019)造就的是生态位优势。任何厂商都能在 Kubernetes 上长东西,所以任何厂商都没有动力另起炉灶。横向分析里那批「隐藏 Kubernetes」的服务(Cloud Run、Container Apps、Autopilot)是这套哲学的最新红利,连「不用 Kubernetes」的产品都在实现它的概念。而 2020 年之后的减法年代(拆 dockershim、拆树内云代码、放生 etcd)保证了内核还养得动。一个十二岁的项目至今每年发三个版本、单个版本周期能有 1,700 多人参与,靠的是核心足够小。

第三根柱子是 Borg 的教训直接免掉了十年弯路。Pod、Label、声明式 API、控制循环,这些从 Borg 带出来的设计在十二年后依然是教科书,横向看没有一个竞品的抽象层比它更耐用。它还解释了 AI 二幕的速度。DRA 从 alpha 到 GA 只用了不到三年(2022-12 到 2025-08),gang scheduling 从 alpha 到 beta 只用了一年。一个把「可扩展资源」内化为世界观(CRD)的项目,把 GPU 也当成一种「自定义资源」来重做调度模型,路径依赖这次帮了大忙。

每个优势都有出处,每个包袱也有

纵轴同样解释了横轴上每一个软肋的来历。

复杂性税的根子在出身。Kubernetes 天生是「为 Google 规模设计的分布式系统」,四项功能的婴儿长出了獠牙。150 行起步的 YAML、一整套要单独招聘的技能栈(CKA 认证考出去十几万张,既是繁荣的证明也是税负的证明)。Gitpod 和 Ben Houston 们的出走,怨的是它做对了太多「别人的需求」。

YAML 和包管理的历史债在社区里已经有了明确的账单。Matt Duggan 那篇《Kubernetes 2.0 会长什么样》(HN 259 分)列了四条。配置该从 YAML 换成 HCL(约 30% 的集群其实已经用 Terraform 管理了)。etcd 应该可替换(kine 之类的项目存在,理由很残酷,「Kubernetes 是 etcd 仅存的大客户」)。Helm 之外需要真正的包管理器(Go 模板的调试体验和依赖解析是灾难)。网络该默认 IPv6(一个 /20 的 4,096 个地址,40 个节点每节点 30 个 Pod 就快用完了)。四条没有一条被官方排期,因为「defaults are the most powerful force in technology」。默认值已经锁死十二年,改默认值比造新系统难。这是当年「好决策」变成今天包袱的最纯样本。声明式 YAML 让一切皆可 GitOps,也让人机都痛苦了十二年。

维护者的账单前文已经算过,这里只补一句纵轴视角。ingress-nginx 悲剧(40% 的集群、一两名维护者、9.8 分 CVE、退役归档)是胜利模式的系统性副产品。部署规模以百倍速增长,志愿者维护的公共层以人力速增长。Dashboard 归档、SIG-etcd 被迫成立,同一个模式。谁能修复它,谁就修复了开源基础设施时代最大的隐形成本。修不了,它就是下一场 9.8 分 CVE 的温床。

还有一个刚被点名的新包袱,控制面的每对象成本。声明式调和循环(desired state + controller 不断对齐)是 Kubernetes 赢得容器十年的引擎,但每个对象都有内存和 CPU 的单价。Google 用 Agent Substrate 的架构文档亲口承认,「没有任何聪明的办法能让标准控制面装下那么多对象。」Agent 时代如果对象数量翻一百倍,这个引擎的单价就成了天花板。这是设计哲学级的约束,补丁解决不了。

三个剧本

最可能的是新 Linux 剧本。Kubernetes 变成不可见的管道,竞争上移(Agent 基座、开发者门户),用户下沉(Coolify 们守住小团队),中间的 Kubernetes 像 Linux 一样无处不在且无人讨论。证据已经在案。「boring 是最高的赞美」写进了基金会报告。一致性认证把 128 个产品摁在同一个 API 上。每个云都把它藏进托管层。Gartner 说 2027 年 90% 以上容器化组织生产运行 K8s。在这个剧本里,Kubernetes 停止成为新闻。这是基础设施的成人礼。Linux 2010 年前后经历过一模一样的阶段,然后靠云和安卓长出了第二曲线。Kubernetes 的第二曲线候选已经站在门口,AI 推理与训练调度(DRA、Kueue、gang scheduling、AI 一致性认证、58% 的组织已在 K8s 上跑 AI)。

最危险的是控制面饱和剧本。Agent 工作负载把对象数量推高两个数量级,标准控制面撑不住,一个平行的轻量控制面(Agent Substrate 路线,30 倍超售、亚秒激活)赢下 Agent 层,K8s 退守到训练节点和传统微服务,地位从「操作系统」降为「机房管理程序」。两个放大器会让它更糟。志愿者公共层的倦怠连环爆(ingress-nginx 只是第一个)和存量 CVE 的安全债。这个剧本的观测指标很明确。如果 Agent 沙箱的分配 API 标准化发生在 kubernetes.io 之外、且被两家以上云厂商采纳,警报就该响了。需要说清的是,这是我的推测。目前所有的证据(包括 Google 自己)都表明 K8s 至少会保住「底层机器层」的位置,真正的赌注只在「Agent 控制面」这一层。

最乐观的是 AI 的内核剧本。DRA+gang scheduling+Kueue 三年长跑完成,Kubeflow 毕业,AI 一致性认证铺开,CoreWeave 们证明裸金属+K8s 的 AI 云能打穿传统 VM 云,Kubernetes 成为 AI 数据中心的 POSIX。这个剧本的旗手换成了新一代既得利益者。Steering Committee 2025 年当选名单里,Rita Zhang 的所属公司一栏已经从微软换成了 CoreWeave。AI 云公司进入了 Kubernetes 的治理层,就像当年 Red Hat 进入一样,意味着新一轮「把自己的命运押上去」。KubeCon China 2026 与 PyTorch 大会同场办展、主题就叫 Scale AI,生态在用脚投票。

写在最后

最后回到那个名字。

十二年前,几个从 Google 出来的工程师给项目起代号 Project 7,取自那个脱离了 Borg 集体的角色,Seven of Nine。他们想造的是一个让公司逃离集体绑架的工具。十二年后,这个项目成了人类历史上第二大集体。88,474 名贡献者、8,000 多家公司、44 个国家,一场大会有 13,500 人到场,连它的中文社区讨论帖都有 5,461 页。一个以「脱离集体」命名的项目,长成了软件史上最大的集体之一。这个反讽属于基础设施的宿命。想成为地基,就得先成为公地。

而那个给它起名的人,GitHub 签名栏如今写着「Semi-retired. Did some stuff.」(半退休,做过点事。)系统长出了自己的生命,大于任何创造者,这也是基础设施的宿命。Brendan Burns 还在微软做 Corporate VP。Craig McLuckie 2021 年离开 VMware 后去了哪里,公开信息里已经查不到了。创造者们陆续离场,捐出去的东西不再属于任何人,于是属于所有人。

2014 年 6 月 10 日,Kubernetes 在 DockerCon 的舞台上发布。十二年后回看,那场发布会的主办方,Docker 公司,企业业务 2019 年就卖了,接盘的 Mirantis 也在 2026 年 8 月转卖给了一家比特币矿企。舞台上借出去的那三十分钟,是 Docker 公司历史上回报率最高的一笔资产,也是它自己没有能力持有的。标准比公司活得久。这个行当里所有看似激烈的战争,最后打的是谁舍得把最值钱的东西先给出去。

Kubernetes 十二年前给出去了一次,赢了一切。它的下一个十二年,取决于它还舍不舍得、来不来得及,再给一次。

主要来源

以下来源均在 2026 年 9 月 3 日访问验证。

Kubernetes 官方博客与文档方面,十周年数据见 10 Years of Kubernetes,早期史见 Burns 写的 The History of Kubernetes,Borg 前史见 Borg: The Predecessor to Kubernetes。版本时间线在 kubernetes.io/releases。发布节奏调整、dockershim 移除、DRA GA、v1.35 / v1.37、IngressNightmare、ingress-nginx 退役、AI Gateway 工作组、etcd 独立化、推理感知负载均衡、AI 贡献政策,都在官方博客上有原文。

CNCF 侧,2025 年度调查 给出 82% 生产采用和「AI 事实操作系统」的判词,项目历程报告 记录了贡献者从 731 家公司涨到 8,012 家。另有首个毕业项目公告、AI 一致性认证 v1.0、Kubeflow 毕业、FinOps 微调查。

GitHub 仓库数据是 2026 年 9 月 3 日实测。kubernetes/kubernetes 126k★,hashicorp/nomad 16.9k★,moby/swarmkit 3.6k★,coollabsio/coolify 61.4k★,dokku/dokku 32.1k★,backstage/backstage 34.3k★,k3s-io/k3s 33.9k★。

媒体与研究包括 Google 的 Borg 论文、Wired 的 DockerCon 2014 报道、TechCrunch 的创始人访谈和 Heptio 收购、The New Stack 对 Agent Substrate 的分析、The Next Platform 对 IBM 收购 HashiCorp 的评论、Datadog 容器报告、Apache Mesos Attic 页面、Tesla 劫持事件报道、Gitpod 离开 Kubernetes 的博文、Matt Duggan 的 Kubernetes 2.0 设想、面试教我的 Kubernetes 常识、OpenAI 的 7,500 节点文章,以及 Hacker News 与 V2EX 上的相关讨论。

评论互动

© 2026 王若风的技术博客 · Powered by Astro