【发明内容】
本发明的多个方面提供一种状态检测方法及系统、管理节点设备,用以提高状态检测的可靠性。
本发明的一方面,提供一种状态检测方法,包括:
管理节点设备确定第一计算节点设备上运行的第一VM与所述管理节点设 备之间的通信发生故障;
所述管理节点设备获取第二VM提供的所述第一VM的状态信息,所述第二VM用于对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备确定第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障,包括:
所述管理节点设备确定无法获取所述第一计算节点设备提供的所述第一VM的状态信息,以确定所述第一VM与所述管理节点设备之间的通信发生故障。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备获取第二VM提供的所述第一VM的状态信息,包括:
所述管理节点设备向所述第二VM发送请求消息,用以请求获取所述第一VM的状态信息;
所述管理节点设备接收所述第二VM根据所述请求消息,发送的所述第一VM的状态信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备获取第二VM提供的所述第一VM的状态信息之前,还包括:
所述管理节点设备创建所述第二VM。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备创建所述第二VM,包括:
所述管理节点设备在所述第一计算节点设备上创建所述第二VM;或者
所述管理节点设备在第二计算节点设备上创建所述第二VM,所述第二计算节点设备与所述第一计算节点设备为不同的计算节点设备。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,在所述管理节点设备在所述第二计算节点设备上创建所述第二VM之后,所述管理节点设备获取第二VM提供的所述第一VM的状态信息之前,还包括:
所述第二VM通过所述第一计算节点设备与所述第二计算节点设备之间的管理网络,获取所述第一VM的状态信息;或者
所述第二VM通过所述第一计算节点设备与所述第二计算节点设备之间的业务网络,获取所述第一VM的状态信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备获取第二VM提供的所述第一VM的状态信息之后,还包括:
所述管理节点设备确定所述第一VM与所述管理节点设备之间的通信恢复正常;
所述管理节点设备获取所述第一计算节点设备提供的所述第一VM的状态信息。
本发明的另一方面,提供一种管理节点设备,包括:
确定单元,用于确定第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障;
获取单元,用于获取第二VM提供的所述第一VM的状态信息,所述第二VM用于对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述确定单元具体用于
确定所述获取单元无法获取所述第一计算节点设备提供的所述第一VM的状态信息,以确定所述第一VM与所述管理节点设备之间的通信发生故障。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述获取单元具体用于
向所述第二VM发送请求消息,用以请求获取所述第一VM的状态信息;以及接收所述第二VM根据所述请求消息,发送的所述第一VM的状态信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备还包括创建单元,用于
在所述获取单元获取第二VM提供的所述第一VM的状态信息之前,创建所述第二VM。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述创建单元具体用于
在所述第一计算节点设备上创建所述第二VM;或者
在第二计算节点设备上创建所述第二VM,所述第二计算节点设备与所述第一计算节点设备为不同的计算节点设备。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
所述确定单元,还用于
确定所述第一VM与所述管理节点设备之间的通信恢复正常;
所述获取单元,还用于
获取所述第一计算节点设备提供的所述第一VM的状态信息。
本发明的另一方面,提供一种状态检测系统,包括:
第一计算节点设备,用于运行第一VM;
管理节点设备,用于确定所述第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障,以及获取第二VM提供的所述第一VM的状态信息,所述第二VM用于对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备具体用于
确定无法获取所述第一计算节点设备提供的所述第一VM的状态信息,以确定所述第一VM与所述管理节点设备之间的通信发生故障。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备具体用于
向所述第二VM发送请求消息,用以请求获取所述第一VM的状态信息;以及接收所述第二VM根据所述请求消息,发送的所述第一VM的状态信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备还用于
在获取第二VM提供的所述第一VM的状态信息之前,创建所述第二VM。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备具体用于
在所述第一计算节点设备上创建所述第二VM;或者
在第二计算节点设备上创建所述第二VM,所述第二计算节点设备与所述第一计算节点设备为不同的计算节点设备,所述系统还包括第二计算节点设备,用于运行所述第二VM。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,
所述第二VM通过所述第一计算节点设备与所述第二计算节点设备之间的管理网络,获取所述第一VM的状态信息;或者
所述第二VM通过所述第一计算节点设备与所述第二计算节点设备之间的业务网络,获取所述第一VM的状态信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述管理节点设备还用于
确定所述第一VM与所述管理节点设备之间的通信恢复正常;以及获取所述第一计算节点设备提供的所述第一VM的状态信息。
由上述技术方案可知,本发明实施例通过管理节点设备创建的第二VM,对第一计算节点设备上运行的第一VM的状态进行监控,以获得所述第一VM的状态信息,使得在所述管理节点设备确定所述第一VM与所述管理节点设备之间的通信发生故障时,所述管理节点设备能够获取第二VM提供的所述第一VM的状态信息,能够避免现有技术中由于管理节点设备无法获取计算节点设备上运行的VM的状态信息而导致的所述管理节点设备误认为是VM出现故障的问题,从而提高了状态检测的可靠性。
【具体实施方式】
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
图1为本发明一实施例提供的状态检测方法的流程示意图,如图1所示。
101、管理节点设备确定第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障。
102、所述管理节点设备获取第二VM提供的所述第一VM的状态信息,所述第二VM用于对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。
本实施例中,第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障,可以有多种情况。例如,所述第一计算节点设备与所述管理节点设备之间的通信连接出现故障;再例如,所述第一计算节点设备与该第一计算节点设备上运行的VM之间的通信连接出现故障;再例如,所述第一计算节点设备的用于所述管理网络的网卡出现故障等情况。
这样,当管理节点设备确定第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障时,可以通过第二VM对所述第一VM的状态进行监控,以获得所述第一VM的状态信息,使得所述管理节点设备能够获取第二VM提供的所述第一VM的状态信息,能够避免现有技术中由于管理节点设备无法获取计算节点设备上运行的VM的状态信息而导致的所述管理节点设备误认为是VM出现故障的问题,从而提高了状态检测的可靠性。
可选地,在本实施例的一个可能的实现方式中,在101中,所述管理节点设备具体可以通过确定无法获取所述第一计算节点设备提供的所述第一VM的状态信息,以确定所述第一VM与所述管理节点设备之间的通信发生故障。
可选地,在本实施例的一个可能的实现方式中,在102中,所述管理节点设备具体可以向所述第二VM发送请求消息,用以请求获取所述第一VM的状态信息;然后,所述管理节点设备则可以接收所述第二VM根据所述请求消息,发送的所述第一VM的状态信息。
可选地,在本实施例的一个可能的实现方式中,在102之前,所述管理节点设备还可以进一步创建所述第二VM。
其中,所述第二VM还可以成为所述第一VM的影子VM。为了节省云计算资源,所述第二VM所消耗的资源可以配置为小于或等于预先配置的资源阈值,例如,0.1核(c)的CPU,10兆(M)字节~100M字节的内存等。当第一计算节点设备上运行的第一VM与管理节点设备之间的通信正常时,所述第二VM可以处于休眠状态。当第一计算节点设备上运行的第一VM与管理节点设备之间的通信出现故障时,所述第二VM则被所述管理节点设备唤醒,对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。这样,对整个系统的性能影响很小,能够进一步降低能量消耗。
具体地,所述管理节点设备具体可以在所述第一计算节点设备上创建所述第二VM。这样,如果出现了所述第一计算节点设备与该第一计算节点设备上运行的第一VM之间的通信连接出现故障的情况,致使所述第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障,所述管理节点设备 则可以通过执行102,来检测所述第一VM的状态。
具体地,所述管理节点设备具体还可以在第二计算节点设备上创建所述第二VM,所述第二计算节点设备与所述第一计算节点设备为不同的计算节点设备。这样,如果出现了所述第一计算节点设备与所述管理节点设备之间的通信连接出现故障,或者所述第一计算节点设备的用于所述管理网络的网卡出现故障等的情况,致使所述第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障,所述管理节点设备则可以通过执行102,来检测所述第一VM的状态。
进一步可选地,在所述管理节点设备在所述第二计算节点设备上创建所述第二VM之后,所述第二VM可以通过所述第一计算节点设备与所述第二计算节点设备之间的管理网络,获取所述第一VM的状态信息,或者所述第二VM还可以通过所述第一计算节点设备与所述第二计算节点设备之间的业务网络,获取所述第一VM的状态信息。这样,所述管理节点设备则可以获取第二VM提供的所述第一VM的状态信息。
例如,所述第二VM具体可以通过因特网包探索器(Packet Internet Grope,PING)命令、简单网络管理协议(Simple Network Management Protocol,SNMP)等方式,检测所述第一VM上安装的操作系统的运行状态,以获取所述第一VM的状态信息。
再例如,所述第二VM具体还可以根据所述第一VM上运行的业务的业务类型,例如,超文本传输协议(Hypertext Transfer Protocol,HTTP)服务或数据库服务等,对所述服务类型的业务进行监控,以检测所述第一VM上运行的业务的运行状态,以获取所述第一VM的状态信息。
可选地,在本实施例的一个可能的实现方式中,在所述管理节点设备执行101和102之后,所述管理节点设备还可以进一步确定所述第一VM与所述管理节点设备之间的通信恢复正常;然后,所述管理节点设备则可以采用现有技术中的技术方案,即获取所述第一计算节点设备提供的所述第一VM的状态信息。
本实施例中,通过管理节点设备创建的第二VM,对第一计算节点设备上运行的第一VM的状态进行监控,以获得所述第一VM的状态信息,使得在所述管理节点设备确定所述第一VM与所述管理节点设备之间的通信发生故障时,所述管理节点设备能够获取第二VM提供的所述第一VM的状态信息,能够避免现有技术中由于管理节点设备无法获取计算节点设备上运行的VM的状态信息而导致的所述管理节点设备误认为是VM出现故障的问题,从而提高了状态检测的可靠性。
为使得本发明实施例提供的方法更加清楚,下面将以管理节点设备需要检测运行在计算节点设备A上的VM A的状态作为举例。图2为本发明另一实施例提供的状态检测方法的流程示意图,如图2所示。
201、管理节点设备在计算节点设备A上创建VM A,用以执行用户向云计算中心租用的服务。
202、管理节点设备在计算节点设备B上创建VM B即VM A的影子VM。
具体地,VM B初始创建之后,可以处于休眠状态。
203、管理节点设备判断是否能够通过计算节点设备A,获取所述VM A的状态信息,如果是,则继续执行203,以对所述VM A的状态进行检测;否则,则执行204。
204、管理节点设备唤醒VM B,以进入唤醒状态,以对所述VM A的状态进行监控,以获得所述VM A的状态信息。
205、管理节点设备获取VM B提供的所述VM A的状态信息。
206、管理节点设备根据所述VM A的状态信息,对VM A执行管理操作。
具体地,如果所述VM A的状态信息指示VM A的状态正常,那么,所述管理节点设备则继续执行205,以对所述VM A的状态进行检测;如果所述VM A的状态信息指示VM A的状态不正常,那么,所述管理节点设备则可以对VM A进行迁移或者故障修复。
本实施例中,通过管理节点设备在计算节点设备B上创建的VM B,对 计算节点设备A上运行的VM A的状态进行监控,以获得所述VM A的状态信息,使得在所述管理节点设备确定所述VM A与所述管理节点设备之间的通信发生故障时,所述管理节点设备能够获取VM B提供的所述VM A的状态信息,能够避免现有技术中由于管理节点设备无法获取计算节点设备上运行的VM的状态信息而导致的所述管理节点设备误认为是VM出现故障的问题,从而提高了状态检测的可靠性。
进一步地,过了一段预先配置的时间之后,管理节点设备还可以进一步判断是否能够通过计算节点设备A,获取所述VM A的状态信息,如果是,则休眠VM B,并通过计算节点设备A,获取所述VM A的状态信息,以对所述VM A的状态进行检测,恢复采用现有技术中的技术方案。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
图3为本发明另一实施例提供的管理节点设备的结构示意图,如图3所示。本实施例的管理节点设备可以包括确定单元31和获取单元32。其中,确定单元31,用于确定第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障;获取单元32,用于获取第二VM提供的所述第一VM的状态信息,所述第二VM用于对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。
本实施例中,第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障,可以有多种情况。例如,所述第一计算节点设备与所述管理节点设备之间的通信连接出现故障;再例如,所述第一计算节点设备与该第一计算节点设备上运行的VM之间的通信连接出现故障;再例如,所述第一计 算节点设备的用于所述管理网络的网卡出现故障等情况。
这样,当确定单元31确定第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障时,可以通过第二VM对所述第一VM的状态进行监控,以获得所述第一VM的状态信息,使得获取单元32能够获取第二VM提供的所述第一VM的状态信息,能够避免现有技术中由于管理节点设备无法获取计算节点设备上运行的VM的状态信息而导致的所述管理节点设备误认为是VM出现故障的问题,从而提高了状态检测的可靠性。
可选地,在本实施例的一个可能的实现方式中,所述确定单元31具体可以用于确定所述获取单元32无法获取所述第一计算节点设备提供的所述第一VM的状态信息,以确定所述第一VM与所述管理节点设备之间的通信发生故障。
可选地,在本实施例的一个可能的实现方式中,所述获取单元32具体可以用于向所述第二VM发送请求消息,用以请求获取所述第一VM的状态信息;以及接收所述第二VM根据所述请求消息,发送的所述第一VM的状态信息。
可选地,在本实施例的一个可能的实现方式中,如图4所示,所述管理节点设备还可以进一步包括创建单元41,用于在所述获取单元32获取第二VM提供的所述第一VM的状态信息之前,创建所述第二VM。
其中,所述第二VM还可以成为所述第一VM的影子VM。为了节省云计算资源,所述第二VM所消耗的资源可以配置为小于或等于预先配置的资源阈值,例如,0.1核(c)的CPU,10兆(M)字节~100M字节的内存等。当第一计算节点设备上运行的第一VM与管理节点设备之间的通信正常时,所述第二VM可以处于休眠状态。当第一计算节点设备上运行的第一VM与管理节点设备之间的通信出现故障时,所述第二VM则被所述管理节点设备唤醒,对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。这样,对整个系统的性能影响很小,能够进一步降低能量消耗。
具体地,所述创建单元41具体可以用于在所述第一计算节点设备上创建所述第二VM。这样,如果出现了所述第一计算节点设备与该第一计算节点设备上 运行的第一VM之间的通信连接出现故障的情况,致使所述确定单元31确定所述第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障,所述获取单元32则可以通过执行对应的操作,来实现所述管理节点设备检测所述第一VM的状态。
具体地,所述创建单元41具体还可以用于在第二计算节点设备上创建所述第二VM,所述第二计算节点设备与所述第一计算节点设备为不同的计算节点设备。这样,如果出现了所述第一计算节点设备与所述管理节点设备之间的通信连接出现故障,或者所述第一计算节点设备的用于所述管理网络的网卡出现故障等的情况,致使所述确定单元31确定所述第一计算节点设备上运行的第一VM与所述管理节点设备之间的通信发生故障,所述获取单元32则可以通过执行对应的操作,来实现所述管理节点设备检测所述第一VM的状态。
进一步可选地,在所述创建单元41在所述第二计算节点设备上创建所述第二VM之后,所述第二VM可以通过所述第一计算节点设备与所述第二计算节点设备之间的管理网络,获取所述第一VM的状态信息,或者所述第二VM还可以通过所述第一计算节点设备与所述第二计算节点设备之间的业务网络,获取所述第一VM的状态信息。这样,所述获取单元32则可以获取第二VM提供的所述第一VM的状态信息。
例如,所述第二VM具体可以通过因特网包探索器(Packet Internet Grope,PING)命令、简单网络管理协议(Simple Network Management Protocol,SNMP)等方式,检测所述第一VM上安装的操作系统的运行状态,以获取所述第一VM的状态信息。
再例如,所述第二VM具体还可以根据所述第一VM上运行的业务的业务类型,例如,超文本传输协议(Hypertext Transfer Protocol,HTTP)服务或数据库服务等,对所述服务类型的业务进行监控,以检测所述第一VM上运行的业务的运行状态,以获取所述第一VM的状态信息。
可选地,在本实施例的一个可能的实现方式中,所述确定单元31,还可以进一步用于确定所述第一VM与所述管理节点设备之间的通信恢复正常;然后, 所述获取单元32,则可以采用现有技术中的技术方案,即获取所述第一计算节点设备提供的所述第一VM的状态信息。
需要说明的是,本实施例提供的管理节点设备具体可以分别部署两个管理单元,一个用于管理第一VM,即第一管理单元;另一个用于管理第二VM,即第二管理单元。其中,所述第一管理单元可以用于负责第一VM的创建、启动、休眠、唤醒、检测、迁移以及调用第二管理单元等;所述第二管理单元根据第一管理单元的调用,负责第二VM的创建、休眠以及唤醒。其中,所述调用的接口可以包括但不限于以下三种:
1、创建接口,用于根据第一管理单元的调用,创建所述第二VM;
2、休眠接口,用于根据第一管理单元的调用,休眠所述第二VM;以及
3、唤醒接口,用于根据第一管理单元的调用,唤醒所述第二VM,以执行相应的操作。
本实施例中,管理节点设备通过创建的第二VM,对第一计算节点设备上运行的第一VM的状态进行监控,以获得所述第一VM的状态信息,使得在确定单元确定所述第一VM与所述管理节点设备之间的通信发生故障时,获取单元能够获取第二VM提供的所述第一VM的状态信息,能够避免现有技术中由于管理节点设备无法获取计算节点设备上运行的VM的状态信息而导致的所述管理节点设备误认为是VM出现故障的问题,从而提高了状态检测的可靠性。
图5为本发明另一实施例提供的状态检测系统的结构示意图,如图5所示。本实施例的状态检测系统可以包括第一计算节点设备51和管理节点设备52。其中,第一计算节点设备51,用于运行第一VM;管理节点设备52,用于确定所述第一计算节点设备51上运行的第一VM与所述管理节点设备52之间的通信发生故障,以及获取第二VM提供的所述第一VM的状态信息,所述第二VM用于对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。
本实施例中,第一计算节点设备51上运行的第一VM与所述管理节点设备52之间的通信发生故障,可以有多种情况。例如,所述第一计算节点设备51与所述管理节点设备52之间的通信连接出现故障;再例如,所述第一计算节点 设备51与该第一计算节点设备51上运行的VM之间的通信连接出现故障;再例如,所述第一计算节点设备51的用于所述管理网络的网卡出现故障等情况。
这样,当管理节点设备52确定第一计算节点设备51上运行的第一VM与所述管理节点设备52之间的通信发生故障时,可以通过第二VM对所述第一VM的状态进行监控,以获得所述第一VM的状态信息,使得所述管理节点设备52能够获取第二VM提供的所述第一VM的状态信息,能够避免现有技术中由于管理节点设备52无法获取计算节点设备上运行的VM的状态信息而导致的所述管理节点设备52误认为是VM出现故障的问题,从而提高了状态检测的可靠性。
可选地,在本实施例的一个可能的实现方式中,所述管理节点设备52具体可以用于确定无法获取所述第一计算节点设备51提供的所述第一VM的状态信息,以确定所述第一VM与所述管理节点设备52之间的通信发生故障。
可选地,在本实施例的一个可能的实现方式中,所述管理节点设备52具体可以用于向所述第二VM发送请求消息,用以请求获取所述第一VM的状态信息;以及接收所述第二VM根据所述请求消息,发送的所述第一VM的状态信息。
可选地,在本实施例的一个可能的实现方式中,所述管理节点设备52还可以进一步用于在获取第二VM提供的所述第一VM的状态信息之前,创建所述第二VM。
其中,所述第二VM还可以成为所述第一VM的影子VM。为了节省云计算资源,所述第二VM所消耗的资源可以配置为小于或等于预先配置的资源阈值,例如,0.1核(c)的CPU,10兆(M)字节~100M字节的内存等。当第一计算节点设备51上运行的第一VM与管理节点设备52之间的通信正常时,所述第二VM可以处于休眠状态。当第一计算节点设备51上运行的第一VM与管理节点设备52之间的通信出现故障时,所述第二VM则被所述管理节点设备52唤醒,对所述第一VM的状态进行监控,以获得所述第一VM的状态信息。这样,对整个系统的性能影响很小,能够进一步降低能量消耗。
具体地,所述管理节点设备52具体可以在所述第一计算节点设备51上创建所述第二VM。这样,如果出现了所述第一计算节点设备51与该第一计算节点设备51上运行的第一VM之间的通信连接出现故障的情况,致使所述第一计算节点设备51上运行的第一VM与所述管理节点设备52之间的通信发生故障,所述管理节点设备52则可以通过执行102,来检测所述第一VM的状态。
具体地,所述管理节点设备52具体可以用于在所述第一计算节点设备51上创建所述第二VM。这样,如果出现了所述第一计算节点设备51与该第一计算节点设备51上运行的第一VM之间的通信连接出现故障的情况,致使所述第一计算节点设备51上运行的第一VM与所述管理节点设备52之间的通信发生故障,所述管理节点设备52则可以通过执行对应的操作,来检测所述第一VM的状态。
具体地,如图6所示,所述管理节点设备52具体还可以用于在第二计算节点设备61上创建所述第二VM,所述第二计算节点设备61与所述第一计算节点设备51为不同的计算节点设备;相应地,本实施例提供的状态检测系统还可以进一步包括第二计算节点设备61,用于运行所述第二VM。这样,如果出现了所述第一计算节点设备51与所述管理节点设备52之间的通信连接出现故障,或者所述第一计算节点设备51的用于所述管理网络的网卡出现故障等的情况,致使所述第一计算节点设备51上运行的第一VM与所述管理节点设备52之间的通信发生故障,所述管理节点设备52则可以通过执行对应的操作,来检测所述第一VM的状态。
进一步可选地,在所述管理节点设备52在所述第二计算节点设备61上创建所述第二VM之后,所述第二VM可以通过所述第一计算节点设备51与所述第二计算节点设备61之间的管理网络,获取所述第一VM的状态信息,或者所述第二VM还可以通过所述第一计算节点设备51与所述第二计算节点设备61之间的业务网络,获取所述第一VM的状态信息。这样,所述管理节点设备52则可以获取第二VM提供的所述第一VM的状态信息。
例如,所述第二VM具体可以通过因特网包探索器(Packet Internet Grope, PING)命令、简单网络管理协议(Simple Network Management Protocol,SNMP)等方式,检测所述第一VM上安装的操作系统的运行状态,以获取所述第一VM的状态信息。
再例如,所述第二VM具体还可以根据所述第一VM上运行的业务的业务类型,例如,超文本传输协议(Hypertext Transfer Protocol,HTTP)服务或数据库服务等,对所述服务类型的业务进行监控,以检测所述第一VM上运行的业务的运行状态,以获取所述第一VM的状态信息。
可选地,在本实施例的一个可能的实现方式中,所述管理节点设备52还可以进一步用于确定所述第一VM与所述管理节点设备52之间的通信恢复正常;以及可以采用现有技术中的技术方案,即获取所述第一计算节点设备51提供的所述第一VM的状态信息。
需要说明的是,管理节点设备52具体可以分别部署两个管理单元,一个用于管理第一VM,即第一管理单元;另一个用于管理第二VM,即第二管理单元。其中,所述第一管理单元可以用于负责第一VM的创建、启动、休眠、唤醒、检测、迁移以及调用第二管理单元等;所述第二管理单元根据第一管理单元的调用,负责第二VM的创建、休眠以及唤醒。其中,所述调用的接口可以包括但不限于以下三种:
1、创建接口,用于根据第一管理单元的调用,创建所述第二VM;
2、休眠接口,用于根据第一管理单元的调用,休眠所述第二VM;以及
3、唤醒接口,用于根据第一管理单元的调用,唤醒所述第二VM,以执行相应的操作。
本实施例中,通过管理节点设备创建的第二VM,对第一计算节点设备上运行的第一VM的状态进行监控,以获得所述第一VM的状态信息,使得在所述管理节点设备确定所述第一VM与所述管理节点设备之间的通信发生故障时,所述管理节点设备能够获取第二VM提供的所述第一VM的状态信息,能够避免现有技术中由于管理节点设备无法获取计算节点设备上运行的VM的状态信息而导致的所述管理节点设备误认为是VM出现故障的问题,从而提高了状态 检测的可靠性。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其 限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。