一种云中心宿主机发生宕机时自动疏散的方法与流程

文档序号:22386866发布日期:2020-09-29 17:49阅读:269来源:国知局
一种云中心宿主机发生宕机时自动疏散的方法与流程

本发明涉及云服务器技术领域,具体的说是一种云中心宿主机发生宕机时自动疏散的方法。



背景技术:

随着以openstack为代表的云计算技术的蓬勃发展,各大云计算厂商都开发出了较为成熟的云计算产品和方案,其中最核心的当属云服务器。全国各地政府和企业都在积极推动传统业务应用的迁移上云,即把原来部署在物理服务器上的业务系统改为部署到云服务器上。虽然目前的虚拟化技术已经较为成熟,但在实际运行过程中难免出现故障差错,其中宿主机的故障宕机就是一种比较严重的故障,宕机的原因可能是cpu、内存、网卡等硬件出现问题,也可能是宿主机操作系统出现故障。当宿主机故障宕机时,影响的将是其上若干虚拟机中运行的业务。因此,开发一种能够在宿主机出现故障时自动对宿主机上面的虚拟机迁移疏散的方法,尽可能地缩短用户业务的中断时间,减少宿主机故障对用户造成的损失就非常有必要。



技术实现要素:

本发明针对云中心计算集群中的宿主机可能会发生故障,人工巡检不能及时发现,导致用户部署在云平台上的服务访问中断的问题,提供一种云中心宿主机发生宕机时自动疏散的方法,以能够自动检测云中心的宿主机的健康状况,并在检测到宿主机出现故障时自动对故障宿主机进行断电隔离,进而自动将故障宿主机的虚拟机疏散迁移到集群中其他正常的宿主机上。

本发明的一种云中心宿主机发生宕机时自动疏散的方法,解决上述技术问题采用的技术方案如下:

一种云中心宿主机发生宕机时自动疏散的方法,该方法包括触发和执行两个环节;

在触发环节,实时采集集群中宿主机的运行状态,将采集到的数据与正常值进行比较,根据比较结果判断宿主机是否发生故障,在判断宿主机发生故障宕机时,调用命令关闭发生故障宿主机,随后调用迁移疏散接口,将故障宿主机的id发送给服务程序,进行执行环节;

在执行环节,根据接收到的故障宿主机id,查询该故障宿主机的虚拟机信息,随后查询出集群中其余正常宿主机的信息,计算得出宿主机和虚拟机的映射关系,执行疏散操作。

进一步的,在触发环节,实时采集集群中宿主机的运行状态后,首先判断宿主机电源状态是不是off,如果宿主机电源off,则直接调用迁移疏散接口,如果宿主机电源不是off,则进一步判断宿主机是否发生故障。

进一步的,在触发环节,通过ipmi协议周期性采集集群中宿主机的运行状态;

在判断宿主机发生故障宕机时,通过ipmi命令关闭发生故障宕机的宿主机。

优选的,所涉及运行状态包括电源状态、cpu状态、内存状态、网卡状态。

进一步的,疏散操作执行完毕后记录疏散结果,如果对同一宿主机连续疏散失败三次,则停止触发疏散,提示人工干预。

更进一步的,开始进行执行环节时,根据接收到的故障宿主机id,首先判断该故障宿主机是否正处于疏散过程中,然后判断该宿主机之前是否进行过疏散或该宿主机之前进行疏散的次数是否不超过三次,再判断该宿主机有没有状态翻转,在故障宿主机未处于疏散过程、之前没有进行过疏散或疏散次数不超过三次、且没有状态翻转时,查询该故障宿主机的虚拟机信息,随后查询出集群中其余正常宿主机的信息,计算得出宿主机和虚拟机的映射关系,执行疏散操作。

更进一步的,计算得出宿主机和虚拟机的映射关系,这一过程具体包括:

首先确定集群中有充足的cpu和内存资源,

其次根据故障宿主机的id来查询需要疏散的虚拟机有哪些,并统计出这些虚拟机的cpu、内存分别是多少,

随后计算出集群中其余正常宿主机可以提供的cpu、内存是多少,

最后得出宿主机和虚拟机的映射关系,决定故障宿主机所对应虚拟机的疏散结果。

优选的,得出宿主机和虚拟机的映射关系后,调用基于openstack接口开发的疏散接口,将故障宿主机所对应的虚拟机合理分配到集群中其余正常宿主机上。

优选的,在执行环节,所述虚拟机信息包括虚拟机的id、名称、cpu核数、内存大小,集群中其余正常宿主机的信息包括宿主机的id、名称、可用cpu核数、可用内存。

本发明的一种云中心宿主机发生宕机时自动疏散的方法,与现有技术相比具有的有益效果是:

1)本发明可以周期性采集集群中宿主机的状态信息,并在检测到宿主机出现故障时自动对故障宿主机进行断电隔离,进而自动将故障宿主机的虚拟机疏散迁移到集群中其他正常的宿主机;

2)本发明提高了云中心的容灾性和稳定性,能够有效地保护用户部署在虚拟机上的系统稳定运行和数据安全,对于云中心的运维保障具有重要意义。

附图说明

附图1是本发明的触发环节的流程图;

附图2是本发明实施例二中执行环节步骤b1)的流程图;

附图3是本发明实施之前的部署流程图。

具体实施方式

为使本发明的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本发明的技术方案进行清楚、完整的描述。

