云计算 频道

虚拟化技术在高性能计算机中的应用研究

  系统容错——基于Xen的主动容错系统

  随着高性能计算机系统规模的扩大,系统故障率大大增加,传统的容错技术难以满足高性能计算机可靠性的要求。针对上述问题,Nagarajan和Mueller等人在Xen的基础七实现了一种主动容错机制,允许进程自动地从失效节点迁移到健康节点。

  该主动容错系统主要包括三种机制:容错机制、节点失效预测和负载平衡机制。

  (1)基于Xen的容错机制。高效的容错机制必须能够在系统出错时花费最小的开销对计算任务进行重定位,使其能在不同的物理节点上运行。更重要的是,在计算任务迁移时不应该中断任务本身的执行。基于Xen半虚拟化技术,VM可以在节点出错时进行动态迁移。通过预迁移方法,可以避免中断任务运行,使VM内的所有状态预先迁移到目标VM。迁移过后,VM可以从迁移前的状态继续向下执行。

  (2)基于IPMI的节点失效预测。作为主动容错系统,必须具备预测某峰未来事件的能力。通过采用智能平台管理接口(IPMI)可以实现系统系统运行状态的实时监控,预测未来的节点失效事件。当预测到某节点即将失效时,可以通知系统启动上述容错机制,主动将该节点上的VM迁移到健康节点上。

  (3)基于Ganglia的负载平衡。VM迁移之前需要进行目标节点的选择。该系统中采用Ganglia监控各节点的本地资源使用状态,并将监控数据发送给其它节点,使所有节点都可以获得整个集群系统的全局状态。VM迁移时根据最新的全局状态选择目标节点。

  虚拟化系统环境——VSE

  在构建虚拟化系统环境方面,美国橡树岭国家实验室的Engelmann C等人提出一种虚拟系统环境(Virtual Systern Environment,简称VSE)。VSE具有良好的虚拟环境隔离性,可用于为高性能计算应用程序的开发和部署提供沙盒(Sandbox)环境,也可以支持系统软件的开发和部署。

  (1)VSE的系统架构。

  VSE采用了系统级的虚拟机管理器(VMM)和VM配置机制,为高性能计算机系统软件和应用程序的开发和移植提供基础环境的保障。VSE的系统架构如图3所示。


 图3 VSE的系统架构

  VSE的核心部分是VMM。VMM实现对物理硬件资源的抽象,支持虚拟计算节点和虚拟开发节点的部署,以及虚拟节点上操作系统的运行。VMM通过VM保护机制保证VM之间以及VM和宿主机操作系统(Host OS)之间相互隔离。

  (2)VSE的管理机制。

  ①系统管理。VSE采用一组系统管理工具和配置文件进行系统管理。这些系统管理工具和配置文件被用于在VSE系统E创建、部署、清除和销毁VM。

  ②配置管理。VSE采用层次化的VM配置描述管理机制,对操作系统配置、软件环境配置和应用程序配置进行分层描述。配置管理机制支持用户权限的设置,以保证用户环境的隔离性和安全性。

  (3)VSE的应用。

  ①支持应用程序的开发和部署。VSE可支持高性能计算应用程序早期原型的开发。通过在台式电脑上部署VSE,可以构建与目标系统一致的小规模开发环境,开发的应用程序可直接移植目标系统上运行而不需要作任何修改。

  ②支持系统软件的开发和部署。VSE提供一个虚拟的测试平台,通过构建虚拟硬件设备,以VM的形式提供沙盒测试环境,使开发人员不需要卸载原有操作系统软件就可以直接进行新系统的开发和测试。这种开发方式可以保证原有系统软件和其它VM不会受到影响。

0
相关文章