什么样的软件层会最终统治未来?

云计算
似乎企业可能会继续在他们需要的地方使用虚拟化,并在其顶层放置容器,或是默认在裸机上设置容器。正如苹果Siri案例所显示的那样,这么做的原因归根结底还是因为资金和性能。不过,即便是裸机的调度也需要像OpenStack这样的系统。无论是Mesos添加自己的调度系统,还是borg作为 OpenStack的一部分,我们仍需拭目以待。

什么样的软件层会最终控制全球公司正逐步建立起来的计算、存储和网络架构?它们是连服务器虚拟化巨头VMware都接受的OpenStack?亦或是由加州大学伯克利分校的AMPLab开发的Mesos应用调度器?还是受到谷歌Borg和Omega任务调度器启发而开发的Kubernetes?

[[146542]]

这些问题的答案可能并非我们想象得那么简单,但是情况还是非常有意思的。因为OpenStack在数据中心中正在受到广泛的关注,而Mesos和 Kubernetes虽然还相对处于早期阶段,但同样也吸引到了软件堆栈更高层级的关注。这样一来,数据中心的谈话重心就从基础设施虚拟化和编排转向了集群中服务器节点上软件的混存。这些集群使用了容器来提升利用率,大幅简化了应用部署与维护的流程。

数据中心控制权之争:OpenStack能否成为轴心?

我们很自然地就会想到OpenStack最终会成为所有控制功能的重心,至少对于那些将开源软件作为首选的数据中心控制功能来说应该是这样。

微软和VMware拥有庞大的虚拟化服务器安装基础,并且拥有大量可以创建和管理云的管理工具,例如带Azure Pack插件的微软系统中心,VMware拥有vSphere和vCloud扩展组件。目前它们都努力在虚拟化基础设施顶层采用Docker容器格式,以便与Linux、Kubernetes和Docker容器混合方案展开竞争。

在OpenStack出现之时,容器技术已经存在了很长一段时间。但是,随着虚拟机和服务器整合像风暴一样席卷数据中心之后,它们一度黯然失色了。

在NASA和Rackspace于五年前推出了OpenStack项目时,他们的最高目标是为横跨100多万个服务器节点和最大6000万台虚拟机的大型云创建一个中央控制器。这是一项宏伟的事业。虽然规模对于集群来说目前是一个重要的问题,但是许多公司希望裸机数量与虚拟机数量一样多,前者更适合于某些工作负载。行业和终端用户公司的实际顾虑已经改变了OpenStack项目的优先顺序,OpenStack已经成为虚拟计算、存储和网络编排的重心。与最初的计划相比,这是一个更为困难的任务。

容器、容器编排工具和OpenStack:谁能统治未来应用集群?

软件容器出现后,对OpenStack的需求未必会减少。Mesos和Kubernetes调度器的出现,以及容器化应用开发与部署理念的出现,成为了人们新的关注点。人们很自然地想知道:哪种控制器最终将统治未来的应用集群。

Mirantis 的联合创始人兼首席营销官Boris Renski对The Platform网站表示:“目前有两大阵营公开地为争夺控制权展开竞争。OpenStack所处理的事务与Mesos所处理的事务之间存在着重叠,不过公平地说重叠部分很小。Kubernetes支持者和Docker支持者都宣称他们正在解决的问题都非常重要,并且棘手。除此之外其他的所有问题都是次要问题,他们会随着时间的推移让他们的堆栈做OpenStack能够做的事情。OpenStack支持者的做法则截然相反,他们认为容器已经出现了很长一段时间,容器编排在技术上是一个很容易解决的问题。OpenStack正在解决物理基础设施和虚拟机的编排问题,未来我们将可以加入到Kubernetes 中,在我们的堆栈中加入容器编排。”

Magnum连接两个世界:一些不必要的层正在消失

目前,人们正在通过Magnum对两个世界进行整合。Magnum在OpenStack和谷歌的Kubernetes、DockerSwarm、 CoreOSTectonic以及其他的容器管理系统之间提供了连接能力。Magnum项目于2014年11月启动,其代码还没有为黄金时间准备就绪,因此那些希望将OpenStack与Mesos或Kubernetes整合在一起的人必须要手动干预才行。他们使用OpenStack配置裸机或虚拟机,然后再使用容器管理系统。准确地说,计算能力是被如何编排的目前还不清楚。