实施例一:

本实施例提出一种云中心宿主机发生宕机时自动疏散的方法,该方法包括a)触发环节和b)执行环节。

a)在触发环节,结合附图1:

a1)通过ipmi协议周期性采集集群中宿主机的运行状态,运行状态包括电源状态、cpu状态、内存状态、网卡状态,

a2)随后判断宿主机电源状态是不是off,

a2-a)如果宿主机电源off,则直接执行步骤a4),

a2-b)如果宿主机电源不是off,则进一步将采集到的数据与正常值进行比较,并根据比较结果判断宿主机是否发生故障,继续执行步骤a3),

a3)在判断宿主机发生故障宕机时,通过ipmi命令关闭发生故障宿主机,

a4)调用迁移疏散接口,将故障宿主机的id发送给服务程序,进行执行环节。

b)在执行环节:

b1)根据接收到的故障宿主机id,如host-xxx,查询该故障宿主机的虚拟机信息,虚拟机信息包括虚拟机的id、名称、cpu核数、内存大小,

b2)随后查询出集群中其余正常宿主机的信息,集群中其余正常宿主机的信息包括宿主机的id、名称、可用cpu核数、可用内存,

b3)基于查询到的信息,首先确定集群中有充足的cpu和内存资源,其次根据故障宿主机的id来查询需要疏散的虚拟机有哪些,并统计出这些虚拟机的cpu、内存分别是多少,随后计算出集群中其余正常宿主机可以提供的cpu、内存是多少,最后得出宿主机和虚拟机的映射关系,

b4)根据宿主机和虚拟机的映射关系,决定故障宿主机所对应虚拟机的疏散结果,并调用基于openstack接口开发的疏散接口,将故障宿主机所对应的虚拟机合理分配到集群中其余正常宿主机上。

实施例二:

本实施例提出一种云中心宿主机发生宕机时自动疏散的方法,该方法包括a)触发环节和b)执行环节。

a)在触发环节,结合附图1:

a1)通过ipmi协议周期性采集集群中宿主机的运行状态,运行状态包括电源状态、cpu状态、内存状态、网卡状态,

a2)随后判断宿主机电源状态是不是off,

a2-a)如果宿主机电源off,则直接执行步骤a4),

a2-b)如果宿主机电源不是off,则进一步将采集到的数据与正常值进行比较,并根据比较结果判断宿主机是否发生故障,继续执行步骤a3),

a3)在判断宿主机发生故障宕机时,通过ipmi命令关闭发生故障宿主机,

a4)调用迁移疏散接口,将故障宿主机的id发送给服务程序,进行执行环节。

b)在执行环节:

b1)根据接收到的故障宿主机id,如host-xxx,依次执行步骤b1.1)-b1.4)结合附图2:

b1.1)判断该故障宿主机是否正处于疏散过程中,如果是,则直接结束,如果否,则继续执行步骤b1.2),

b1.2)判断该宿主机之前是否进行过疏散,如果是,则继续执行步骤b1.3),如果否,则执行步骤b2),

b1.3)判断该宿主机有没有状态翻转,如果没有状态翻转,则执行步骤b2),如果有状态翻转,表明疏散结果成功,

b1.4)进一步判断该宿主机之前进行疏散的次数是否不超过三次,如果不超过三次,则执行步骤b2),如果超过三次,则停止触发疏散,提示人工干预;

b2)根据接收到的故障宿主机id,查询该故障宿主机的虚拟机信息,虚拟机信息包括虚拟机的id、名称、cpu核数、内存大小,

b3)随后查询出集群中其余正常宿主机的信息,集群中其余正常宿主机的信息包括宿主机的id、名称、可用cpu核数、可用内存,

b4)基于查询到的信息,首先确定集群中有充足的cpu和内存资源,其次根据故障宿主机的id来查询需要疏散的虚拟机有哪些,并统计出这些虚拟机的cpu、内存分别是多少,随后计算出集群中其余正常宿主机可以提供的cpu、内存是多少,最后得出宿主机和虚拟机的映射关系,

b5)根据宿主机和虚拟机的映射关系,决定故障宿主机所对应虚拟机的疏散结果,进行疏散操作:调用基于openstack接口开发的疏散接口,将故障宿主机所对应的虚拟机合理分配到集群中其余正常宿主机上。

针对上述两个为实施例,需要补充的是,结合附图3,本方法实施之前,首先,需要部署采集程序,配置集群中宿主机的ipmi信息,以便于通过ipmi协议周期性采集集群中宿主机的运行状态,随后,将宿主机信息导入数据库,并在服务端部署疏散程序,开启采集程序,即可一次进行触发环节和执行环节。

综上可知,采用本发明的一种云中心宿主机发生宕机时自动疏散的方法,可以周期性采集集群中宿主机的状态信息,并在检测到宿主机出现故障时自动对故障宿主机进行断电隔离,进而自动将故障宿主机的虚拟机疏散迁移到集群中其他正常的宿主机,有效保护用户部署在虚拟机上的系统稳定运行和数据安全。

以上应用具体个例对本发明的原理及实施方式进行了详细阐述,这些实施例只是用于帮助理解本发明的核心技术内容。基于本发明的上述具体实施例,本技术领域的技术人员在不脱离本发明原理的前提下,对本发明所作出的任何改进和修饰,皆应落入本发明的专利保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1