虚拟机在线迁移性能优化关键技术探讨

2016-05-14 08:44杨丽丽
电子技术与软件工程 2016年6期
关键词:性能优化虚拟机关键技术

摘 要在云计算平台下,虚拟机在线迁移得到了广泛使用。但就目前来看,虚拟机在线迁移性能会受到检查点性能的影响,从而不利于虚拟机在线迁移的实现。因此,基于这种认识,本文对内存空洞排除技术、写时复制技术、增量检查点技术这几种虚拟机在线迁移性能优化的关键技术展开了探讨,从而为关注这一话题的人们提供参考。

【关键词】虚拟机 在线迁移 性能优化 关键技术

使用虚拟化技术,可以有效实现资源的整合和利用,所以能够给企业的数据资源管理提供较大的便利。利用虚拟机在线迁移,则能够在不中断虚拟机运行的情况下实现虚拟机内存数据和运行状态的转移,所以能够更好的为用户提供服务。而考虑到虚拟机在线迁移的性能问题,还应该利用有关技术实现其迁移性能的优化,继而更好的为用户使用虚拟化技术提供便利。

1 虚拟机在线迁移原理及不足

所谓的虚拟机在线迁移,其实就是在多个物理主机之间迁移虚拟机的一种技术。利用该技术,可以在不中断服务应用的情况下进行虚拟机内存数据、状态和操作系统的转移。在迁移的过程中,需要先进行与虚拟机相关的内存空间的自动捕捉,然后将数据包以协议包方式在服务器上转移。经过加载,新服务器将能出现处理器寄存器状态,从而实现对原有虚拟机数据业务的无缝接管。由于大多数虚拟机是在同种管理程序服务下迁移,所以新虚拟机可以对原本虚拟机的名称和特性进行保留。而对于用户来讲,虽然位于不同的服务器,但是这些虚拟机基本完全相同。

在虚拟机迁移的过程中,虚拟机管理器都需要进行虚拟机运行的瞬时状态到磁盘介质的机制的保存,并且从镜像文件中执行恢复虚拟机的操作。而这个镜像文件就是虚拟机的检查点文件,其需要对整个操作系统进行保存,所以将产生较大的粒度和开销,因此会直接影响虚拟机的在线迁移性能。但就目前来看,云计算机环境下的操作系统的检查点基本难以满足虚拟计算系统服务持续性需求。为确保虚拟机的执行性能,虚拟机需要配置更多的物理内存,从而导致检查点需要保存的数据较多。

2 虚拟机在线迁移性能优化关键技术

2.1 内存空洞排除技术

在虚拟机内存镜像中,其实有较多信息对恢复检查点的执行不具有意义。通过利用内存空洞排除技术,则能够从检查点中进行这些信息的排除,从而通过优化检查点的性能实现虚拟机在线迁移性能优化。在应用该技术时,如何进行虚拟机内存镜像中空闲页面的快速有效识别是关键的问题。就目前来看,可以利用两种策略实现这一目标。

利用用户操作系统的虚拟机管理器,可以对虚拟机内存映射进行动态调整。同时,在客户操作系统中,还拥有一个内存管理驱动程序,可以向操作系统申请分配内存。利用该程序,可以通过膨胀欺骗操作系统并获取内存,但是同时也能从虚拟机管理器中获得内存并交还系统。在这一过程中,可以在用户操作系统中添加内存使用信息采集模块,从而将系统内核维护信息传递到虚拟机管理器。而采取该种措施,将能有效减小虚拟机内存配置,所以能够减小检查点大小。

利用无用数据的方法,可以利用操作系统内核信息及数据页本身的内容,所以也能够减小检查点的大小。在机器内存和客户机伪物理地址之间,虚拟机管理器需要对二者的映射关系进行维护。而对于虚拟机管理器来讲,只有所有的物理内存都将得到使用,操作系统才能拥有被真正使用的内存页面。利用虚拟机内省机制,则能够直接进行虚拟机内存页面使用状态的获取,所以可以避免对空闲的内存页面进行保存。因此,使用该种策略也能够避免检查点保存过程中出现遗漏内存页面的问题,所以能够有效优化检查点性能。

2.2 写时复制技术

就目前来看,需要使用停止-拷贝的方式进行虚拟机检查点实现。但是,由于需要在保存检查点的过程中避免虚拟机运作中断,所以还应该尽量缩短检查点的停机时间。具体来讲,就是利用写时复制技术进行虚拟机内存镜像的保存。利用该机制,可以将数据设置成只读状态,并且先进行数据副本的复制,然后再进行数据的修改和更新。保存虚拟机内存镜像时,则需要将所有页面设置为只读模式,并且按照内存页面PFN号进行这些页面的拷贝,然后将已经复制到检查点的页面的只读标志清除。如果需要进行页面的修改,检查点后台处理程序就会将这些即将变脏的内存页面拷贝到只读缓冲区,然后将页面的只读标志清除。而只有在页面第一次被修改时,页面才会被拷贝到缓冲区。所以利用该技术,可以使内存拷贝过程中的检查点开销得到减小,因此能够实现对虚拟机在线迁移性能的优化。

2.3 增量检查点技术

在一些情况下,为使系统具有较高的可用性和可靠性,需要进行系统检查点的频繁保存。而使用检查点技术,可以使检查点开销得到有效减少。具体来讲,就是在进行检查点保存时,可以利用增量保存机制根据脏页位图进行被修改的页面的拷贝。完成检查点保存后,则可以将脏页位图清零,并且进行下一次需要保存的内存页的记录。在进行虚拟机状态保存的过程中,如果在虚拟机状态被保存到检查点文件后,文件系统的数据得到了修改,就容易导致利用检查点文件恢复虚拟机的操作出现错误。而通过建立保证检查点文件和虚拟机文件系统状态一致的模型,并且利用增量检查点技术就能够进行一个完整的虚拟机状态的保存。因此,利用增量检查点技术,可以使虚拟机的外存数据和内存镜像状态保持一致,所以能够有效减少检查点开销。

3 结论

总而言之,针对虚拟机在线迁移的检查点粒度大和开销大的问题,可以利用内存空洞排除技术、写时复制技术、增量检查点技术进行检查点性能的优化,从而实现虚拟机在线迁移性能的优化。

参考文献

[1]陈阳,怀进鹏,胡春明.基于内存混合复制方式的虚拟机在线迁移机制[J].计算机学报,2011(12):2278-2291.

[2]苗国义,穆瑞辉.云计算环境下虚拟机在线迁移策略研究[J].计算机测量与控制,2013(08):2227-2229+2233.

[3]徐志红,刘进军,赵生慧.基于同步机制的虚拟机磁盘在线迁移策略[J].计算机工程,2012(09):291-293.

作者简介

杨丽丽(1977-),男,陕西省商洛市人。学士学位。2001年毕业于陕西经贸学院。现为商洛学院网络中心高级工程师。研究方向为网络技术。

作者单位

商洛学院网络中心 陕西省商洛市 726000

猜你喜欢
性能优化虚拟机关键技术
小麦春季化控要掌握关键技术
棉花追肥关键技术
成功育雏的关键技术
老苹果园更新改造的关键技术
SQL Server数据库性能优化的几点分析
Web应用的前端性能优化
浅谈计算机系统虚拟化网络设置方案
任务驱动教学法在《网络应用服务管理》教学中的应用
虚拟机局域网组建技术应用初探
Oracle数据库性能调整与优化分析