【原文编者的话】:
作为一款每天都在向成熟演变的、开源的计算资源调度与配置整合引擎,OpenStack的核心能力是向用户按需交付虚拟计算能力,它的雄心不止于Docker。
OpenStack和Docker都被认为具备让IT更具灵活性的能力。红帽的Neil Levine认为,OpenStack目前正在努力通过将静态IT资源变成弹性基础设施来实现这样的功能,而Docker则通过协调开发、测试和生产资源来实现同样的目标。
尽管Docker的部署正在增长,但OpenStack在某种程度上还显得有点不温不火。许多人的看法是,OpenStack的潜在用户一直都对OpenStack保持着关注,不过由于复杂性等诸多原因,OpenStack跨越式发展的时代还没有到来。
Docker目前可能是唯一能够将OpenStack聚集起来的人气转变为生产力的项目。“Docker+OpenStack”的组合是否适合我们的企业,在很大程度上取决于企业希望交付什么样的能力。如果仅仅是Docker,那么OpenStack就可能被大材小用了。
一套交付虚拟机的开源解决方案
OpenStack是一套用于交付虚拟计算能力的运营模式。
一些人给OpenStack下了一个非常宽泛的定义(OpenStack是一套用于为公有云和私有云创建和管理云计算平台的软件工具)。但是,如果我们忽视Cinder、Heat和Magnum等辅助服务,那么OpenStack的核心价值将成为——汇聚带虚拟层功能的计算机池,以及向用户按需交付虚拟机。
这并非是一件小事情。如果没有OpenStack,那么单台计算机上的虚拟层将一事无成,因为它们没有办法以程序方式(或其他方式)向用户提供自己的能力。
在OpenStack或亚马逊EC2等云系统出现之前,用户通常只能向IT提交需求清单。随后,IT管理员会使用GUI或命令行创建一个虚拟机,然后与用户共享凭证。OpenStack等系统在很有大程度上让这一流程更加流畅,让IT能够以程序的方式向用户交付他们需要的能力。这一点非常重要。
花生酱Docker遇上果酱OpenStack
作为容器领域的宠儿,Docker与之前所述的IaaS(基础设施即服务)中的虚拟机非常相似。
一台Docker主机实际上是用户所需的计算能力单元,而非容器本身。Docker解决了我们一旦获得了主机后如何利用主机开展工作的问题,但是它们实际上在一开始并没有帮助我们获得主机。
Docker机器提供了一个客户端工具,可以让我们从IaaS提供商(例如EC2、OpenStack或vSphere)那里请求Docker主机,但这远非一个完整的解决方案。在某种程度上,这源于Docker没有租户模式的事实。
通过虚拟层,每个虚拟机都是一个租户。但是在Docker中,Docker主机是一个租户。我们通常都不希望多个用户共享一个Docker主机,因为这样他们会看到彼此的容器。因此企业通常会在Docker的底层部署一个云系统以增加租户。这导致堆栈看起来像是:硬件 >虚拟层 > Docker主机 > 容器。
目前常用的方法是采用OpenStack,将它作为企业平台以便向用户按需交付他们所需要的能力。换句话说,用户先通过OpenStack请求Docker主机,然后使用Docker在Docker主机中运行容器。到目前为止,一切都比较顺利。
如果你需要的只是Docker……
当我们开始分析需要交付什么样的能力时,事情就会变得更为复杂。
当企业希望使用Docker,那么他们需要从数据中心那里获得Docker主机。OpenStack可以做这样的工作。而除了这一工作外,它们还可以向企业中的其他团队交付各种不同的能力。
VMware的高管Jared Rosoff告诉我,如果企业IT团队只需要Docker容器被交付,那么OpenStack或是类似的编排工具可能就会被大材小用了。
对于这类使用案例,我们实际上需要一个新的平台。该平台能够让企业在数据中心内的所有电脑上安装同一软件;向开发者提供接口,在需要时让开发者以编程方式创建Docker,然后用Docker在这些主机中创建容器。
谷歌正在通过其Container Engine(容器引擎)为此类案例提供服务。亚马逊也正在通过其EC2 Container Service(容器服务)做类似的事情。开发者可以使用这些API为他们的数据中心提供Docker兼容能力。至于Docker,Docker技术背后的公司似乎也正在努力解决这一问题,将关注点放在主机本身上。
尽管我们可能不需要创建一个大型的OpenStack云去管理Docker实例,但是如果我们希望交付的仅仅是Docker主机而非虚拟机,那么咨询一下OpenStack应该发挥什么作用也是值得的。
此外,我们看到谷歌和亚马逊正在着手解决这一问题,不知道OpenStack或者其支持者们什么时候着手做同样的工作?由于VMware在虚拟化工具方面长期占据着统治优势,因此VMware是一个具有明显优势的候选者。尽管如此,能够率先解决这一问题、并且能够以传统IT所熟悉的接口方式缓解用户对未来疑虑的公司,不仅能够在此次战役中胜出,还会大获全胜。
本文作者:范范编译
来源:51CTO