Mesosphere主管营销的高级副总裁Matt Trifiro表示,严格地说,如果我们想运行Mesos集群控制器,无论在顶层有没有Kubernetes容器管理,我们都不需要像OpenStack 这样的云控制器。Mesosphere是Apache Mesos项目背后的商业实体,主要负责为该控制器提供商业支持。

Trifiro 解释说:“企业中的现实是,企业对人员和技术进行投资,他们为企业提供证明,他们有投资和惰性。我们有许多客户正在使用VMware或者 OpenStack,这些系统都非常擅长配置机器。最为理想的部署场景是,用户使用VMware、OpenStack或其他工具部署DCOS(数据中心操作系统)集群中的机器。随着时间的推移有可能发生的情况是,他们将DCOS集群应用于生产,同时消除了一些不必要的层。我们看到了这一演进,同时我们没有工具与虚拟化提供商一起消除这些东西。不过,这是一个共同的演进路径,因为它们并不是必需的。”

苹果的Mesos应用案例:消除虚拟机负担

为了创建案例,作为Mesos项目创始人之一,AMPLab 的BenjaminHindman除了利用来自推特和Airbnb的技术帮助将其转化为带有应用架构和复杂的两级调度器的集群控制器外,还借鉴了苹果的案例。目前苹果正支持其Siri服务的大量服务器节点中使用Mesos。

Hindman 解释说:“苹果Siri团队曾经使用过VMware,并最终转向了裸机。苹果已经转向了带有Mesos的裸机,他们这样做的最大一个原因是,首先他们不需要虚拟机,其次他们在性能上获得了大幅提升。我们经常讨论的虚拟化负担是真实存在的,对于苹果来说,这部分占了30%。消除它们意味着苹果可以将Siri 的工作速度提升30%,这真的非常重要。”

Mesosphere不希望给人们留下他们的生产级Mesos工具DCOS与OpenStack和VMware vCloud等云控制器之间存在冲突的印象,即便是在苹果的案例显示许多工作负载的虚拟化已经不再需要的情况之下。

Trifiro说:“我们与OpenStack和VMware社区展开了大量合作。”例如,由VMware提供的大量管理与安全基础设施并不是目前我们正在考虑提供的东西。它们的许多能力是我们的堆栈所不具备的,但企业可能又希望拥有这些能力。这些东西虽然老旧,但是它们仍在提供真正的业务价值。虽然虚拟化不能帮助我们更好地编排容器,但是对于许多企业客户来说,用“DCOS+VMware”的方式管理容器可以收到1+1=5的效果。

Hindman基本上同意Trifiro的这种观点,不过他仍然认为,从长远看,虚拟化可能并不是必需的。“我们正在对虚拟化进行补充,并且我们可以在虚拟机内部运行。但是对于那些已经做好了使用IaaS云的企业来说,他们会在裸机上运行Mesos。如果我们想在Linux 实例上的Windows虚拟机中运行Windows应用,那么我们也可以实现。”

Renski称,这种观点可能是同质化基础设施带来的副产品。对于企业来说,Airbnb和推特的基础设施几乎没有什么差别。

他解释称,“CoreOS和Mesosphere的创始人都是纯粹主义者,他们都曾从事于互联网行业,在那里他们有着统一的集群,最大的问题是管理容器和应用。如果你看一下企业级市场,这个领域是多样化的,而处理这些多样性是一个庞大且复杂的难题。因此在企业堆栈中,不同于推特和谷歌堆栈,我们会看到VMware vSphere和微软Hyper-V以及来自多家厂商的存储等,这些客户希望通过一个单一的接口控制裸机和虚拟服务器。我不知道哪个阵营将会胜出,也不清楚企业是否将走纯粹主义道路,以及他们的堆栈是否会变成一个整体。”

OpenStack驾驭多样性:与Kubernetes、Mesosphere协作

考虑到应用在企业数据中心内存在的时间,这看起来不太可能。但是这可能会发生在一些新公司身上,因为他们正在创建新的云,甚至会使用新的超级计算机。

