论文部分内容阅读
摘 要 服务器虚拟化可以有效地提高硬件资源利用率,降低运维成本,同时为搭建云计算平台提供基础。作为服务器虚拟化的一项关键特性,动态迁移技术可以减少部署时间和宕机时间,实现服务器的高可用性。本文针对人工控制迁移存在的不足,对迁移框架进行了改进,增加了脏页集,并基于虚拟机进行了测试。结果表明,该框架能够实现动态迁移,减少迁移时间,并提高用户的服务质量。
关键词 虚拟化;动态迁移;云计算;脏页
中图分类号:TP302 文献标识码:A 文章编号:1671-7597(2013)15-0049-02
根据摩尔定律,计算机的性能每18个月就会提升1倍。高速发展的信息化技术使得有限的IT投资无法满足硬件的更新需求。因此,需要对现有的硬件资源进行整合,以实现有限资源的最大化利用。虚拟化作为重要的计算机支撑技术,将服务封装在虚拟机中,通过监视负载的变化来实现动态的资源调度。其中,重映射可以通过动态迁移技术来实现。
目前,虚拟机的迁移技术还停留在人工控制阶段,需要有经验的人员,根据负载状态来选择服务器资源进行迁移。这种管理模式不仅实效性差,而且,由于人员过多的参与迁移过程,很容易在迁移过程中出现失误,导致迁移失败。
1 虚拟化迁移中的动态迁移
虚拟化迁移分为静态迁移和动态迁移,静态迁移是将服务器停机后,通过离线克隆的方式进行迁移。在迁移过程中,数据封闭且保持稳定,具有较高的迁移成功率。但是,这种方式需要较长的停机时间。
动态迁移则是在线进行迁移。迁移过程主要是对内存状态进行拷贝,而对于随时产生的脏页,需要循环复制和覆盖来完成。随着循环次数的增加,所需迁移的脏页会减少,每轮迁移的时间也会缩短。当剩余的脏页足够少时,暂停源主机,并将最后产生的脏页和运行状态一起复制到目标服务器上,随后启动目标服务器,完成切换。因停机的时间极为短暂,故使用动态迁移的方法可以保证用户的服务质量。
2 动态迁移自动化
目前动态迁移仍处于人工控制阶段,管理员在发现服务器出现重负载时,手动发起迁移。这就需要管理员对服务器的运行状态进行实时监控,并在极短的时间内找到资源充足的服务器作为接收方,而找寻过程会产生滞后,延误迁移时机。另外,手动迁移还需要修改配置文件、输入迁移命令等,容易引发操作失误。
所以,需要自动化控制迁移过程,完成自动监测,自动搜寻和自动发起,并要在尽可能短的时间内完成整个迁移过程,减少失败的风险。
3 动态迁移框架
传统的动态迁移是通过循环复制内存页的方式来实现,这种方式对频繁产生的同一个脏页进行重复复制,增加了迁移时间。本文针对此进行了改进,通过记录形成脏页集,并对重复出现的脏页进行过滤,缩短了每轮的迁移时间。
如图1所示,控制中心包含资源实时监控和迁移管理控制。物理服务器上有实时监控器和迁移控制器。实时监控器监控物理服务器和虚拟机的运行状态。实时监控中心通过请求的方式来获取物理服务器的资源状态。迁移控制中心根据实时监控中心提供的情况,自动检测出重负载服务器,并查找备选机,发出迁移指令。迁移控制器接收指令后发起迁移。
相比于传统的动态迁移,本文框架增加了脏页记录集,根据“Recently Used Will Be Used Again”的思想,记录产生的脏页,并过滤重复出现的脏页。具体思想是,认为刚刚被访问的内存页有很大可能被再次访问,因而对重复出现的脏页只做记录,并将记录外的“非脏页”进行迁移。随着迁移进行,需要迁移的脏页会越来越少,每轮迁移的时间也会随之减少,进而使产生脏页的时间减少,当系统达到设定的限制条件时,源虚拟机停机,新虚拟机唤醒,该切换只需要极短的时间,用户几乎无法感知。
4 框架实现
本文基于Xen虚拟机,对上述框架予以实现,并分析动态迁移的整个过程。
设置A、S和D三台机器,分别作为管理服务器,源服务器和目标服务器,三台机器部署在同一个网络中。S上运行虚拟文档服务器和FTP服务器。
分析图2,FTP服务器在4秒时出现重负载,A检测到D处于空闲,命令S向D迁移。迁移持续时间约14秒,此间,迁移本身占用的带宽导致FTP服务器带宽下降。在第23秒左右时,原FTP服务器停机,带宽降低为0,随后新FTP服务器启动,带宽恢复至迁移前的状态,迁移过程结束。
图3为关闭脏页记录集后测得的数据,在22秒时,图2中带宽出现下降,表明迁移提前进入停机状态,进而推断,因脏页集的作用,迭代过程中每次拷贝的脏页数减少,从而缩短了迁移时间。
5 总结
服务器虚拟化是实现云计算的基础,虚拟服务器的动态迁移效率直接影响用户的服务质量。随着计算的规模增大,计算资源愈发显得不足,因此,搭建虚拟服务器并实现虚拟服务器之间的动态迁移,可以为用户提供无缝的服务,进而减少服务器的宕机时间,从总体上提高整个计算资源的可用性。本文探讨了一种新型的动态迁移模型,并引入脏页集,对迁移过程进行了优化,实验表明,该框架可以有效缩短迁移时间,提高用户满意度。
参考文献
[1]唐彦,肖亮.服务器虚拟化关键技术探析[J].2012(3):11-14.
[2]彭安鑫.面向云计算的虚拟机动态迁移研究[D].2012(6):31-32.
[3]刘鹏程,陈榕.面向云计算的虚拟机动态迁移框架[J].计算机工程,2010,36(5):37-38.
[4]胡晓昌,丁丽萍,武延军.基于虚拟机执行过程重放的热迁移系统研究[J].计算机工程与设计,2010,31(19):4213-4217.
[5]孙国飞,谷建华,胡金华,赵天海.基于预拷贝的虚拟机动态内存迁移机制改进[J].计算机工程,2011,37(13):37-38.
关键词 虚拟化;动态迁移;云计算;脏页
中图分类号:TP302 文献标识码:A 文章编号:1671-7597(2013)15-0049-02
根据摩尔定律,计算机的性能每18个月就会提升1倍。高速发展的信息化技术使得有限的IT投资无法满足硬件的更新需求。因此,需要对现有的硬件资源进行整合,以实现有限资源的最大化利用。虚拟化作为重要的计算机支撑技术,将服务封装在虚拟机中,通过监视负载的变化来实现动态的资源调度。其中,重映射可以通过动态迁移技术来实现。
目前,虚拟机的迁移技术还停留在人工控制阶段,需要有经验的人员,根据负载状态来选择服务器资源进行迁移。这种管理模式不仅实效性差,而且,由于人员过多的参与迁移过程,很容易在迁移过程中出现失误,导致迁移失败。
1 虚拟化迁移中的动态迁移
虚拟化迁移分为静态迁移和动态迁移,静态迁移是将服务器停机后,通过离线克隆的方式进行迁移。在迁移过程中,数据封闭且保持稳定,具有较高的迁移成功率。但是,这种方式需要较长的停机时间。
动态迁移则是在线进行迁移。迁移过程主要是对内存状态进行拷贝,而对于随时产生的脏页,需要循环复制和覆盖来完成。随着循环次数的增加,所需迁移的脏页会减少,每轮迁移的时间也会缩短。当剩余的脏页足够少时,暂停源主机,并将最后产生的脏页和运行状态一起复制到目标服务器上,随后启动目标服务器,完成切换。因停机的时间极为短暂,故使用动态迁移的方法可以保证用户的服务质量。
2 动态迁移自动化
目前动态迁移仍处于人工控制阶段,管理员在发现服务器出现重负载时,手动发起迁移。这就需要管理员对服务器的运行状态进行实时监控,并在极短的时间内找到资源充足的服务器作为接收方,而找寻过程会产生滞后,延误迁移时机。另外,手动迁移还需要修改配置文件、输入迁移命令等,容易引发操作失误。
所以,需要自动化控制迁移过程,完成自动监测,自动搜寻和自动发起,并要在尽可能短的时间内完成整个迁移过程,减少失败的风险。
3 动态迁移框架
传统的动态迁移是通过循环复制内存页的方式来实现,这种方式对频繁产生的同一个脏页进行重复复制,增加了迁移时间。本文针对此进行了改进,通过记录形成脏页集,并对重复出现的脏页进行过滤,缩短了每轮的迁移时间。
如图1所示,控制中心包含资源实时监控和迁移管理控制。物理服务器上有实时监控器和迁移控制器。实时监控器监控物理服务器和虚拟机的运行状态。实时监控中心通过请求的方式来获取物理服务器的资源状态。迁移控制中心根据实时监控中心提供的情况,自动检测出重负载服务器,并查找备选机,发出迁移指令。迁移控制器接收指令后发起迁移。
相比于传统的动态迁移,本文框架增加了脏页记录集,根据“Recently Used Will Be Used Again”的思想,记录产生的脏页,并过滤重复出现的脏页。具体思想是,认为刚刚被访问的内存页有很大可能被再次访问,因而对重复出现的脏页只做记录,并将记录外的“非脏页”进行迁移。随着迁移进行,需要迁移的脏页会越来越少,每轮迁移的时间也会随之减少,进而使产生脏页的时间减少,当系统达到设定的限制条件时,源虚拟机停机,新虚拟机唤醒,该切换只需要极短的时间,用户几乎无法感知。
4 框架实现
本文基于Xen虚拟机,对上述框架予以实现,并分析动态迁移的整个过程。
设置A、S和D三台机器,分别作为管理服务器,源服务器和目标服务器,三台机器部署在同一个网络中。S上运行虚拟文档服务器和FTP服务器。
分析图2,FTP服务器在4秒时出现重负载,A检测到D处于空闲,命令S向D迁移。迁移持续时间约14秒,此间,迁移本身占用的带宽导致FTP服务器带宽下降。在第23秒左右时,原FTP服务器停机,带宽降低为0,随后新FTP服务器启动,带宽恢复至迁移前的状态,迁移过程结束。
图3为关闭脏页记录集后测得的数据,在22秒时,图2中带宽出现下降,表明迁移提前进入停机状态,进而推断,因脏页集的作用,迭代过程中每次拷贝的脏页数减少,从而缩短了迁移时间。
5 总结
服务器虚拟化是实现云计算的基础,虚拟服务器的动态迁移效率直接影响用户的服务质量。随着计算的规模增大,计算资源愈发显得不足,因此,搭建虚拟服务器并实现虚拟服务器之间的动态迁移,可以为用户提供无缝的服务,进而减少服务器的宕机时间,从总体上提高整个计算资源的可用性。本文探讨了一种新型的动态迁移模型,并引入脏页集,对迁移过程进行了优化,实验表明,该框架可以有效缩短迁移时间,提高用户满意度。
参考文献
[1]唐彦,肖亮.服务器虚拟化关键技术探析[J].2012(3):11-14.
[2]彭安鑫.面向云计算的虚拟机动态迁移研究[D].2012(6):31-32.
[3]刘鹏程,陈榕.面向云计算的虚拟机动态迁移框架[J].计算机工程,2010,36(5):37-38.
[4]胡晓昌,丁丽萍,武延军.基于虚拟机执行过程重放的热迁移系统研究[J].计算机工程与设计,2010,31(19):4213-4217.
[5]孙国飞,谷建华,胡金华,赵天海.基于预拷贝的虚拟机动态内存迁移机制改进[J].计算机工程,2011,37(13):37-38.