论数据中心虚拟化两大技术代表:容器和虚拟机

如今,虚拟化技术在数据中心内已经生根发芽,应用非常普及,无论是在服务器、还是网络、存储等设备中都是如此。虚拟化技术起源于服务器,后来在网络设备中也出现,虽然都叫虚拟化技术,但是实现的原理是完全不同的,网络设备中的虚拟化也不能像服务器中的虚拟化可以虚拟化出数百或上千的虚拟设备,实现的技术也完全不同。本文着重讲述的是服务器中的虚拟化技术。服务器是数据中心最为重要的组成部分,所有的应用服务都要安装在服务器上,并运行,所以服务器上的虚拟化技术与应用最为密切相关。从早年的虚拟机技术到如今的容器技术,都是虚拟化技术的典型代表。

 

虚拟机技术,很多人可能都不陌生。不少人自己也在PC上安装过虚拟机,这也是实现虚拟化的一个实践。虚拟机技术可以分为两大类:硬件虚拟化技术和指令集虚拟化技术,硬件虚拟化技术的典型代表是VMware、Xen等,指令集虚拟化技术的典型代表时Qemu、Boch等。虚拟机技术在数据中心早已深入人心,在数据中心也已普及应用多年,正是应用普遍,可以衍生出了不少细分技术,俨然已经成为数据中心虚拟化技术的重要代表之一。通过虚拟机技术,可以在一台物理服务器上模拟出一台或多台虚拟的计算机,这些虚拟机完全就像真正的计算机那样进行工作,例如可以安装操作系统、安装应用程序、访问网络资源等等。对于使用者而言,它只是运行在你物理计算机上的一个应用程序,但是对于在虚拟机中运行的应用程序而言,它就像是在真正的计算机中进行工作。因此,当在虚拟机中进行软件评测时,可能系统一样会崩溃,但是,崩溃的只是虚拟机上的操作系统,而不是物理计算机上的操作系统,并且使用虚拟机的恢复功能,可以马上恢复虚拟机到安装软件之前的状态。

容器技术是通过虚拟化操作系统的方式来管理代码和应用程序,是在2013年才开始出现并迅速兴起的一种虚拟化技术,容器技术主要是由一些技术型创新企业设计开发的,比如: BlueData、CoreOS、Docker、Kismatic、PortWorx等等,其中最为出名的要属Docker技术,Docker几乎成为了容器技术的代表。容器技术是让你可以将更多的计算工作负载塞入到单单一台服务器上,并且让你可以在一瞬间为新的计算任务提高增加容量。从理论上来说,这意味着你可以购买较少的硬件,自建或租赁较少的数据中心场地,并且雇用较少的人手来管理这些设备。每个容器内都包含一个独享的完整用户环境空间,并且一个容器内的变动不会影响其他容器的运行环境。为了能达到这种效果,容器技术使用了一系列的系统级别的机制诸如利用Linux namespaces来进行空间隔离,通过文件系统的挂载点来决定容器可以访问哪些文件,通过cgroups来确定每个容器可以利用多少资源。此外容器之间共享同一个系统内核,这样当同一个库被多个容器使用时,内存的使用效率会得到提升。

