容器与虚拟机不对立:集成才是终极目标

日期: 2016-11-21 作者:Nick Martin翻译:张冀川 来源:TechTarget中国 英文

容器以及基于hypervisor的虚拟化都能够将应用从底层的服务器硬件中抽象出来,但组织并没有进行二者之间的PK。它们更多的是在考虑如何最好地融合两种技术—往往是采用令人惊讶的方式。

Docker激发了人们对容器的兴趣,该公司表示计划对如何精确地运行容器这一问题保持中立。但其他组织在坚定融合容器以及虚拟机这两种技术的立场,尝试找到能够利用两种技术优势的平衡点。

容器与虚拟机孰是孰非讨论的前提源于如下理论:裸金属容器—基于运行在物理硬件上的操作系统创建—通过减少冗余的操作系统信息能够实现资源使用效率的最大化。与虚拟机不同,每个容器实例不需要独立的操作系统,减少了开销并允许管理员在更少的物理硬件上承载更多的工作负载。在实际应用中,在裸金属容器上大规模运行生产工作负载仍旧存在很多障碍。

因为位于同一个物理主机上的容器共享一个操作系统内核,容器的安全漏洞可能会波及运行在同一个物理主机之上的其他容器。此外,虚拟机管理工具,比如VMware的vSphere提供了复杂的管理功能以及可靠的特性—比如在线迁移、高可用—但容器并不具备这些功能。

熟悉的面孔

应对上述众多挑战的一种方式是将容器封装在虚拟机内。管理员可以采用在单个虚拟机内运行一个容器的方式,使用现有虚拟管理软件单独管理每个容器。而且由于每个容器依赖虚拟机作为额外的抽象层,管理员能够避免因多个容器共享相同的操作系统内核所引发的对安全性的关注。

确保虚拟机仍就是未来数据中心焦点,是VMware的核心利益之所在,这并不令人意外。VMware声称虚拟机和容器能够更好地整合。VMware公司正在开发两种不同的方式,但都是把容器放在虚拟机内运行。

VMware副总裁与云应用业务产品线的总经理Kit Colbert说:“我们尝试回答的问题是你可以如何安全、高效地交付容器—提高开发者效率,但仍旧以易于处理方式保留控制、治理、资源隔离以及服务级别协议。”

VMware去年推出了vSphere集成容器的技术预览版,允许管理员通过类似vSphere的界面部署并管理容器。vSphere集成容器能够创建虚拟容器主机——运行轻量级Linux操作系统的虚拟机,然后可以在该虚拟机上快速部署容器。

Colbert说:“一旦创建该虚拟容器主机,之后就和使用vSphere没什么两样了。目标是使核心的vSphere用户不需要进行重大调整就能够利用现有功能。”

VMware用户说,尽管vSphere集成容器目前仍是技术预览版还没有正式发布,但其让人们看到了将容器带入现有基础设施的一种选择。

Arc Innovations是一家位于新西兰的电力设备供应商,该公司的系统工程师Darran Provis说vSphere集成容器即将上市。

Provis说:“在VMware尤其是vSphere集成容器中部署容器,我们能够迁移各种站点组件以平衡工作负载,这有助于分配内存、CPU资源。如果你在使用重应用—例如Tomcat/Solr以及Apache—往往会受限于单个虚拟机需要大量的硬件资源。利用容器分离Tomcat/Solr与Apache,我们就能够平衡负载。”

Provis说:“能够在资源池中自动部署容器容器并将容器主机提供给用户具有巨大优势而且能够基于资源池使用情况收取费用。剩下的交给用户—部署他们自己的容器—这可以通过远程实现。”

好客的主机

在虚拟机内部署容器的另一个支持者是Intel的开源技术中心。Intel的Clear Containers项目从一个不同的角度处理容器与虚拟机之争:虚拟机如何成为更好的容器主机?

Intel的Clear Containers项目团队成员与容器用户交流他们对性能的要求,发现启动时间是首要关注点,然后是内存消耗。启动时间以及密度是容器的关键所在,因为大多数容器化的工作负载生命周期很短。在微服务架构中,部署大量容器用于执行特定任务,任务完成后容器会被清除掉。Clear Containers项目团队然后着手构建工具测量虚拟机的启动时间以查看是否能够找到改进启动时间的方法。

结果表明大多数时间用于模拟软盘。两到三秒用于BIOS初始化软盘,然后操作系统耗费两到三秒尝试发现软盘。因此很多时间被用在这个方面,对容器来说,这完全没有必要。

