大战结束,77%市场份额,Kubernetes让云巨头、软硬件IT大厂其靠拢

三分天下,分久必合,从Mesosphere和Docker相继宣布支持Kubernetes开始,持续2年多的容器编排之战似乎开始走向尾声,各厂商全力支持以及77%市场份额更加突显其结果。今年10月刚落幕的欧洲DockerCon大会中,容器技术龙头Docker公司CTO Solomon Hykes忽然宣布,下一版Docker,将同时支持自家调度引擎Swarm和来自Google的调度平台Kubernetes,台下观众响起热烈掌声,因为这是一个容器圈等待已久的消息。

DockerCon的Solomon Hykes技术独白,向来是每年容器圈技术风向球的重头戏,但在这场欧洲DockerCon中,Docker却得找来Kubernetes两名共同创办人站台。三人就在台上合影,Solomon Hykes居中,左边是微软Azure团队杰出工程师Brendan Burns,右边则是Google云端部门首席软件工程师Tim Hockin。

Solomon Hykes这个宣示的威力,就好比微软CEO Satya Nadella那句「微软爱Linux」般震撼,一手掀起容器热潮的Docker,也不得不正视Kubernetes的影响力,就算是Docker掌握了主流容器格式,也得拥抱Kubernetes,提供原生支持,才得以在竞争激烈的容器生态圈中站稳。而Solomon Hykes这个宣布,也等于揭开了容器生态系的新序幕,Kubernetes成了众人拥戴支持的新主角,连Docker都不例外。

不过,另一款容器管理工具Rancher CEO梁胜感叹:「DockerCon与会者,多半期待Docker提出更具前瞻性的潜在商机。」尤其,这次欧洲DockerCon主要要求,聚焦在传统应用程序现代化(Modernize Traditional Applications,MTA)项目,做为Docker生态系的伙伴,梁胜观察,想要利用Docker这门技术进行创新的难度日渐提高。他举例,过去Docker发表的产品,无论是Docker Swarm、Docker Compose、Docker网络及储存套件都相当创新,但是,从这次欧洲大会来看,「现今容器技术的新发想,许多都是来自Kubernetes或CNCF生态系。」梁胜一席话,也道出了Docker公司近年面临的创新瓶颈。

其实,早在去6月DockerCon就可看出Docker困境的些许端倪,Solomon Hykes当时一句话令人玩味:「现在没有人关心容器技术了,应用程序才要紧」,那时Solomon Hykes早就察觉开发者的目光,已不再只是Docker,而是容器如何支撑企业运作的应用程序,才是真正重要的关键。

集群管理是容器技术的新挑战

在Docker热潮逐渐冷却后,容器技术生态系要开始踏入下个重要阶段:如何靠调度工具管理庞大的容器基础架构集群。归根究柢,容器只是打包应用程序的工具,企业关心的焦点,仍旧要回归靠它所执行的应用程序。

在2016年我们采访前Docker Swarm项目负责人陈东洛,他就曾透露:「集群管理是未来容器技术的挑战。」调度工具之所是容器进入企业环境的门坎,原因在于,如果没有调度工具,Docker容器集群就像失去指挥家的交响乐团,开始出现乐手走音、赶拍的异常状况。

两年前,容器调度工具的战局,基本可以划分为三大势力,包含Swarm、Kubernetes以及Mesos,各技术都有其拥护者,像是总用户数突破3亿人的Twitter,或是苹果语音助理Siri就是使用Mesos,作为其系统后端集群的管理工具。

但是,三分天下的竞争态势,至今已经逐渐明朗化,前身为Google自己内部的容器调度工具Borg的Kubernetes,在2014年开源推出之后,挟Google响亮的招牌、庞大的社群,Kubernetes开始出线,甚至拔得头筹,登上容器调度的宝座。

维护Kubernetes项目的CNCF基金会,在今年6月时统计,目前使用Kubernetes作为容器管理工具的企业占比达77%,排名第二的Swarm则远远落后,只有21%,第三名则是13%的Mesos。

Kubernetes从单纯开发工具逐渐向商业软件开发

从Kubernetes各版本演进中,也可以看出它的功能,逐渐从以容器开发资源调度为主的平台,踏入企业商用需求的范畴。在去年上半年推出的1.2及1.3版中,其亮点主要是扩大其管理集群规模,从1,000个节点扩充至超过2,000节点,使企业更能善用容器技术的轻量、快速部署特性,运行更庞大的运算集群。去年秋天的1.4版则是开始加强Kubernetes的易用性,只需输入两个指令便可以部署一套容器集群。

