论文部分内容阅读
近年来,虚拟化技术凭借其良好的独立性、高资源利用率和容易管理的特性备受业界关注,已经在数据中心的系统安全、负载均衡、服务器管理整合等方面得到广泛的应用。虚拟化环境下,一台物理机能通过虚拟机监视器虚拟出多台虚拟机为用户提供服务。随着虚拟化技术的发展,虚拟机的高可用性成为阻碍其发展的重要因素。双机热备技术借助于虚拟机的跨平台移植和与底层硬件无关的特性,采用主从复制(Primary-Backup)方案,即通过构建备份的方法降低系统故障概率来提高虚拟机的可靠性,实现了低成本、高效率的虚拟机容错机制,已成为保障虚拟机高可用性的重要手段之一。与此同时,传统双机热备技术在双机热备过程中存在主从虚拟机间数据同步时造成虚拟机和服务暂时终止以及影子页表频繁销毁与重建的问题,导致虚拟机可用性大打折扣,因此,如何提高虚拟机双机热备的可用性成为急待解决的问题。常用的虚拟机技术Xen、VMware和KVM都在虚拟机可用性方面作出了研究。论文描述了虚拟化技术的研究背景、研究现状及意义,分析了虚拟机系统的基本原理和实现的关键技术,并列举了几个典型的虚拟机例子,重点阐述了基于Xen的传统虚拟机双机热备技术Remuso借鉴虚拟机动态迁移中的迭代传输思想,提出一种基于双影子页表实现零停机的虚拟机双机热备方法。该方法采用检查点机制,将主虚拟机工作周期分为运行和同步两个阶段,双影子页表交替作为主页表和备用页表。运行阶段,主页表记录主虚拟机操作,并利用最近最常访问算法从中挑选页保存到备用页表,以减少下次运行时影子页表的重建时间;同步阶段,主虚拟机不停机,备用页表转为主页表,记录主虚拟机操作,原主页表作为备用页表实现主虚拟机与备份虚拟机的同步。实验结果表明,该方法在虚拟机内存变化频繁的情况下对主虚拟机可用性有较大的改进。