如果说Linux是有史以来最成功的开源软件项目,那么同属于Linux 基金会,并在云原生计算基金会(CNCF)庇护下的开源容器编排项目Kubernetes(K8s),则是开源历史上发展速度最快的开源项目之一。
致力于使云原生计算具有普遍性和可持续性,并能够在公有云、私有云和混合云的动态环境中构建和运行可扩展应用,CNCF倡导的容器、微服务等云原生开源项目得到了全球广大开发者和用户的支持。
正像CNCF的报告所言,K8s成功的秘诀是最终用户驱动Kubernetes,成就了容器开源生态的众多参与方。
#01
开源生态,容器项目Kubernetes的灵魂
每一个成功的开源项目背后,都有一套成功的治理模式,也都形成一套开源生态体系,并惠及最终用户。
当然,开源生态以开源项目为中心构建,依托开源社区协作,形成不断迭代的软件、硬件等开源代码,让多方受益。
中国信通院的一份报告认为,开源项目的生态系统在微观层面依托四大角色进行有效协作,涉及开源贡献者、开源使用者、开源运营者、开源服务者多重角色,企业和个人均可参与。
在宏观上,包含开源治理、开源运营、开源商业布局等多个环节,满足开源规则要求,依托代码托管平台等基础设施构建。
对于开源贡献者和开源服务者,开源是实现商业布局的一种途径,可将开源布局与商业产品布局进行有效结合,推动用户使用,在应用层面有效降低边界成本,扩大用户使用范围。
对于容器Kubernetes来说,其开源生态也是异常丰富,并呈现以下特点:
首先,贡献代码的企业和个人逐渐增多,保证了代码的多样性。
Kubernetes最初由Google建造被开源,并于2016年3月10日提供给云原生计算基金会(CNCF)维护,为容器应用的部署、维护和扩展提供了机制。
Kubernetes是一个容器编排系统,用于管理多个主机的应用程序,是目前使用最广泛的容器编排平台,通常被称为“云端 Linux”。
CNCF公布的2020年报告认为,对于开源使用者,开源模式推动产品快速迭代,激发产品创新,丰富产业侧供应体系,建立用户需求联动机制。
截止到2019年7月为止,Kubernetes共有35k contributor(贡献者) ,做了 110 万次贡献,有超过2000家公司参与代码贡献与开源。
数据显示,目前在参与贡献的公司中,排名前两位的是Google和Red Hat。在Kubernetes加入 CNCF之前,两家公司所做贡献占比83%,目前占比仅为35%。
Kubernetes启动以来公司累计贡献量
资源来源:CNCF年度报告
同时,贡献者的地理区域不断扩大,分布呈现多样性。Kubernetes的贡献者来自几十个不同的国家,随着时间的不同,贡献的地理多样性也在不断扩大。在项目生命期中,11个国家平均有10个或10个以上贡献者,17个国家平均贡献者超过5个。
贡献者按国家和时间维度占比的变化
资源来源:CNCF年度报告
其次,Kubernetes让使用者即最终用户 "穿越鸿沟"。
开源软件项目成功的另一个关键指标是企业能否采用该项目,建立可行的商业生态系统,并帮助最终用户在生产中采用 Kubernetes。
实践证明,目前Kubernetes是应用最多的容器编排技术,早已成为容器技术事实上的全球标准,并帮助企业的应用项目跨越了容器应用“使用困难”等的巨大鸿沟,实现互操作。
据Sysdig的报告,至少75%的用户使用Kubernetes。CNCF的报告,84%的用户在生产环境中使用了Kubernetes。据开源分析公司Redmonk报告,Kubernetes正被超过71%的财富100强企业用于容器编排。
在过去18个月中,CNCF的"最终用户"成员数量增加了两倍,从33个增加到99个。最终用户成员的增长表明,Kubernetes拥有更广泛的生产采用和主流接受度。
为了表彰这一进展,CNCF于 2018年3月让Kubernetes"毕业",这也是第一个从CNCF毕业的项目。
第三,作为Kubernetes开源项目的运营者,CNCF也成为目前最为活跃的开源组织。
云原生计算基金会(CNCF)承载着全球信息技术基础设施的关键组件——云原生技术的众多开源项目。云原生技术使组织能够在公有云、私有云和混合云的动态环境中构建和运行可扩展应用。其运营的容器、服务网格、微服务、声明性API等开源项目都体现了云原生方法。
CNCF是非营利性Linux 基金会的一部分,汇集了世界顶级开发人员、最终用户和供应商,并运行了最大的开源开发人员会议。
CNCF通过稳定的会员增长、令人难以置信的虚拟活动出席率、强大的最终用户参与度和广泛的行业评论,实现了巨大的社区参与。目前,CNCF 主办了80多个项目活动,来自177个国家的近1000个组织的11万多名贡献者参加了活动。
没有全球会员社区的支持,CNCF就不会成为今天。会员帮助CNCF和Linux基金会提供中立的治理、强大的IP管理、生态系统建设、培训、活动、开发人员营销、丰富参与社区的工具等。
CNCF 生态系统在供应商和最终用户会员中持续增长,使CNCF成为有史以来最成功的开源项目之一。
在2020年,CNCF增加了150多个新成员,比2019年增加了28%以上。CNCF现在的20个白金会员包括一些世界上最大的公共云和企业软件公司及最终用户。
第四,开源服务者依靠Kubernetes建立自己的容器产品与服务,服务广大的最终用户,并获得巨大的商业利益。
人们已经看到了Kubernetes的初始增长曲线,包括谷歌、AWS、微软、阿里云、腾讯云,以及VMware和IBM等拥有覆盖所有云规模的托管平台,正在为满足企业客户的混合多云需求而在Kubernetes进行投资。
更多的工具与服务正在茁壮成长,包括VMware Tanzu Kubernetes Grid、Rancher Kubernetes Engine、Mirantis Kubernetes Engine、Charmed Kubernetes等。
随着Kubernetes的大规模采用以及围绕它蓬勃发展的云原生生态系统的成长,Kubernetes项目得到了CNCF的引导和管理,确保了众多Kubernetes供应商的一致性。
CNCF的Kubernetes认证计划,以定义并促进Kubernetes分销的一致体验、软件合规程序等,确保每个供应商版本的 Kubernetes都支持所需的API。
该计划于2017年11月启动,当年就有32家企业的商业版本符合要求。而到了2019年7月,已有超过90家企业通过了认证,几乎所有的公共云和大型软件企业公司都加入了合规认证计划。
#02
围绕K8S的收购兼并从来就没有断过
正因为巨大商业利益的驱使,围绕容器技术的收购、兼并、投资,就没有断过,其中,Kubernetes技术与能力成为焦点,并成为Kubernetes开源生态发展中一道风景。
第一,企业级Linux操作系统巨头红帽和SUSE纷纷通过收购容器技术公司,扩大自己的势力范围,成为Kubernetes并购中最有看头的一出大戏。
SUSE作为企业级Linux操作系统巨头,Rancher作为企业级K8s容器管理平台的引领者,两者在业务发展上互有交集。2020年7月,SUSE与Rancher Labs共同宣布,双方已就SUSE收购Rancher事宜达成协议。
2020年12月1 日,SUSE宣布正式完成对Rancher Labs的收购。Rancher因其Kubernetes发行版RancherOS而受欢迎。此外,Rancher还创建了一些成功的开源项目,如K3s,用于边缘场景的轻量级Kubernetes发行版,以及Longhorn,针对Kubernetes的块存储解决方案。
业界评价说,此次收购将使SUSE成为企业级Linux、容器、Kubernetes、边缘计算领域的首选开源公司。二者结合,将通过最新的AI技术以及从边缘到数据中心再到云的容器化工作负载的无缝部署,实现“计算无处不在”。
但是作为K8s容器管理平台,被收购后的Rancher中立性能否得到保持,仍然被业界关注。以前Rancher对开源社区的平等承诺得到了包括RKE、K3s、微软云AKS、亚马逊EKS、谷歌云GKE、阿里云ACK、腾讯云TKE和百度智能云CCE在内的所有主流认证Kubernetes发行版和操作系统的支持。由于没有供应商锁定以及计算场景的限制,企业可以在其业务范围内进行边缘到核心再到云的无限创新。
2021年1月,企业级Linux操作系统另一个巨头红帽公司宣布将收购Kubernetes原生安全平台StackRox。
StackRox聚焦于Kubernetes安全性。不同于以容器为中心的第一代容器安全平台,StackRox通过推出Kubernetes原生安全平台而实现了差异化。通过该平台,企业可以使用与Kubernetes相同的声明性方法,更轻松地控制和执行策略,在扩展应用的同时仍保持必要的安全性。
通过此次收购,红帽将进一步增强其在安全方面的领先地位,借助StackRox的互补功能,红帽能够以更简单且一致的方式增强其开放混合云产品组合的集成安全性。通过StackRox,红帽将能够通过扩展和完善Kubernetes原生控制措施,并将安全设计前移到容器构建和CI/CD阶段,以转变确保云原生工作负载安全性的方式,为整个IT堆栈以及整个生命周期实现更高的安全性提供统一的解决方案。
第二,传统企业正在通过收购,增强其在云计算特别是云原生和容器技术方面的实力。
思科是全球最大的企业网络技术提供商之一。通过1亿美元收购了PortShift,让公司拥有Kubernetes原生安全平台,满足公司用户网络安全需求。
PortShift是一个Kubernetes原生安全平台。它运行无代理,可以扫描容器镜像、pod和命名空间以查找漏洞。它只允许将经过验证的镜像运送到生产中。通过使用策略,PortShift使组织能够对部署进行审核和强制执行合规性。
作为虚拟机的旗舰供应商VMware一直努力在容器和Kubernetes时代保持竞争力,方法就是收购。
VMware收购一家由Kubernetes联合创始人创建的初创公司Heptio、一种云原生安全解决方案供应商Carbon Black、Kubernetes安全平台Octarine,以及在Cloud Foundry开源项目中与VMware有着良好的关系Pivotal Software等。
第三,容器和Kubernetes的收购已经从软件不断延伸到硬件和服务等领域。
一家为K8s处理数据存储和管理的初创公司Portworx,就被 Pure Storage斥资3.7亿美元收购了。Pure专注于全闪存阵列存储,非常适合于需要高性能存储且延迟非常低的数据密集型业务。Pure需要以多样化支持Kubernetes的存储需求。
云数据管理备份解决方案提供商Veeam Software(卫盟软件)2020年以1.5亿美元收购Kubernetes备份和灾难恢复的市场领导者Kasten。
借助Kasten K10数据管理平台,Veeam能够为企业运营团队提供易于使用、可扩展且安全的系统,从而实现Kubernetes 备份和应用移动性,以及操作的简便性。
#03
紧跟Kubernetes脉动,创造更大的市场
与其他新兴技术相比,开源仅5年多,Kubernetes就成为了全球云原生技术的主要驱动力,其未来发展趋向依然成为业界关注的焦点。
Kubernetes正在编排一切。众所周知,在行业内Kubernetes一直被认为是Docker容器的编排工具。但是随着云原生技术的发展,Kubernetes已经成为了云原生领域事实上的“操作系统(OS)”,Kubernetes正在编排一切。
操作系统一般是链接硬件和软件的,在云计算环境下,底层虚拟化类资源就相当于硬件设施,云原生应用或者迁移到云上的应用相当于传统软件,那Kubernetes在云计算环境下就相当于承载着操作系统的作用。
当然,Kubernetes在底层计算资源、网络资源等管理能力上相对较弱。近年来大家也都在Kubernetes技术社区不断对这些方面进行增强和改进。随着K8s对底层资源的管理等能力持续加大,Kubernetes有望成为下一代虚拟化架构/云原生架构的操作系统。
2020年12月Kubernetes在1.20版本中提到,将废弃 Docker作为容器运行时,意味着Kubernetes团队对k8s有更多的期待,当然除了Docker之外的其他容器如contianerd、runc等新生项目也在kubernetes环境中发光发热。Kubernetes+容器技术依然是云计算环境下的新一代基础设施平台。
其次,Kubernetes 正在将多云的承诺变成现实。专家表示,Kubernetes通过成为现代基础架构的最低公分母,消除了工作负载互操作性和可移植性的障碍。
超大规模云提供商正在利用 Kubernetes 作为工具,在混合云和多云环境中运行其托管服务。
2020年,谷歌宣布在亚马逊网络服务上运行BigQuery,这是谷歌云上的热门数据仓库服务。
Microsoft在公共预览版中启用了Azure Arc 的数据服务,将SQL Server和PostgreSQL超规模带到运行Kubernetes群集的本地和其他云环境中。
在re:Invent 2020 活动上,亚马逊宣布EKS Anywhere,使在混合和多云环境中运行相同的Kubernetes分布和相关组件成为可能。
再次,边缘Kubernetes不断成长。Kubernetes正在转变为用于运行边缘基础架构和工作负载的首选平台。工业物联网 (IIoT)和人工智能与5G相结合的兴起正在推动 Kubernetes 在边缘的采用。
来自Rancher的K3s,来自规范的Micro k8s和Mirantis的K0s是一些针对边缘优化的Kubernetes分布。随着3节点群集的占用空间减少,红帽的 OpenShift 现在可用于边缘。谷歌将GKE引擎可以在一个单一的裸机独立运行。
部署在边缘的数以万计的Kubernetes群集由集中控制平台如 Anthos、Azure Arc、Rancher、Tanzu和KubeOne等管理,提供部署在高度分布式环境中的Kubernetes和云本机工作负载的可管理性。
开源已经成为开源服务者发展的一个商业模式,也成为开源生态的重要力量。Kubernetes的成功成就了众多生态参与方,最终也成就了云原生的用户。