Kubernetes VS Linux:昨天与今天

2020/06/30 08:13
阅读数 49
本文译自:
https://thenewstack.io/then-and-now-comparing-kubernetes-to-linux/

一个项目刚“开始”; 而另一个是增量和主流化的 IT 采用项目。 两个项目相距数十年,相距遥远。 但是每个都受到社区精神之火的熏陶。 Kubernetes 是一个源于编排抽象 的应用程序的开源项目,它可以从拥有数十年历史的操作系统内核 Linux 中学到什么? 大师级的称号可以传给早熟的新贵 Kubernetes 吗?

有人认为,Linux 是开源概念的起点。由于 Unix 的成本和 Minix(唯一可免费获得的 UNIX 兼容操作系统)的局限性而感到沮丧,芬兰的一位年轻开发人员亲自处理了一切。Linus Torvalds 于 1991 年向一小批 MINIX 用户发布了操作系统内核。1994 年发布了 1.0 版,并在 1998 年 Oracle 宣布了对其 SQL 数据库的 Linux 支持。一切都在发生改变。

随着人们对 Linux 的认识和采用的增加,主流的技术公司不得不注意到它。这些注意力中的一部分是出于压榨 Linux 的目的,而另一些则争先恐后地促进 Linux 的继续采用。随着时间的流逝,悲剧逐渐消失,Linux 逐渐被人们接受。当然不是曾经的不和谐的避雷针。

2000 年,Linux 在开放软件开发实验室(OSDL)中找到了家,这是一个非营利性组织,负责加速 Linux 在企业中的部署。毫不奇怪,其中一些公司受到 Linux 的普及和迅速采用的震惊,也为 OSDL 提供了资金。在 2007 年,OSDL 与 Free Standards Group 合并成立了 Linux Foundation。该基金会为 Linux 内核开发和持续支持提供了一个供应商中立的主页。(现在,LF 促进了 Linux 以外的各种各样的技术-区块链,安全性,甚至电影业也向 LF 寻求与供应商无关的技术。)最后,来自 1400 多家不同公司的大约 25,000 个人开发者为内核做出了贡献。如今,内核包含了 2700 万行代码,每 9 到 10 周发布一次稳定的版本。及其支持技术C libraries、工具链、数据库、Web 服务器、桌面环境等等有数百种。

就采用而言,Linux的流行仍在继续。根据Linux Foundation的统计,Linux操作系统现在运行90%的公共云的工作负载,拥有62%的嵌入式市场份额和99%的超级计算机市场份额。全球超过82%的智能手机和十大公共云中的九个都依赖Linux。如果有任何软件“吞噬了整个世界”,那就是Linux。
(来源:2017年内核开发状况报告
https://www.linuxfoundation.org/publications/2017/10/2017-state-of-linux-kernel-development/)

但是,尽管变化是不变的,并且Linux继续蓬勃发展,但其创始人Linus Torvalds追求的目标更为谦虚:“我想让它变得无聊。”
(https://www.zdnet.com/article/linus-torvalds-im-not-a-programmer-anymore/?utm_source=thenewstack&utm_medium=website)

再说到Kubernetes。Google于2014年由Google作为GitHub上的开源项目发布,此后迅速在云原生领域引起了关注。到2015年7月,版本1.0可用了,Cloud Native Computing Foundation(CNCF)接管了该项目。Kubernetes很快就成为了一种令人震惊的、颠覆性的开放源代码技术,与Linux不同。有什么不同?变更和采用的速度,包括基础广泛的公司支持。

Kubernetes首次亮相仅五年多一点,如今它的社区和项目速度可与29岁的Linux相媲美(来源:CNCF Journey Report)。如下图所示,Linux、React和Kubernetes处于顶部和右侧位置,较大的泡泡周长代表社区规模。所有这些都表明了它的高速发展,并证明了一个多元化,参与性和充满活力的社区。对于许多人来说,Kubernetes已成为“ 云的Linux ”。


与Linux一样,Kubernetes之外还存在着一个广泛的生态系统,可支持开源技术。Kubernetes周围的生态包括来自2,000家不同公司的1,200多个项目。VMware对这一生态系统的贡献包括Harbor、Sonobuoy、Velero、Contour和Antrea以及在其他项目(例如Cluster API,TUF和Istio)中的无数贡献。这些项目通过解决独特的用例、挑战或功能差距来增强Kubernetes。这些项目的开发和采用进一步推动了一个充满活力的社区,使定制和独特的组合能够满足特定的生产要求。

在Kubernetes上,社区的作用不可低估:今天,它拥有超过35,000个贡献者社区。通过建立和维护社区规范,承诺可预测的发布节奏,实行开放,透明的沟通以及确保项目负责人的健康流水线,Kubernetes项目遵守了构成采用者社区可以依赖的强大核心的属性。

但是,在所有这些疯狂的变革和采用中,人们都在寻求完全不同的东西。Kubernetes联合创始人,现在是VMware高管的Craig McLuckie表示:“如果我们正确地完成工作,那么未来五年,人们将不再谈论Kubernetes。不是因为它消失了,而是因为它变成了标准化的无聊的衬底,在上面支撑着新的创新浪潮。” 听起来很陌生。

这一切的启示是什么?不止一个:
  • 社区事务。这是维持项目并有助于缓和极端观点和批评的原因。分担和减轻了负担。这两个项目都依赖一个核心社区来维持和管理变更。对于Linux,它是内核维护者和内核贡献者社区。对于Kubernetes,这是SIG和核心贡献者社区的集合。
  • 留意共享的"北极星"。了解将您束缚在一起的问题和目的。当那颗星星开始变暗时,与社区联系。他们会告诉你的。
  • 知道什么是核心,哪些地方可以解决独特的需求,用例或技术路线。紧紧抓住一切只会减慢进度和采用。Linux内核只有一个,但是它的许多应用程序以及基于它的发行版—根据Wikipedia的介绍,有700多个Linux发行版。同样,建立在Kubernetes核心之上的一致性分布也在不断增加。1200多个支持和实现各种实现的项目使Kubernetes变得更加完整。这种集中和分布的双重模型既可以实现稳定性,又可以实现变化。
  • 竞争对手可以是合作者;好主意和伟大的领导者可以来自任何地方。开放源代码可以让创新如闪电般蓬勃发展,而变革则可以民主化。无论身处何方,无论公司隶属与否,任何人都可以成为社区的一部分。


后台回复“加群”,带你进入高手如云交流群


推荐阅读:

Linux萌新和老司机都必备命令查询工具

如何系统学习 C++ 语言

8 个问题彻底搞透 DNS 协议

一张图带你循序渐进掌握性能优化问题

三张图彻底搞懂iptables和netfilter

救命,Linux正在吃掉我的内存!

别再说你不懂Linux内存管理了

强烈安利的几款画图工具

故障排查:K8s中Pod无法正常解析域名

网络排错大讲解~

如何诊断 Linux 服务器的性能?

用了HTTPS就安全了吗?

HTTP/3 原理实战

Linux 下10个帮助你调试的命令

OVS 和 OVS-DPDK 对比

微软出品的最新K8S学习指南3.0下载



喜欢,就给我一个“在看”



10T 技术资源大放送!包括但不限于:云计算、虚拟化、微服务、大数据、网络、Linux、Docker、Kubernetes、Python、Go、C/C++、Shell、PPT 等。在公众号内回复「1024,即可免费获取!!

本文分享自微信公众号 - Linux云计算网络(cloud_dev)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部