虚拟化技术简介什么是虚拟化•虚拟化(virtualization):–是一个广义的术语,在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。–把物理资源转变为逻辑上可以管理的资源,以打破物理结构之间的壁垒。为什么要进行虚拟化•对IT基础设施进行简化。•简化对资源以及对资源管理的访问。虚拟化的优势•更高的资源利用率–支持实现物理资源和资源池的动态共享,提高资源利用率。•降低管理成本–提高工作人员的效率;–减少物理资源的数量;–隐藏物理资源的部分复杂性;–通过虚拟可实现动态的资源部署和重配置,满足不断变化的业务需求。•更高的可用性–在不影响用户的情况下对物理资源进行删除、升级或改变。•更高的可扩展性–根据不同的产品,资源分区和汇聚可支持实现比个体物理资源小得多或大得多的虚拟资源。•互操作性和投资保护–虚拟资源可提供底层物理资源无法提供的与各种接口和协议的兼容性。•改进资源供应–能够以更小的单位进行资源分配;–虚拟资源因其不存在硬件和操作系统方面的问题而能够在出现崩溃后更快地恢复。虚拟化的诞生•早在上世纪60年代,IBM公司就发明了一种操作系统虚拟化技术,允许在一台主机上运行多个操作系统,让用户尽可能地充分利用昂贵的大型机资源。虚拟化的几种技术•文件虚拟化•存储虚拟化•CPU虚拟化•服务器虚拟化文件虚拟化(FileVirtualization)•文件虚拟化是在文件服务器和客户机之间创建一个抽象层。–文件虚拟化层管理跨服务器的文件和文件系统,允许管理员向客户机提供一个所有服务器的逻辑文件挂接;–虚拟文件存储整合允许文件服务器之间共享访问存储容量;–文件服务器之间实施的数据迁移对于最终用户和应用程序都是透明的。存储虚拟化技术•虚拟存储(StorageVirtualization),就是把多个存储介质模块(如硬盘、RAID)通过一定的手段集中管理起来,所有的存储模块在一个存储池中得到统一管理。–主机级虚拟化;–存储子系统级虚拟化;–网络级虚拟化。存储虚拟化特点•存储虚拟化是一个SAN里面的存储中央管理、集中管理;•存储虚拟化打破了存储供应商之间的界线;•可以应用于不同品牌的高中低档的存储设备。CPU虚拟化技术•CPU虚拟化技术是一种硬件方案,支持虚拟技术的CPU带有特别优化过的指令集来控制虚拟过程,通过这些指令集,VMM(VirtualMachineMonitor,虚拟机监视器)会很容易提高性能,相比软件的虚拟实现方式会很大程度上提高性能。服务器虚拟化概念•服务器虚拟化就是在服务器上安装一个虚拟机监控器(VirtualMachineMonitor,VMM)软件,将服务器物理的CPU、内存、网卡和硬盘等资源抽象出来,映射成若干个虚拟的CPU、内存、网卡和硬盘,构成虚拟机,每个虚拟机上可运行一个独立的操作系统和若干应用软件。服务器虚拟化特性•主要有四大特性:–分区;–隔离;–封装;–硬件独立。分区•分区是指在单一物理服务器上同时和独立地运行多个虚拟机。–虚拟化层为多个虚拟机划分服务器资源的能力;–每个虚拟机可以同时运行一个单独的操作系统,使得能够在一台服务器上运行多个应用程序;–每个操作系统只能看到虚拟化层为其提供的“虚拟硬件”(虚拟网卡、虚拟内存、虚拟CPU等等),从而使它认为它是运行在自己的专用服务器上。分区这个特性可以提高物理资源的利用率并减少物理服务器的数量。隔离•隔离是指同一系统中虚拟机之间互相独立地运行,影响某一个虚拟机的崩溃、病毒等问题都不会影响在同一物理主机上运行的其它虚拟机,隔离功能还可以确保一个虚拟机不会占用同一系统中其它虚拟机的资源。•可以在单一物理服务器上同时运行多个负载/应用程序/操作系统,而不会出现传统x86服务器体系结构中的一些有局限性的问题(比如应用程序冲突、DLL冲突等等)。•虚拟机之间不会泄露数据,应用程序只能通过配置的网络连接进行通信。封装•封装是指将所有与虚拟机有关的内容(硬件配置、BIOS配置、内存状态、磁盘状态、I/O设备状态、CPU状态)储存在独立于物理硬件的一组文件中,复制和移动虚拟机就像复制和移动文件一样简单。–服务器资源调配类似于拷贝文件;–服务器迁移类似于数据迁移,而不是搬动物理服务器;–备份和恢复也相对简单很多,类似于数据的备份和恢复;–为应用程序提供标准化的虚拟硬件,可保证兼容性。硬件独立性•硬件独立性是指虚拟软件的虚拟化层从操作系统和应用程序中抽取硬件,所以虚拟机不在乎实际硬件是什么,从而达到相对于硬件独立。•打破了操作系统和硬件以及应用程序和操作系统/硬件之间的约束。服务器虚拟化的好处•控制和减少物理服务器的数量,降低硬件成本,提高服务器平均利用率•降低管理和运营成本•应用部署快捷化•旧硬件与新操作系统无兼容性问题•硬件维护零宕机,易备份•提供高可用性和负载均衡•提高IT投资回报率服务器虚拟化软件的分类•大体分为两类,基于主机(HostedArchitecture)和基于硬件(BareMetalArchitecture)。–基于主机虚拟化软件需要先在服务器硬件上安装主操作系统,被称为HostOS,然后在这个OS上建立虚拟层,之后在该虚拟层上创建不同GuestOS的虚拟机,代表软件有VMwareWorkstation、SWsoftVirtuozzo等,基于主机的虚拟化软件依赖于物理主机的操作系统。–基于硬件的虚拟化软件直接安装服务器裸设备上,在服务器硬件上建立一个被称作hypervisor的虚拟层,虚拟机可以任意创建在这个虚拟层上,在虚拟机上可以安装各种操作系统,部署应用业务,代表软件有VMwareESX、XenSource等,这类软件依赖于虚拟层内核,性能远远优于基于主机的。微软和VMware虚拟化技术原理•微软Hyper-V–虚机的磁盘文件(.VHD)存放在共享存储设备(iSCSI或者光纤SCSI设备)上,同时挂载到多台主机上,主机维护需要快速迁移时,不需要迁移庞大的磁盘文件。–发生突发性的硬件故障或者断电,虚机可以借助高可用性群集功能在另外一个节点上重新启动。•VMwareESX–VMware的技术更加成熟。–VMware采用VMotion技术,采用内存后台备份的机制,可以实现在线迁移,几乎没有停机时间。–VMotion需要共享存储的支持,虚机的磁盘文件保存在共享存储设备上,VMotion并不是基于群集的。微软和VMware虚拟化技术原理•技术区别–VMotion采用后台内存拷贝的模式,只有在拷贝内存位图表时,才会临时中止客户端访问,用户几乎感觉不到服务中断(一般最多1~2秒)–Hyper-V快速迁移需要有一个内存状态的保存和恢复时间,根据虚机内存和存储带宽的大小,有少量的服务中断时间(少则1~2秒,多则1~2分钟)。–VMotion需要相对比较昂贵的费用。–Hyper-V快速迁移则包含在WindowsServer2008的授权费用中,不需要额外付费。–VMotion适用于计划维护停机事件,如果是突发故障,可以借助VMware的HA功能(需要付费),让虚机在另外一台主机上重启。–Hyper-V可以借助主机群集功能同时实现快速转移和高可用性。微软和VMware虚拟化产品优缺点•微软的优势–和微软Windows操作系统兼容性更强。–虚拟化管理层本身无需额外付出成本。–微软自己的应用程序,包括SQLServer、ExchangeServer、活动目录、IIS等服务端应用,可以更好地在Hyper-V上运行,其兼容性、稳定性和性能,都会得到保障。–采用微软虚拟化方案,在许可证方面可以享受不小的优惠。–微软最大的优点,在于有一个完整的、集成的平台,这是其他第三方产品所不具备的。•VMware的优缺点•优点–老牌的虚拟化厂商,拥有业界领先的技术。–VMware的产品线比较完整,针对不同的行业应用,都有完整的解决方案。–不需要WindowsServer2008的支持,可以直接安装在裸机上。•缺点–可以用VirtualCenter来管理多台VM主机和虚机,但是缺乏统一的管理平台,需要购买第三方的管理平台,对虚机和真机进行统一管理。–VMware的虚拟化管理层是一个独立产品,需要付费。–许可证方面的开销巨大,每安装一个Windows虚机,都必须对其中的Windows操作系统付费。虚拟化的发展和趋势•虚拟化开始从早期的存储虚拟化向服务器和操作系统的虚拟化以及整体的虚拟化发展。