虚拟机和容器两大技术,从描述上看目的都是虚拟化,但是技术热点和实现方式则完全不同。虚拟机提供了专用操作系统的安全性和更牢固的逻辑边界。如果是虚拟机,虚拟机管理程序与硬件对话,就如同虚拟机的操作系统和应用程序构成了一个单独的物理机。虚拟机中的操作系统可以完全不同于主机的操作系统。而容器具有轻量级特性,所需的内存空间较少,提供非常快的启动速度,创建容器的速度比虚拟机要快得多,那是由于虚拟机必须从存储系统检索10GB至20GB的操作系统。容器中的工作负载使用主机服务器的操作系统内核,避免了这一步,容器可以在二十分之一秒内启动完毕。拥有这么快的速度让开发团队可以激活项目代码,以不同的方式测试代码,或者在其网站上推出额外的电子商务容量――这一切都非常快。虚拟机和容器都具有高度可移植性,但方式不一样。就虚拟机而言,可以在运行同一虚拟机管理程序(通常是VMware的ESX、微软的Hyper-V或者开源Zen或KVM)的多个系统之间进行移植。而容器不需要虚拟机管理程序,因为它与某个版本的操作系统绑定在一起。但是容器中的应用程序可以移到任何地方,只要那里有一份该操作系统的副本。容器技术使得应用程序以标准方式进行了格式化,之后才放到容器中。开发人员可以使用同样的工具和工作流程,不管目标操作系统是什么。一旦在容器中,每种类型的应用程序都以同样的方式在网络上移动。这样一来,容器酷似虚拟机,它们又是程序包文件,可以通过互联网或内部网络来移动。当然,容器技术没有虚拟机技术那么成熟。虚拟机是一项高度发展、非常成熟的技术,事实证明可以运行在最关键的业务工作负载。容器技术也开始在谷歌、阿里等互联网公司中得到应用推广,随着技术的成熟与稳定,大有取代虚拟机技术之势。当然不能忽略的是,容器技术也面临着一些未解决的问题。比如:安全问题,相邻的容器共享处理器、内存和磁盘等资源,这种行为让安全专业人员深为担忧。容器技术在一个计算机上只能运行一个应用程序,限制了应用程序的处理规模。所以容器是值得使用的技术,不过要谨慎使用,需深思熟虑,而不是贸然行动。

在数据中心的虚拟化进程中,到底采用虚拟机还是容器?这最终还是取决于你的需求。如果你只是希望将应用运行的实例进行隔离,那么对于管理应用运行环境、启动应用实例以及控制资源 开销方面容器将是一个极为高效的工具。如果你从服务器虚拟化的角度来寻找最好的环境隔离方案,那么系统级的虚拟化是更好的方案:和容器相比,邻居租户对系统的影响在虚拟化的方案下将不是一个问题。尽管现在很多容器都在专注于提高其隔离能力,但是虚拟机的隔离还是要优于容器。从物理服务器过渡到虚拟服务器是一个很自然的过程,并且现在针对虚拟服务器的管理的生态系统也很完善。当然两者并不是对立的,我们可以在一个容器中运行一个虚拟机,也可以在一个虚拟机中运行一个容器,还可以在一个虚拟机中运行多个容器,两种技术走向融合,这样才能让两种虚拟化技术在数据中心里发挥更大的作用。

作者:何妍 

来源:51CTO

时间: 2024-09-09 12:30:21

论数据中心虚拟化两大技术代表:容器和虚拟机的相关文章

商业数据中心市场呈现两大趋势

随着信息化和工业化深入融合的进程加快,以及云计算.物联网.智慧城市等新理念和新业态的发展,我国商业数据中心市场将迎来持续增长.例如,IDC数据显示,2012年,整体商业数据中心机房数量预计将以11.7%的增长率进一步增加,IDC服务市场将以25.1%的年增长率快速发展. 除了数量上的增长,据记者观察,国内商业数据中心市场还呈现以下两大趋势: 一. 大型.超大型数据中心日益增多 近年来,频频传出各地建设大型.甚至超大型数据中心的消息.例如,2011年年底,万国数据上海外高桥旗舰数据中心一期正式运营

数据中心未来网络两大技术之争:Neutron和SDN

网络是数据中心里最为保守和封闭的系统.网络的很多技术是私有的,封闭的,这样的技术在云计算和大数据的时代显然过于保守了,不适应新技术的发展.网络技术已经成为阻碍新技术革新的绊脚石,正因为此,数据中心的很多新技术都是基于网络做出的.所以,数据中心网络是技术变化最大的一块,新的技术也是层出不穷,让人看得眼花缭乱.这里拿出了两块最新的网络技术Neutron和SDN,做个对比分析.在对比介绍中,就可以了解到两大技术的特点,这两大技术可能是未来的发展方向. 可能很多人并不知道Neutron,但是如果提起Op

《数据中心虚拟化技术权威指南》一第2章 数据中心网络演进2.1 以太网协议:过去和现在

第2章 数据中心网络演进 数据中心虚拟化技术权威指南 本章节将讲述以太网协议的发展,设计数据中心以太网络的时候需要考虑的最重要因素,以及虚拟化如何在这些项目实施中克服常见的局限性.本章包含以下几个主题. 以太网协议的过去与现在: 数据中心网络拓扑: 网络虚拟化优势. 数据中心网络的主要目标是将服务器数据传输至客户端和其他服务器.很明显,数据中心是为提供数据服务而建设的,网络可以精确地定义设备的真实效率. 为了与今天数据中心环境的可靠性和成长性相配,数据库中心网络必须包含以下特征. 可用性:能够健

