为什么OpenStack和Kubernetes一起会更好

OpenStack和Kubernetes的配对被比作活力二人组。

不过,为什么需要这些强大的、社区驱动的平台一起提供计算和应用资源?

在最近的OpenStack Days会议上,来自AppFormix的Sumeet Singh在谈话环节中与谷歌Kubernetes产品经理Craig McLuckie和CoreOS首席技术官Brandon Phillips讨论,如果一个公司使用Kubernetes,为什么他们会需要OpenStack?

McLuckie的回答是:现在并不适合直接用云原生计算。从应用模式上看,企业是混合的,人们需要使用要访问的那一类型的基础设施和运行工作负载的方式。

“企业需要一套熟悉的基础设施基本类型,” McLuckie说,“这在OpenStack中很好地得到体现。它也在逐步过渡到更多云原生计算,而这正是Kubernetes所能提供的。”

Phillips说,一些公司已经投资了不同于OpenStack的虚拟机(VM)计算,而且以后也将继续是VM用户。当团队开始要求更多的云原生系统,将像Kubernetes的系统混合进来更有意义。

McLuckie记得像eBay这样的在OpenStack上投入巨资的公司开始寻找如何把容器和云原生计算等技术整合到传统的基础设施中,以得到一种新的服务环境。

每一个生态系统里都有问题。McLuckie认为,处理OpenStack非常丰富的服务组合的运维问题很难,这使得OpenStack 出新版本、更新和管理都很难。而Kubernetes等云原生计算系统,利用简单的逻辑计算底层可以轻松部署服务。

在效率上,更传统的、单片的、基于虚拟机的调度比更敏捷的动态系统要低得多。 Kubernetes等技术可以给传统的生态系统带来更高的效率。

另一方面,McLuckie说,自己使用Kubernetes的客户要求扩展,将会使更多的如块和对象存储等传统服务集成在云原生生态系统中。OpenStack具有非常强大的服务集,可以很自然地补充这些技术以及与现有的物理基础设施很好地集成。

“Kubernetes解决了一大堆问题,提供了一个窗口,让人们获得一个新的关于部署、管理和调度应用程序的思考方式,” McLuckie说。“OpenStack提供了一个非常强大的能组合到一起的基础设施基本类型集。”

Phillips表示同意,指出他公司的客户正在寻找方法来更一致地管理部署OpenStack的方式。他的团队在寻找将OpenStack作为复杂的容器内应用来管理的方式。现在,他们以类似的方式使用Kubernetes,希望能在部署、更新和管理等这些OpenStack有困难的方面为运维者提供帮助。

McLuckie说,Kubernetes的采用远比他以往用过的的其他软件更快,而且它是最广泛使用的容器编排技术。在某种意义上,Phillips说,OpenStack的成功带来了更大的、Kubernetes可以茁壮成长的市场。

然而,社区驱动的Kubernetes和OpenStack项目将极大地从协同发展获益。OpenStack提供了所需的基础设施,如对象存储和重点认证,都被纳入Kubernetes项目中。

“有很多机会来混合和匹配部件,”Phillips说。“现在企业有大型OpenStack应用程序部署,想利用存储的数据,而且要把容器化应用带入生态系统。”McLuckie说,基础的整合工作需要做,这将有助于优化两个项目之间较强的协同效应。但这并不是社区需要做的全部。

McLuckie说,一些接下来需要做的工作围绕着一些更高级的概念,比如如何描述、构成和分发新一代的企业应用程序。

“这是一个惊人的将社区组织到一起的机会。做云计算的本地工作以及更传统的基础设施,如OpenStack社区,”他说。

社区需要聚集在一起,以帮助建立分布式系统并部署到这些环境中的软件供应商,有一组共同的标准,如何实际描述、封装和分发他们的应用程序。

还有一个问题是OpenStack和Kubernetes深度整合的潜力,McLuckie说。想法是继续推进容器技术,同时保留传统基础设施和基于虚拟机的模型的最佳属性,然后把这些在同一时间带到两个社区。

要从最基本的层面推动这种合作,McLuckie说。OpenStack基金会和原Cloud-Native Computing基金会已经存在重叠的社区,那为什么不创建跨越这两个基金会的工作组来帮助技术的“交叉授粉”呢?

“希望随着时间的推移,我们可以拆掉这两个基金会之间存在的界限,并把它们协调起来。”他说。