换个角度看容器和hypervisor的关系

日期: 2016-08-16 作者:Jim O'Reilly翻译:王学强 来源:TechTarget中国 英文

过去容器和hypervisor经常被放在一起进行对比,但是现在开发人员正在尝试改变这种现状,希望找到一种方法将两种技术的特点相互融合。

大多数人喜欢将虚拟化技术的两种主要实现方式——容器和hypervisor——以对比的方式进行讨论。这种思路将容器和hypervisor放在对立面上,选择容器或是在实际环境中,容器和hypervisor不仅仅是竞争关系,不应该简单地将其拿来对比。事实上,容器和hypervisor能够共存,甚至相互促进对方发展。

容器技术的最大意义在于其不需要同时使用多个操作系统,而在hypervisor虚拟化环境当中每台虚拟机都需要使用独立的操作系统。显而易见,这种方式能够大幅度降低系统开销所占用的内存,能够为应用及其数据预留更多的空间。

使用容器技术能够节约大量操作系统所占用的内存空间。通常相比于hypervisor,使用容器能够在同一台服务器当中创建三倍的实例数量。在某些情况当中,比如完全一样的虚拟桌面,实例数量能够达到之前的十倍。从另外一个角度来说,特定负载所需的服务器数量也就大幅降低了。授权部分也会受到影响,企业只需要为每台服务器购买一个授权。由于应用成为共享镜像的一部分,因此也能够从中获益。

容器提升性能和安全性

容器技术还能够带来其他好处。相比于hypervisor,其启动速度更快,主要是因为镜像不需要从头进行加载。镜像具有更好的可移植性并且更加易于部署,因此能够在运营过程中为部署和敏捷性带来很大帮助。此外,测试报告显示相比于传统hypervisor,容器在完成某些特定任务方面具有很大的性能优势,最多只需要使用原有时间的15%。

容器技术拥有如此多的优势,以至于很多人不太理解除了行业内的保守派之外,容器技术为什么还没有完全取代原有hypervisor。毕竟,Docker在这个行业当中拥有很强的领导能力,并且容器技术也已经基本成熟。

容器是一种全新技术,并且正在快速发展。而与之对比的hypervisor则更加成熟,并且已经通过市场的证明。其在安全性方面不断加固,并且x86 VTx架构为其提供了硬件辅助,因此想要实现跨租户间的袭击几乎是不可能的。相对来说有人质疑容器更加脆弱,攻击者可能袭击底层操作系统,进而控制服务器当中的所有实例。

由此产生的结果是容器通常被运行在hypervisor之上。每个租户的容器实例都被隔离在单独的虚拟机当中,这样就能够实现硬件保护,防止遭遇跨租户袭击。这种方式的缺点也十分明显。不仅更加复杂,而且还会涉及hypervisor代码以及操作系统拷贝等授权问题,并且影响性能,甚至是失去敏捷性——但是至少实例是安全的。

但是现在容器生态系统已经能够应付这种局面。一些Thin hypervisor,比如英特尔的Clear Container,就是被设计用来保护容器并且合理利用硬件——不会占用大量空间或者过度影响系统性能表现。其他一些安全改进——特别是在镜像证明和认证方面——意味着容器已经能够弥补和hypervisor在安全性方面的差距了。

Hypervisor如何回应

Hypervisor开发者也并不清闲。尽管最初他们否认容器会对其带来威胁,但是最终还是开始应对容器技术所带来的各种威胁可能性。比如,VMware使用内存页面去重复化技术来降低内存使用量,这种技术能够替换整个内存页面,将所有重复内容都指向同一个内存地址。这种方式能够有效降低负载,但是hypervisor的运行速度依然无法和容器相提并论。在运营过程中还可以通过其他方式来实现平衡。内存页面去重复化技术能够进一步演变,比如针对已经加载的镜像创建索引,针对已经在系统当中的文件进行检查。这种方式不会带来任何额外负载,能够大幅度提升去重复化速度。我们想要将现在的hypervisor和未来的容器进行对比,表明hypervisor虚拟化并没有停滞不前。

除了内存和性能问题之外,两种解决方案的应用领域也各不相同。对于那些需要进行大规模扩展、但是几乎不会相互影响——至少不会直接相互影响——的任务来说,使用容器更加合适。比如,容器技术能够很好地满足Web服务以及微服务的需求,如果能够对容器进行恰当配置,那么其还能够在云中发挥重要作用。

相比于容器,hypervisor更加适用于那些规模庞大的独立应用,管理员能够更好地控制和应用相关的网络和存储架构,由于这些大型应用通常都被用来执行一些关键任务,因此节约资源和启动时间并不是其主要考虑因素——特别是和潜在的故障时间或者安全隐患相比。

科学计算,几年之前刚刚进入虚拟化领域,已经在很大程度上提升了生产力。这些工具通常都会根据当前环境进行调整,因此更加适合于复杂任务。

至于成本因素,应用和操作系统授权方式还需要进行不断调整,这样才能使得所有用户都能够负担的起虚拟化的价格,不论选择使用哪种虚拟化方式。每个实例每分钟的收费方式也许将会成为最终标准。

凭借现有的强大生态系统以及庞大的用户群体,hypervisor还将会在IT领域发挥重要作用。在容器和hypervisor的竞争当中,只有当hypervisor设计者不再进行回应的的时候,容器才有可能成为最终的胜利者,但是这几乎是不可能的。事实上,未来最有可能的发展方向就是hypervisor和容器技术相互融合,至少在特性和优势方面。那些现在已经非常依赖于hypervisor基础架构的IT部门也许希望继续使用这种方式,比如使用简化的hypervisor实例或者在hypervisor实例当中使用容器。另一方面,全新安装的企业最有可能会直接使用Docker或者其他方案。对应用进行分类也是一种可行方案,hypervisor虚拟化更加适用于庞大的单一应用。

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

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

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

翻译

王学强
王学强

TechTarget特邀编辑,毕业于计算机专业,现任职于外企IT分析师,负责网络、防火墙和服务器等系统运维工作,对虚拟化、网络安全和渗透测试拥有浓厚兴趣,工作外热爱旅行、汽车和健身。

相关推荐

  • 描绘VMware容器未来蓝图:VIC与Pivotal

    容器技术已经推出几年了,而且其原理很容易理解。容器成本低、运行速度快、易于部署而且承诺提供更大的可扩展性。在容器需求量持续增加期间,VMware开发了自己的容器平台以满足不断增长的需求—vSphere集成容器(VIC)以及Photon Platform。

  • VMware和Pivotal在容器领域达成合作

    Pivotal Container Service将Kubernetes集成到vSphere,同时借助NSX提升安全性,但是这项新服务让我们不得不思考VMware自有容器项目的问题。

  • 起底虚拟机优势

    虚拟机是物理计算机的逻辑表现形式。虚拟机有众多优势,但列举虚拟机的众多优势之前有必要了解下虚拟机是如何创建以及如何工作的。为创建一个虚拟机,先要在物理计算机上安装hypervisor。

  • 主流hypervisor总拥有成本及功能对比

    在众多hypervisor中做出选择可能是管理员要做出的最重要的决定之一。在做出上述决定时,务必牢记要在已经推出市场一段时间的hypervisor中进行选择。