Rensi称,只要企业对他们基础设施保持多样化,而不是同质化,OpenStack就将会获得一席之地,同时Kubernetes和Mesosphere将会对OpenStack进行补充。

Renski 认为:“OpenStack简化了数据中心多样性的管理。OpenStack目前的价值在于,许多厂商正在编写并积极维护大量物理基础设施驱动。而 OpenStack是一个API架构,允许对裸机和虚拟基础设施进行编排,无论它们是计算、存储还是网络。Kubernetes和Mesos是PaaS的底层组件。它们擅长管理和扩展被打包在容器中的应用。OpenStack擅长处理数据中心的多样性,但是却不擅长应用和容器管理。我们可以在 OpenStack之上放置Kubernetes或Mesos,这是一个非常优秀的技术组合。”

CoreOS已经与Mirantis达成协议,共同致力于CoreOS的Tectonic容器架构与Mirantis的OpenStack发行版的整合。CoreOS的CEO Alex Polvi对The Platform网站表示,让Tectonic在OpenStack上运行的工作可以真正满足许多客户的需求,OpenStack是Tectonic可以在其上部署的众多不同虚拟化基础设施堆栈中的一个。

Polvi说:“我们的观点虽然可能有点偏袒我们的产品,但是CoreOS加Kubernetes的组合确实是一个非常出色的通用基层,这也是我们为什么正在坚定不移地推动它们的原因。有许多办法可以实现在Mesos上运行Kubernetes,我们甚至可以将它们放在OpenStack上。不过我们认为,‘CoreOS+Kubernetes’的组合是可接受的最低限度,我们可以将其他应用放在它们上面。如果愿意的话,Mesos也可以放在它们上面。我知道虽然Mesos的工作原理完全不同,但是我们并没有不这么做的技术障碍。我们相信谷歌、Facebook等公司管理他们基础设施的方式是我们的终极目标。如果创建了谷歌Borg的公司正在将Kubernetes作为一个理想版本,那么随着时间的推移他们最终将会胜出。”

真正的竞争可能会发生在Mesos和Kubernetes之间。正如Polvi所指出的那样,Mesos有许多Kubernetes还不具备的功能,不过他认为这只是一个成熟度的问题。他说:“Kubernetes只是出现的时间太短了。Mesos在未来一到两年内将出现优秀的使用案例。我们相信 Kubernetes将成为分布式数据中心的Linux。它们将像Linux一样,采用内置所有东西的设计思路。”

似乎企业可能会继续在他们需要的地方使用虚拟化,并在其顶层放置容器,或是默认在裸机上设置容器。正如苹果Siri案例所显示的那样,这么做的原因归根结底还是因为资金和性能。不过,即便是裸机的调度也需要像OpenStack这样的系统。无论是Mesos添加自己的调度系统,还是borg作为 OpenStack的一部分,我们仍需拭目以待。

原文链接:https://www.ustack.com/news/will-openstack-kubernetes-or-mesos-control-future-clusters/?belong=industry-news

责任编辑:Ophira 来源: ustack博客
相关推荐

2022-10-30 15:03:25

人工智能仓库管理机器人

2015-05-11 10:44:04

程序员缺程序员

2013-06-19 09:30:03

2019-01-11 10:39:24

软件架构虚拟空间机器人

2015-04-08 10:40:09

2012-11-09 10:11:42

搜索引擎

2012-10-09 09:45:43

数据库实时大数据云计算

2020-03-19 15:21:57

智慧城市艺术社会

2020-12-14 13:53:29

2010-11-08 09:18:07

UI移动开发

2021-04-06 06:02:51

denoVite 工具

2020-03-02 11:35:04

数据中心5G云计算

2011-10-10 11:04:54

2018-11-07 10:51:55

智慧城市

2021-03-27 22:13:48

6G系统设备

2018-03-30 08:30:19

软件定义存储

2012-10-18 09:28:44

云计算移动云发展

2013-06-26 10:49:09

云端大脑科技技术

2018-09-26 20:01:17

金融大数据数据平台

2024-08-08 10:17:21

PostgreSQLGo语言
点赞
收藏

51CTO技术栈公众号