红帽公司集成解决方案业务线的总经理Lars Herrmann说Clear Container以及VMware的vSphere集成容器解决了管理与安全问题,同时保留了容器的便携性而且与传统虚拟机相比减少了引导时间。然而,上手两种技术都没有与多个容器共享同一个物理主机的高效率相匹配。

容器是一个令人惊讶的应用交付技术,基于此我们可以构建应用模型与工作负载,逐步进入DevOps阶段。然而典型的架构范式是不会在单个虚拟机内运行一个容器的,因为这样一来,资源使用效率太低了。

在可预见的未来虚拟化将会继续扮演重要角色,但不在单个虚拟机上运行一个容器的利大于弊。目前,组织使用不同的工具监控、管理内部以及云应用是很常见的。

容器能够为在不同环境下以相同方式运行的应用提供标准化的架构。

并非开发新工具管理并保护容器—针对虚拟机的上述管理工具早已被应用—Intel公司的范德文说改进虚拟机以能够更好地将虚拟机作为运行容器的主机可能更具现实意义,很多需求进入容器管理领域的创业公司已经接受了在虚拟机内运行容器的构想。

容器包含虚拟机

Rancher Labs是一家位于加州库比蒂诺的容器管理软件供应商,该公司向顾客提供了一种方式,利用公司已有的平台管理虚拟机工作负载以及容器—而不是单独管理容器与虚拟机。RancherVM是公司开发的一个开源项目,在Docker镜像中封装了KVM镜像,使用类似Docker的命令管理这些虚拟机容器。

考虑到容器的开源特质,该技术还在组织以及私人用户团队进行了小规模尝试。Enteon是一家位于圣路易斯的云管理及配置软件供应商,该公司提供了一种方式,虚拟机借用了Docker容器固有的便携优势。

这种方式称之为原生云虚拟机,允许用户在容器内运行为专门针对虚拟机而设计的遗留应用—在其他开源项目包括Weave以及CRIU的帮助下—并在不同平台包括公有云供应商之间无缝迁移工作负载。

尽管原生云虚拟机并不是完全意义上真正的虚拟机—仍旧共享主机操作系统内核,例如这意味着你不能安装单独的Windows服务器操作系统—Enteon的首席云架构师Jim McBride说实际影响是“站在用户角度看起来、用起来都像是一个虚拟机。”

McBride说:“我们认为云供应商独立的观点很牢固,但我们付出了很大的努力让人们改变该想法。我认为类似这样的事能够大规模地破坏云主机或者厂商部署并支持云服务的方式。”

很多开源项目,比如CRIU,模糊了容器功能及其使用方式的边界。例如Intel的Clear Containers项目继续开发下去,今后会对容器直接访问硬件比如网卡的功能进行升级或者支持在线迁移。

Intel公司的范德文说:“一些人希望混合使用容器与虚拟机,我们将会提供相应的技术支持。”

某些用户回顾容器与虚拟机之争,发现融合两种技术是最佳选择。Arc Innovations公司的Provis预计在这方面会有更多的创新—调整hypervisor,使虚拟机更好地作为运行容器的主机并着重于在管理及安全方面更新容器技术。

Provis说容器是一门令人兴奋的技术,今后我们会见证其不断发展。但发展方向却是仁者见仁智者见智了。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

Nick Martin
Nick Martin

网站编辑

翻译

张冀川
张冀川

TechTarget中国特约专家,任职于某国企信息中心,负责数据中心硬件基础设施及信息系统运维管理工作,对虚拟化及云计算技术有浓厚兴趣,并在工作中积极应用

相关推荐

  • VMware快照工作原理以及如何运用

    当你更新或修复应用程序和服务器时,VMware快照无疑是你的救星。而如果你负责监管虚拟环境,你更是应该知道什么 […]

  • 配置ESXi Autostart,自动打补丁

    顾名思义,VMware ESXi Autostart能够实现自动开启、关闭ESXi服务器上的虚拟机,让虚拟机管理变得更轻松。如果运行了多个虚拟机并且给主机打补丁后需要重启主机,那么ESXi Autostart的作用就更大了,没有Autostart的话,你需要在给主机打补丁后,手动重启每个虚拟机。

  • 推荐一款好的虚拟主机提供商

    推荐一款好的虚拟主机提供商 推荐理由:   第一:种类多:有经济型,全能型,功能型等   […]

  • 哪里的虚拟主机最便宜?

    鱼和熊掌不可兼得, 想要找即便宜又好用的虚拟谁有办法? 我来推荐一款,可以了解 新网云虚拟主机一年只要1元钱 […]