《数据中心虚拟化技术权威指南》一第1章 虚拟化的历史和定义1.1 数据中心的基本定义

第1章 虚拟化的历史和定义 数据中心虚拟化技术权威指南坦白地说,虚拟化就是欺骗. 即使我们拒绝相信它,但制假.造假以及伪装正在像创作和创意一样成为我们生活的一部分.事实上,整个艺术和科学专门致力于对感知的操纵. 然而,随着个人计算机的普及,"虚拟化"这个广泛使用的术语已经脱离了其技术本身,成为一种共同语言.流行文化和理念.自20世纪90年代互联网热潮的早期,任何与Web相关的活动均被称为"虚拟",这已然成为了一种完完全全的老生常谈(或只是懒于写出来).然而,通过菲利

《数据中心虚拟化技术权威指南》一1.2 数据中心虚拟化起源

1.2 数据中心虚拟化起源 数据中心虚拟化技术权威指南 本书的主要目标之一就是正确描述那些所谓数据中心虚拟化趋势的技术特征.在最初的研究过程中,通过切身体会,我遇到过各种对虚拟化的单一解答或仅仅单方面的定义,例如: 虚拟化使得您可以在一台物理机器上运行多个虚拟机,每个虚拟机跨越多个环境,共享一台物理计算机的资源: 虚拟化提供了一个"物理到逻辑"的存储设备抽象,它提供了对复杂的.消耗资源的基础设施和实体的一个简单和一致的表征: 网络虚拟化指的是叠加在一个共同的物理基础设施之上,逻辑隔离网

《数据中心虚拟化技术权威指南》一2.3 网络虚拟化的优点

2.3 网络虚拟化的优点 数据中心虚拟化技术权威指南 网络虚拟化技术可以集合两种矛盾设计的优点,从而可以使得它们的缺点最小化.通过"网络技术的虚拟化",您会看到一些巧妙的.解决不同问题的技术. 2.3.1 网络逻辑分区 数据中心网络整合是一个明确的趋势,考虑到任何网络都在改善目标连接,这是一个常识性的问题,那就是多个物理网络是花费更高,通信基本设施难以构架和管理. 在统一数据中心网络中,资源(如端口和传输容量)可以实现最大化利用.然而,网络分区有很强的推动力,如不同的安全区域和多租户技

《数据中心虚拟化技术权威指南》一导读

前 言 数据中心虚拟化技术权威指南"我对学习数据中心技术很感兴趣,应该如何开始呢?" 自从我第一次听到这个问题,我见过很多 IT 专业人士,面对令人晕头转向的数据中心新技术开发,变得不堪重负.从我的角度来看,这种挫折主要是由于试图去理解这个问题,却没有被正确地引入到有关这些复杂的环境的最根本的概念和定义.而这些观点一直是我给他们建议的基础. 然而,随着岁月的流逝,我发现回答这个问题变得更复杂.可以理解的是,这些专业人士的背景也被要求日益多样化,主要是因为数据中心技术在不同的知识领域不断

《数据中心虚拟化技术权威指南》一 2.5 扩展阅读

2.5 扩展阅读 数据中心虚拟化技术权威指南Moreno,Victor. Reddy,Kumar. Network Virtualization. Cisco Press,2006. IEEE Standards Association,445 Hoes Lane,Piscataway,NJ 08854-4141 USA http://standards.ieee.org Telecommunications Industry Association(TIA),1320 N. Courthous

《数据中心虚拟化技术权威指南》一2.4 总结

2.4 总结 数据中心虚拟化技术权威指南在本章中,您了解到了以下这些内容. 尽管数据中心以太网可以被看做是园区网的一个进步,但它们还是有一些区别的.例如,主机的连接. 有效性和通信模式. 一般的数据中心的网络模型可以被看成是三层(核心层.汇聚层和接入层).每一层都有不同的设计选择,这些选择有着不同的优点和缺点. ANSI/TIA-942-2005 为现代数据中心的空间布局和布线基础设施提供了指导方针. 网络虚拟技术能够帮助网络分区.资源优化.管理整合和网络扩展.