三种主流虚拟化技术的比较(Vmware Citrix Microsoft)
Citrix XenServer & Vmware ESX & Microsoft Hyper-V比较
功能 |
VMware ESX |
Microsoft Hypre-V |
|
虚拟化技术 |
半虚拟化(Paravirtualization) 半虚拟化技术在网络I/O和磁盘I/O上性能比全虚拟化好 |
全虚拟化(Fullvirtualization) |
Hypervisor(系统管理程序),半虚拟化(Paravirtualization) |
硬件要求 |
部分Guest系统要求CPU必需是64位CPU; 部分Guest系统要求CPU必需支持Intel VT/AMD-V,否则不支持Windows Guest系统 Guest系统支持最大32G内存,XenServer最大支持128G内存 本地支持IDE、SATA、SCSI和SAS 移动硬盘也能通过测试 |
不支持IDE硬盘 单台ESX Server服务器最多支持32个 Guest系统支持最大64GB内存;ESX Server最大支持256GB内存 一台ESX Server可以同时运行128台Guest系统 |
部分Guest系统要求CPU必需是64位CPU 部分Guest系统要求CPU必需支持Intel VT/AMD-V CPU必须支持硬件DEP(数据执行保护)技术 |
支持的Guest系统 |
Windows系列 Linux系列 Susolaris也通过了测试 |
几乎支持所有的可运行在x86架构上的系统。(不支持必需运行在IDE硬盘上的系统) |
Windows系列 Linux系列 |
软件版本 |
企业版,多服务器,有高可用,动态迁移 铂金版,多服务器,高可用,动态迁移 各版本XenServer(包括免费版)均采用同样的hypervisor,均是直接运行在硬件上的,其上的Guest系统可以直接互用。 XenServer免费版具有和企业版同样的性能。 采用XenServer的Express版,可以方便地将一些现有的支持Intel VT/AMD-V服务器作为小型的虚拟化平台。 采用XenServer的Express版搭建测试平台,可直接使用从生产平台上复制出的系统,十分方便。 |
ESX和ESXi的hypervisor是直接运行在硬件上的,Vmware Server的hypervisor是运行在Windows或Linux系统上的,二者上的Guest系统不能直接互用。 |
一个Standard版本只能运行一台Guest虚拟机 一个Enterprise版本可以运行4台Guest虚拟机 一个DataCenter版本可以不受限制的运行Guest虚拟机 Hyper-V系统只能是在64位的Windows2008系统上运行 |
License |
XenServer的License是按机器计算的。 (由于服务器整合和虚拟化对服务器硬件的CPU计算能力要求很高,4 CPU服务器所能支持的虚拟机数量肯定高于2 CPU的服务器。因此,在使用4 CPU服务器的情况下,XenServer的性价比远高于VMware ESX)(即使使用2个cpu,价格上也相差一半以上) |
VMware ESX的License是按CPU数量计算的。 |
Windows服务器许可证不包括Hyper-V Server 2008。客户端访问许可证(CALs)只需要运行在虚拟机上的操作系统。Hyper-V Server 2008本身无须客户端访问许可证 |
和其它虚拟化软件的互操作性 |
Citrix和微软已达成协议,在下一版本中XenServer上的虚拟机和Windows 2008 Hyper-V上的虚拟机可以互用。 |
无 |
|
功能(企业版) |
支持FC SAN、iSCSI、NFS共享存储。 支持虚拟多路CPU 支持Multipath FC HBA 支持VLAN,支持网卡捆绑(只有一个网卡工作) 支持资源QoS控制 支持Host和Guest系统性能监控。 支持资源池 支持XenMotion在线迁移 支持Host补丁管理 支持HA 支持Host补丁管理 Xencenter管理 |
支持FC SAN、iSCSI、NFS共享存储。 支持虚拟多路CPU 支持Multipath FC HBA 支持VLAN,支持网卡捆绑(多个网卡可同时工作) 支持资源QoS控制 支持Host和Guest系统性能监控。 支持资源池 支持VMotion在线迁移 支持HA 支持Host和Guest系统补丁管理 支持Guest系统快照功能 支持Web方式的管理界面 VirtualCenter管理ESX Server没有数量的限制(企业版) |
支持FC SAN、iSCSI、NFS共享存储。 支持虚拟多路CPU 支持Host和Guest系统性能监控。 支持资源池 支持Guest系统快照功能 支持P2V、V2V的在线迁移 |
P2V迁移 |
自带Linux的P2V迁移工具XenConverter Xenconvert也支持windows的p2v n |
自带Windows/linux(beta)的P2V迁移工具Vmware Converter。 |
安装SCVVM管理工具 |
V2V迁移 |
有第三方免费工具将VMware虚拟机转换为XenServer虚拟机(包括Windows系统和Linux系统) |
支持导入第三方虚拟系统 |
安装SCVVM管理工具 |
优势对比 |
半虚拟化技术最大的利用了硬件性能 与MS的合作及兼容性 Citrix比vmware更懂应用,vmware更像是一个硬件厂商 Xen对硬件的兼容性(CPU/硬盘/网络存储) Xendesktop/xenapp带来的机会 PVS的带来的附加功能 性价比 简单易用,部分管理功能比vm要出色 |
功能强大 VirtualCenter支持中文操作界面 对Guest系统的良好兼容性 对物理服务器的CPU要求低,不需要64位的CPU Vmware view3带来的附加功能 技术成熟 |
可以在ServerCore模式下安装Hyper-V 和微软的产品有更好的兼容性和集成性 |
虚拟化简介
虚拟化是一个抽象层,它将物理硬件与操作系统分开,从而提供更高的 IT 资源利用率和灵活性。
虚拟化允许具有不同操作系统的多个虚拟机在同一物理机上独立并行运行。每个虚拟机都有自己的一套虚拟硬件(例如 RAM、CPU、网卡等),可以在这些硬件中加载操作系统和应用程序。无论实际采用了什么物理硬件组件,操作系统都将它们视为一组一致、标准化的硬件。
虚拟机封装在文件中,因此可以快速对其进行保存、复制和部署。可在几秒钟内将整个系统(完全配置的应用程序、操作系统、BIOS 和虚拟硬件)从一台物理服务器移至另一台物理服务器,以实现零停机维护和连续的工作负载整合。
虚拟化的好处
分区
? 在一个物理系统中可以支持多个应用程序和操作系统
? 可在扩展或扩张体系结构中将服务器整合到虚拟机中
? 计算资源被视为以可控方式分配给虚拟机的统一池
隔离
? 虚拟机与主机和其他虚拟机完全隔离。如果一个虚拟机崩溃,所有其他虚拟机不会受到影响
? 虚拟机之间不会泄露数据,而且应用程序只能通过配置的网络连接进行通信
封装
? 完整的虚拟机环境保存为单个文件;便于进行备份、移动和复制
? 为应用程序提供标准化的虚拟硬件,可保证兼容性
全虚拟化和半虚拟化的差别
全虚拟化
Hypervisors通过一个仿真硬件层为其上的每个Guest操作系统(虚拟机)仿真出一个具有常用硬件设备的标准服务器,当一个运行的Guest系统试图用特权指令控制硬件时,hypervisor会将真实的硬件隐藏起来,并仿真一个硬件设备给Guest系统,从而使得Guest系统无需修改代码就可以安全地访问硬件。该技术使得Guest系统无法任何修改就可在不支持Intel VT/AMD-V的CPU上运行,但该技术的复杂性也降低了系统的性能。
半虚拟化
Guest系统在访问真实硬件时是重用当前系统的驱动,而不是通过仿真的硬件实现的。Guest系统和hypervisor交互是通过一个高效、底层的的API(hypercall API)来实现的,这使得hypervisor和Guest系统可以共同最优化地使用底层的硬件和I/O,从而可获得极高的运行性能。
Windows Hyper-V
在微软Hyper-V模型中,hypervisor层直接运行于物理服务器硬件之上。所有的虚拟分区都通过hypervisor与硬件通信,其中的hypervisor是一个很小、效率很高的代码集,负责协调这些调用。
微软的虚拟化架构如下图所示,其中最底层为服务器硬件架构,它包含AMD-V、Intel VT、DEP等硬件支持,再上层就是微软的Windows Hypervisor,在虚拟的每一个子系统之间都是通过VMbus进行通信,包括主系统Windows Server 2008在内,所有的OS都是通过VMBus的一种机制与Hypervisor进行通信,其中父分区,可简单理解为Windows Server 2008宿主系统所在分区,它与Hypervisor的通信是通过VSP传送给VMBus,再通过VMBus与Hypervisor的联系到达硬件。而子分区中的系统,是由VSC将请求发送给自已的VMBus,VMBus再与父分区的VMBus进行沟通,最后由父分区的VSP将请求传送给HyperVisor。
单独的Windows Server 2008在安装之后是直接与硬件通信,但当在系统中启用了Hypervisor,该Windows Server 2008也将作为一个Hypervisor的一个虚拟系统与其它子系统几乎是并列的存在,所不同的是Windows Server 2008作为父分区的宿主机,承载了所有子分区中虚拟系统的驱动程序。为子分区中系统的安全性又上了大大的一把锁。
- 本文标签: 暂无相关标签
- 本文链接: https://www.jimmy2k.top/article/128
- 版权声明: 本文由JimmyZ的个人博客原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权