基于内存分块相异数据的虚拟机同步机制
2012-08-07廖剑伟陈善雄李莉
通信学报 2012年1期
廖剑伟,陈善雄,李莉
(西南大学 计算机与信息科学学院,重庆 400715)
1 引言
随着云计算技术的发展,虚拟化技术推动着整合计算机硬件和软件系统并向外界提供弹性、可扩展性和可靠性的虚拟化服务[1]。虚拟机(VM, virtual machine)复制技术是云计算环境下提高系统可靠性的重要机制,一旦主虚拟机所属的物理机器发生崩溃或者主虚拟机本身发生崩溃而无法继续提供服务时,位于云计算机环境中的其他物理机器上的备份虚拟机会接替已崩溃的主虚拟机重新向外界提供服务,从而提高服务的可用性和系统的可靠性[2,3,17]。
在主虚拟机正常工作状态下,需要同步主虚拟机和备份虚拟机状态,通常通过检查点技术或者其他技术将主虚拟机的虚拟磁盘和内存状态定期的保存并通过网络发送至备份虚拟机帮助其更新虚拟机状态,使备份虚拟机与主虚拟机最近的检查点时状态一致[2,4,5]。然而系统性能是虚拟机同步操作的最大挑战,通常虚拟机可能占据几GB的内存,因此同步虚拟机状态是一个相当重量级的操作[2,5]。为了减少虚拟机同步操作时主虚拟机的停止运行时间、内存复制和网络传送的数据量,诸如预复制(pre-copy)[6]、I/O deduplication[7]和写时复制(copyon-write)[8]等优化技术相继被提出,尽管这些技术从一定程度上减少了虚拟机同步操作带来的性能代价,但是没有从根本上解决需要处理并通过网络传送的庞大数据量。以写时复制为例,它需要保存自上一同步点以来的发生变化的所有页面,即使某页面仅仅改变了一个字节,也需要保存并发送该完整的内存页面[8]。……
登录APP查看全文
