知识普及:英特尔的虚拟化技术
DOIT原创 崔昊 发表于:10年09月07日 10:00 [原创] 服务器在线
知识普及:英特尔的虚拟化技术
在虚拟化3.0与云计算所需要的三大方面:大规模可扩展和带宽、可信计算和安全、节能高效和虚拟化方面,英特尔提供了全面满足云计算架构,虚拟化环境需求的产品和技术。
在大规模可扩展和带宽方面,英特尔提供至强7500和5600处理器,Intel VT for Directed IO&Connectivity技术、Intel VT Flex Migration技术;在可信计算和安全方面英特尔提供AES-SI指令,英特尔可信执行技术;而在第三方面,英特尔则提供智能电源管理技术,通过自动地将处理器和内存置于最低的不影响性能的功率门限状态,达到低能耗成本的目的。
以虚拟化系统的角度来看,英特尔的虚拟化技术分为以下三部分:
处理器层面:Intel VT-x,专门指集成在所有英特尔至强处理器中的虚拟化硬件辅助功能,提供中断加速提升性能的功能,并提升在线迁移的灵活性。
芯片组层面:Intel VT for Directed I/O(Intel VT-d),指所有英特尔芯片组中的虚拟化硬件辅助功能,通过直接任务指派提升IO性能,以及内存保护功能。
外部IO层面(网络):Intel VT for Connectivity(Intel VT-c),指所有英特尔网络和IO设备中的虚拟化硬件辅助功能,如英特尔的万兆以太网卡,虚拟化技术提升了英特尔10GbE网卡的吞吐量高达2倍,同时,支持CPU卸载日常IO任务。
从处理器、芯片组再到网卡,实现了兼容的服务器资源池、为虚拟化而优化的IO以及简化了存储和网络接口。以属于处理器层面的Intel VT Flex Migration技术为例,其支持了从原有的至强5400双核到至强5500、至强5600双核、四核处理器的平滑的VMotion迁移,事实上,如果没有Intel VT Flex Migration技术,VMware虚拟机的实时迁移只能在兼容系统之间完成,比如说,VMware的用户只能用VMotion在具有相同处理器微架构的两个物理服务器之间迁移运行中的虚拟机。
因此,如果没有Intel VT Flex Migration,那么从上一代微架构到Nehalem微架构,再到Westmere、Sandy Bridge微架构,虚拟机是不可以实时迁移的,这就是英特尔硬件辅助虚拟化技术的重要作用之一。
谈到迁移,就不能不提到多个服务器进行整合之后,虚拟化服务器的网络连接问题,对此,英特尔的外部IO层面(网络)虚拟化技术Intel VT-c就是为了提升虚拟化IO设备的性能而设计的,主要是为了优化网络吞吐,增加虚拟服务器之间的连接通畅性。
从本质上来说,这套技术组合的功能与邮局非常相似:将收到的信件、包裹及信封分门别类,然后投递到各自的目的地。通过在专用 网络芯片上执行这些功能,Intel VT-c大幅提高了交付速度,减少了 VMM 与服务器处理器的负载。Intel VT-c包括以下两项关键技术:
1、借助虚拟机设备队列(VMDq)最大限度提高IO吞吐率:在传统服务器虚拟化环境中,VMM 必须对每个单独的数据包进行分类,并将其发送到为其分配的虚拟机。这样会占用大量的处理器周期。
有了VMDq,分类功能可由英特尔服务器网卡内的专用硬件来执行,VMM 只需负责将预分类的数据包组发送到适当的客户操作系统。这将减缓IO延迟,使处理器获得更多的可用周期来处理业务应用。
显著的性能提升效果
2、虚拟机直接互连(VMDc)大幅提升虚拟化性能:借助PCI-SIG 单根IO虚拟化(SR-IOV)标准,虚拟机直接互连(VMDc)支持虚拟机直接访问网络IO硬件,从而显著提升虚拟性能。如前所述,英特尔VT-d 支持客户操作系统与设备I/O 端口之间的直接通信信道。通过支持每个IO端口的多条直接通信信道,SR-IOV 可对此进行扩展。
例如,通过单个英特尔万兆位服务器网卡,可为 10 个客户操作系统中的每个操作系统分配一个受保护的、1 Gb/秒的专用链路。这些直接通信链路绕过了 VMM 交换机,可进一步提升IO性能并减少服务器处理器的负载。
