论文部分内容阅读
随着云计算技术的逐渐普及,云平台的可靠性越来越显得重要。为运行在云平台上的应用程序提供有效的容错服务是亟需解决的关键问题。OpenStack云平台的一个重要功能是虚拟机的实时迁移。虚拟机的实时迁移功能是指将虚拟机从当前工作的物理机器上转移到另一个物理机器上,在转移的过程中,不影响虚拟机的正常工作,对用户实现透明性。通过实时迁移,可以实现容错的目的。然而,当前OpenStack平台的实时迁移功能,只能通过管理员手动进行,具有一定的滞后性,在选择迁移的源物理机和目标物理机时,考虑因素不够全面。针对在OpenStack云平台中,实时迁移虚拟机的功能只能由管理员手动进行的问题,本文提出了一种主动式实时迁移虚拟机的容错方法,该方法是通过对云平台中物理节点的系统资源与硬件情况进行实时监控并分析,将可能因为负载不均而出现系统故障的物理节点上的虚拟机实时迁移到合适的其他物理节点上,实现主动式容错服务。通过该服务能够预防云平台服务器集群在运行的过程中,由于某个物理节点长时间处于高负载状态导致的系统错误,达到提升云平台服务器集群运行稳定性的效果。论文主要完成以下三方面的工作:(1)分析OpenStack云平台的整体架构,对平台实时迁移功能的工作流程和源代码进行研究,找到该功能中可以改进的地方,即对平台中的实时迁移功能进行扩展,对虚拟机进行主动式的实时迁移。因此设计了能够基于OpenStack平台进行主动式实时迁移功能的容错服务系统。(2)介绍基于OpenStack虚拟机迁移的主动容错服务的设计与实现:本系统是由Python语言编写实现的,主要包括四个部分:监控模块、分析模块、通信模块、容错迁移模块,本论文将会对这四个模块的设计流程以及具体的实现方法进行介绍。(3)搭建实验环境并进行测试分析:首先搭建OpenStack平台,并对平台进行设置与NFS安装,保证实时迁移功能的正确运行;由于系统需要对主机环境监控,包括系统资源和主机硬件资源,因此需要在主机上安装Psutil库、Lm-sensors工具;为了实现节点间的通信需要安装Twisted框架;由于系统是对虚拟机进行调度,所以需要安装OpenStack Client客户端来调用OpenStack平台的实时迁移命令。环境搭建完成后,对系统进行模块测试和系统测试,模块测试包括对监控、分析、通信、容错迁移四个模块分别进行测试,系统测试包括模拟网上购物系统和实时播报系统两个场景对系统的整体功能进行测试。