去年12月发布的1.5版,则是一个关键突破版本。Kubernetes瞄准了混搭容器平台,居然可以同步支持Linux容器及Windows容器,倚重微软环境又想拥抱容器的企业也能获得解套,不用再各自管两套环境,也降低了这些企业进入容器应用的门坎。Kubernetes跨入更广大商用市场的企图心更为明显。

到了今年发布的1.61.7版,除了让集群规模扩大至5,000节点,Kubernetes也新增了角色权限访问机制(RBAC,Role-Based AccessControl),限定用户权力。在1.7版中,Kubernetes官方更以「里程碑」形容,无论在安全、储存,或是系统的扩充性都有所进步,例如,在此版本开始支持数据加密,更在Runtime增加了一个整合层(Aggregation Layer),让开发者可以自行串接第三方API,扩大容器生态系。到了最近一期的1.8版,则是继续强化此工具的既有功能,像是先前是Beta功能的RBAC机制,此版已经变成正式功能。

支持Kubernetes已成各IT大厂必备战略

Kubernetes的出现,让许多原本着手打造自己容器调度工具的IT厂商,不得不放弃原本工具,转而向它靠拢。像是红帽在PaaS平台OpenShift原先是使用自己开发的容器调度工具,但是碍于Kubernetes的声望,便断然舍弃并且在3.0版后开始支持Kubernetes;容器技术厂商CoreOS在今年2月时也宣布,容器操作系统Container Linux已经要停止支持自家调度工具Fleet,开发重心全部移转至Kubernetes;提供公有云服务的IBM原本是以Swarm为基础发展调度技术,同样,甲骨文原先也用自己技术提供调度服务,但是在今年起,双双都宣布要正式支持Kubernetes。

不只软件大厂拥抱,硬件巨头Dell、思科也都加入CNCF,就是看上Kubernetes,要让自己的产品也能整合新的容器管理调度平台。首先是Dell在今年3月成为白金会员,也与社群密切合作,想要加强Kubernetes对于外部储存设备的支持;思科除了是CNCF白金会员,近日还与Google联盟,让思科私有云环境可以介接Google公有云环境,并且使用Kubernetes。

甚至,看准容器基础架构市场的商软和各家云,大力开始将Kubernetes纳入自己的容器布局。像是提供公有云服务的微软、Google、IBM及甲骨文,微软在Azure上推出容器服务AKS,除了能在公云执行调度任务,也可以靠Azure Stack在私有环境执行容器调度;Google的容器引擎GKE,除了能较快速支持新版Kubernetes,还能GCP上的大数据分析工具、无服务器应用结合;IBM则将Kubernetes视作次世代的PaaS平台,同步在公有、私有容器云平台支持;过去步调较缓慢的甲骨文,在今年也即急起直追,锁定容器原生应用程序开发平台。

而布局较早的红帽,则是以PaaS平台OpenShift为核心,将其定位为企业级Kubernetes平台。而虚拟化龙头VMware则在今年VMworld上跨出了关键一步,正式押宝Kubernetes,与Pivotal及Google连手推出Pivotal容器服务,与自己的SDDC架构结合。

面对Kubernetes、容器技术的热潮,台湾VMware副总经理吴子强表示:「根据VMware CEO PatGelsinger的策略,现阶段所有的产品线都必须与容器靠拢」,像是搭配NSX、vSAN等虚拟化解决方案,加强Kubernetes环境的自动化程度。

而台湾红帽资深解决方案架构师彭信忠表示,现今Kubernetes的功能已趋于成熟,不再只是开发者使用的工具,除了网络新创公司之外,国外也有金融业、汽车业者开始导入;台湾IBM云事业部资深云架构师吴志忠则观察,Kubernetes不能只能锁定容器调度功能,还必须与其他生态系统介接,通过这个调度引擎,执行大数据分析、深度学习等运算任务。

Solomon Hykes当时这句「现在没有人关心容器技术了,应用程序才要紧」点出了大规模应用集群需求的崛起,但,Kubernetes取代了Docker,成了容器技术的领头羊,容器技术发展重心已经开始转移,软硬件从业者的支持,也带动以应用系统为中心的容器商业软件成熟,企业IT架构也多了一个更成熟的商用新平台,新的容器竞争时代,正式揭开序幕。