🤯 一看就头晕…CNCF Landscape 到底为什么这么复杂?

大家好!各位探索云原生世界的伙伴们。🖐️ 你们有没有看过 CNCF Landscape(全景图)这张地图?第一次看到它时的感觉,可能大多数人都差不多。

“哇…这是真的吗?我需要了解所有这些吗?” 😱

https://landscape.cncf.io/

看着那张密密麻麻地镶嵌着数千个图标的地图,简直让人窒息。它就像是“寻找威利”的地狱难度版本。今天,我们将深入剖析 CNCF(云原生计算基金会)项目为何如此杂乱无章、令人眼花缭乱,以及隐藏在其中的5个必然原因。🔍


1. “没有标准答案,只有选择” (Vendor Neutrality) 🏛️

苹果(Apple)或微软(MS)的生态系统非常简洁。因为他们会规定“请使用这个”。然而,CNCF 的理念却截然相反。

  • 防止特定企业垄断:CNCF 存在的最大理由是防止“厂商锁定(Lock-in)”。即阻止特定企业(例如:AWS、Google)垄断技术。
  • 尊重多样性:它不是说“运行容器只有一种方法!”,而是说“有 A 方法,也有 B 方法。请选择适合你情况的。”
  • 结果:因此,具有相同功能的工具会同时存在多个。(例如:Service Mesh 中 Istio、Linkerd、Cilium 共存的原因)

2. 云原生这个“问题”本身就过于庞大 🐘

云原生不仅仅是“启动一个服务器”的概念。它需要用软件解决传统本地环境中所有的事情。

随着问题被细分,类别呈爆炸式增长:

  • 🗄️ 需要数据库 -> Database 类别
  • 👀 需要查看服务器状态? -> Observability(监控、日志)
  • 🛡️ 需要阻止黑客? -> Security
  • 📡 需要连接通信? -> Networking
  • 💾 需要存储数据? -> Storage

每个领域都需要数十个项目,因此整个地图必然会变得庞大。

3. 无限竞争系统:适者生存的丛林 🦁

CNCF Landscape 不是一个和平的花园,而是一个激烈的“角斗场”。

  • 欢迎重复:CNCF 不会阻止类似项目进入。相反,它鼓励竞争。因为它相信通过竞争,更好的技术才能生存下来。
  • 进化的生态系统:早期 Docker 是王者,但现在 Kubernetes 成了王者,对吧?如果 CNCF 早期就规定“只用 Docker!”,那么就不会有今天的发展。这张复杂的地图,正是激烈的“技术进化现场”。⚔️

4. 等级制度:从幼儿园到大学生都聚集在一起 🚦

地图复杂的最大原因是,“经过验证的项目”和“实验性项目”都绘制在同一张画布上。CNCF 将项目的成熟度(Maturity)分为 3 个阶段。

  1. Sandbox(沙盒) 🏖️:“刚刚提出想法。正在实验中。”(数百个以上,随时可能消失)
  2. Incubating(孵化中) 🐣:“已经有一定用户,正在稳定化。”(成长中)
  3. Graduated(毕业) 🎓:“像 Kubernetes、Prometheus 一样,是全球通用的标准。”(可以放心使用)

由于试图将所有这些阶段都呈现在一张图中,导致许多尚未经过验证的“新芽”也显示出来,使其看起来更加复杂。

5. 初创公司的“圈地”营销战 🚩

这是一个稍微现实(商业化)的原因。

  • 进入地图是资历:当一家 IT 初创公司开发出新工具时,将自己的标志放在 CNCF Landscape 上会产生巨大的宣传效果。因为他们可以说“我们也是 CNCF 成员!”
  • 投资者的目光:风险投资(VC)有时也会通过查看这张地图来决定投资。因此,无数公司都竭尽全力,哪怕只是在地图的一角也要放上自己的标志。结果,地图变得越来越拥挤。📈

📝 结论:把这张地图看作“地图”,而不是“菜单”。

CNCF Landscape 令人眼花缭乱,正是云世界如此动态且快速变化的证据。

💡 小贴士:不要看着那张复杂的图就想着“我必须学完所有”。那是不可能的。

  1. 首先查看 Graduated(毕业)项目。(核心项目没几个。)
  2. 只放大你需要的类别(例如:CI/CD)来看。
  3. 其余的就“哦,原来还有这些啊”然后跳过。

如果你把这种复杂性看作不是“混乱”,而是我们被赋予的无限“可能性”和“自由”,那么可能就不会那么头晕了!😄



Comments

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注