CN114328036A - 一种硬件故障检测方法、系统及相关设备 - Google Patents

一种硬件故障检测方法、系统及相关设备 Download PDF

Info

Publication number
CN114328036A
CN114328036A CN202011056417.1A CN202011056417A CN114328036A CN 114328036 A CN114328036 A CN 114328036A CN 202011056417 A CN202011056417 A CN 202011056417A CN 114328036 A CN114328036 A CN 114328036A
Authority
CN
China
Prior art keywords
fault detection
group
hardware
main
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011056417.1A
Other languages
English (en)
Inventor
彭骞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Cloud Computing Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Cloud Computing Technologies Co Ltd filed Critical Huawei Cloud Computing Technologies Co Ltd
Priority to CN202011056417.1A priority Critical patent/CN114328036A/zh
Publication of CN114328036A publication Critical patent/CN114328036A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种硬件故障检测系统、方法及相关设备。其中,该方法包括:故障检测控制器获取硬件相关信息,并根据所述硬件相关信息创建故障检测组,所述故障检测组包括至少两个故障检测组件,所述故障检测组件部署于物理服务器中;所述故障检测组中的故障检测组件选举出主故障检测组件,所述主故障检测组件用于对所述故障检测组对应的服务器集群进行故障检测。上述方法能够减少对管理资源的占用,提高资源利用率,降低运维成本。

Description

一种硬件故障检测方法、系统及相关设备
技术领域
本发明涉及云计算技术领域,尤其涉及一种硬件故障检测方法、系统及相关设备。
背景技术
云计算作为近年来新兴的产业,获得了科研界和产业界的广泛关注,云计算在全世界范围的兴起,以其灵活、高效、低成本、节能的运作方式成为推动产业绿色发展的重要引擎和21世纪新的商业平台。云计算将计算任务分布在大量服务器构成的资源池上,使各种应用系统能够根据需要获取计算能力、存储空间和各种云服务。当服务器或交换机出现故障时,云管理平台需要快速检测硬件故障,针对计算资源进行快速恢复,确定应用系统的持续运行。
随着云计算发展,数据中心的规模越来越大,其中服务器数量和交换机数量也越来越多,为了满足实时性要求,需要增加管理系统规模,目前采用的分层组网等方案配置复杂且管理资源消耗巨大。此外,在应用要求就近接入计算资源,需要建设数以万计的小规模边缘站点时,每个边缘站点都需要单独部署故障检测组件,进一步加剧了管理配置的复杂性和管理资源的消耗。
因此,如何对减少故障检测所导致的管理资源消耗,提高资源利用率,减少运维成本是目前亟待解决的问题。
发明内容
本发明实施例公开了一种硬件故障检测系统、方法及相关设备,能够减少对管理资源的占用,提高资源利用率,降低运维成本。
第一方面,本申请提供一种硬件故障检测方法,包括故障检测控制器和多个故障检测组件,所述多个故障检测组件部署于多个物理服务器中,其中:所述故障检测控制器用于获取硬件相关信息,并根据所述硬件相关信息创建故障检测组,所述故障检测组包括至少两个故障检测组件;所述故障检测组中的故障检测组件选举出主故障检测组件,所述主故障检测组件用于对所述故障检测组对应的服务器集群进行故障检测。
在本申请提供的方案中,故障检测控制器根据获取到的硬件相关信息创建故障检测组,通过在故障检测组内选举主故障检测组件从而对故障检测组对应的服务器集群进行故障检测,这样可以避免单独部署管理节点对服务器集群进行故障检测,减少了对管理资源的占用,提高了资源利用率,且降低了运维成本。
结合第一方面,在第一方面的一种可能的实现方式中,所述硬件相关信息包括机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息。
在本申请提供的方案中,故障检测控制器通过预先获取机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息等硬件相关信息,保证能够正确合理的创建故障检测组。
结合第一方面,在第一方面的一种可能的实现方式中,所述故障检测组件部署于卸载卡中,所述卸载卡插置于所述物理服务器。
在本申请提供的方案中,通过将故障检测组件部署于卸载卡中,可以进一步减少对服务器管理资源的占用,提高服务器资源的利用率。
结合第一方面,在第一方面的一种可能的实现方式中,所述故障检测控制器将相同物理位置内的服务器划分为同一个故障检测组;或者,所述故障检测控制器将具有相同物理属性的服务器划分为同一个故障检测组;或者,所述故障检测控制器将具有相同故障检测需求的服务器划分为同一个故障检测组;或者,所述故障检测控制器将预设数量的服务器划分为同一个故障检测组。
在本申请提供的方案中,故障检测控制器可以根据实际检测需要对待检测的服务器进行划分,从而得到不同的故障检测组,并进一步在故障检测组内实现故障检测。
结合第一方面,在第一方面的一种可能的实现方式中,所述故障检测组中的故障检测组件相互发送心跳建立连接,并通过预设算法选举出所述主故障检测组件;或者,所述故障检测组中的故障检测组件相互发送心跳建立连接,并通过预设算法选举出主故障检测组件集群,所述主故障检测组件集群包括至少一个主故障检测组件。
在本申请提供的方案中,故障检测组中的故障检测组件通过相互发送心跳建立连接,并进一步通过预设算法选举出主故障检测组件或主故障检测组件集群,以使得主故障检测组件对组内的所有服务器进行故障检测,且在选举得到的是主故障检测组件集群时,可以保证在一个主故障检测组件故障(即无法正常进行故障检测)时,主故障检测组件集群中的其它主故障检测组件能够及时的对组内服务器进行故障检测,保证业务正常运行,提高系统的可靠性。
结合第一方面,在第一方面的一种可能的实现方式中,当新的故障检测组件加入所述故障检测组时,所述主故障检测组件接收所述新的故障检测组件发送的心跳,并向所述故障检测组内的故障检测组件进行广播,以使得所述故障检测组内的故障检测组件与所述新的故障检测组件建立连接。
在本申请提供的方案中,当需要加入新的故障检测组件时,故障检测控制器可以通过创建新的故障检测组加入新的故障检测组件,或在已存在的故障检测组中加入新的故障检测组件,并通过向组内的主故障检测组件发送心跳以使得主故障检测组件与新的故障检测组件建立连接,提高了系统的灵活性和可扩展性。
第二方面,本申请提供了一种硬件故障检测方法,所述方法包括故障检测控制器获取硬件相关信息,并根据所述硬件相关信息创建故障检测组,所述故障检测组包括至少两个故障检测组件,所述故障检测组件部署于物理服务器中;所述故障检测组中的故障检测组件选举出主故障检测组件,所述主故障检测组件用于对所述故障检测组对应的服务器集群进行故障检测。
在本申请提供的方案中,故障检测控制器利用获取到的硬件相关信息创建故障检测组,并通过在组内选举主故障检测组件对故障检测组对应的服务器集群进行故障检测,从而避免单独部署管理节点对服务器集群进行故障检测,减少对管理资源的占用,提高资源利用率。
结合第二方面,在第二方面的一种可能的实现方式中,所述硬件相关信息包括机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息
结合第二方面,在第二方面的一种可能的实现方式中,所述故障检测组件部署于卸载卡中,所述卸载卡插置于所述物理服务器。
结合第二方面,在第二方面的一种可能的实现方式中,所述故障检测控制器将相同物理位置内的服务器划分为同一个故障检测组;或者,所述故障检测控制器将具有相同物理属性的服务器划分为同一个故障检测组;或者,所述故障检测控制器将具有相同故障检测需求的服务器划分为同一个故障检测组;或者,所述故障检测控制器将预设数量的服务器划分为同一个故障检测组。
结合第二方面,在第二方面的一种可能的实现方式中,所述故障检测组中的故障检测组件相互发送心跳建立连接,并通过预设算法选举出所述主故障检测组件;或者,所述故障检测组中的故障检测组件相互发送心跳建立连接,并通过预设算法选举出主故障检测组件集群,所述主故障检测组件集群包括至少一个主故障检测组件。
结合第二方面,在第二方面的一种可能的实现方式中,当新的故障检测组件加入所述故障检测组时,所述主故障检测组件接收所述新的故障检测组件发送的心跳,并向所述故障检测组内的故障检测组件进行广播,以使得所述故障检测组内的故障检测组件与所述新的故障检测组件建立连接。
第三方面,本申请提供了一种网络设备,包括:获取单元,用于获取硬件相关信息;
处理单元,用于根据所述硬件相关信息创建故障检测组,所述故障检测组包括至少两个故障检测组件,所述故障检测组件部署于物理服务器中。
结合第三方面,在第三方面的一种可能的实现方式中,所述硬件相关信息包括机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息。
结合第三方面,在第三方面的一种可能的实现方式中,所述故障检测组件部署于卸载卡中,所述卸载卡插置于所述网络服务器。
结合第三方面,在第三方面的一种可能的实现方式中,所述处理单元,具体用于:将相同物理位置内的服务器划分为同一个故障检测组;或者,将具有相同物理属性的服务器划分为同一个故障检测组;或者,将具有相同故障检测需求的服务器划分为同一个故障检测组;或者,将预设数量的服务器划分为同一个故障检测组。
第四方面,本申请提供了一种故障检测设备,包括:接收单元,用于接收分组信息,所述分组信息包括所述故障检测设备所属的故障检测组,所述故障检测组包括至少两个故障检测设备,所述故障检测设备部署于物理服务器中;选举单元,用于在所述故障检测组中选举出主故障检测设备,所述主故障检测设备用于对所述故障检测组对应的服务器集群进行故障检测。
结合第四方面,在第四方面的一种可能的实现方式中,所述故障检测设备部署于卸载卡中,所述卸载卡插置于所述物理服务器。
结合第四方面,在第四方面的一种可能的实现方式中,所述选举单元,具体用于:向所述故障检测组中的其它故障检测设备发送心跳建立连接,并通过预设算法选举出所述主故障检测设备;或者,向所述故障检测组中的其它故障检测设备发送心跳建立连接,并通过预设算法选举出主故障检测设备集群,所述主故障检测设备集群包括至少一个主故障检测设备。
结合第四方面,在第四方面的一种可能的实现方式中,所述接收单元,还用于在新的故障检测设备加入所述故障检测组时,接收所述新的故障检测设备发送的心跳,并向所述故障检测组内的故障检测设备进行广播,以使得所述故障检测组内的故障检测设备与所述新的故障检测设备建立连接。
第五方面,本申请提供了一种计算设备,所述计算设备包括处理器和存储器,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码执行上述第二方面以及结合上述第二方面中的任意一种实现方式的方法。
第六方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当该计算机程序被处理器执行时,可以实现上述第二方面以及结合上述第二方面中的任意一种实现方式所提供的方法的流程。
第七方面,本申请提供了一种计算机程序产品,该计算机程序产品包括指令,当该计算机程序被计算机执行时,使得计算机可以执行上述第二方面以及结合上述第二方面中的任意一种实现方式所提供的方法的流程。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种硬件故障检测场景的示意图;
图2是本申请实施例提供的一种硬件故障检测系统架构的示意图;
图3是本申请实施例提供的一种硬件故障检测方法的流程示意图;
图4是本申请实施例提供的一种硬件分布的示意图;
图5是本申请实施例提供的一种创建故障检测组的示意图;
图6是本申请实施例提供的又一种硬件故障检测架构的示意图;
图7是本申请实施例提供的一种网络设备的结构示意图;
图8是本申请实施例提供的一种故障检测设备的结构示意图;
图9是本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
下面结合附图对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
首先,结合附图对本申请中所涉及的部分用语和相关技术进行解释说明,以便于本领域技术人员理解。
在云计算的硬件故障检测的场景中,故障检测系统部署在集中式的管理节点中,通过心跳方式进行检测并由管理系统判断硬件故障,执行故障恢复策略。如图1所示,数据中心100中部署了交换机110、交换机120、交换机130、核心交换机140和管理节点150,其中,管理节点150中部署了管理系统1510,用于对数据中心100中服务器和交换机进行故障检测,交换机110连接有服务器1110、服务器1120和服务器1130,交换机120连接有服务器1210、服务器1220和服务器1230,交换机130连接有服务器1310、服务器1320和服务器1330,管理节点150可以主动采集所有服务器和交换机(例如服务器1130和交换机120)的心跳信息,或者所有服务器和交换机主动向管理节点150上报自身的心跳信息,管理节点150通过检测各个交换机或服务器心跳是否中断从而判定算法出现硬件故障,例如,管理节点150检测到服务器1310心跳中断(即预设时间内没有采集到服务器1310的心跳信息),则管理节点150判定服务器1310出现硬件故障,然后执行相应的故障恢复策略。
可以看出,上述硬件故障检测方式是集中式的,即通过单独部署管理节点对数据中心内的所有服务器和交换机进行故障检测,但是随着服务器规模的增加,例如管理规模增加到十万及以上,那么管理节点就面临巨大的检测压力,可能无法实时的完成故障检测,需要增加缓存(cache)层或分层心跳接入等方式来满足检测需求,这样将消耗大量管理资源,增加配置管理复杂度。此外,对于海量分布式站点的场景,需要针对每个站点部署独立的管理节点,造成资源浪费,增加运维成本和负担。
基于上述,本申请提供了一种硬件故障检测系统、方法及相关设备,该方法由硬件故障检测系统执行,硬件故障检测系统可以包括一个或多个故障检测控制器,该故障检测控制器通过硬件管理系统获取硬件相关信息,并根据硬件相关信息创建故障检测组,进一步的,该硬件故障检测系统还包括多个故障检测组件,故障检测组件基于分组信息组成故障检测组,选举出主故障检测组件,然后通过心跳进行故障检测。通过执行该硬件故障检测方法,可以减少对管理资源的占用,提高资源利用率,降低运维成本。
本申请实施例的技术方案还可以应用于各种需要检测硬件故障的场景,包括但不限于大规模数据中心硬件故障检测、海量小站点的硬件故障检测等。
图2示出了本申请实施例提供的一种硬件故障检测系统的示意图。如图2所示,该硬件故障检测系统包括:故障检测控制器210、服务器220、服务器230和硬件管理系统240。服务器220中部署了故障检测组件2210,该故障检测组件2210也可以部署在独立的卸载卡中,卸载卡插置于服务器220上,服务器230也服务器220相同,部署了故障检测组件2310。硬件管理系统240负责采集和维护硬件相关信息,例如机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息等,故障检测控制器210通过硬件管理系统240获取硬件相关信息,然后根据硬件相关信息创建故障检测组,并将分组信息下发到各个故障检测组件,故障检测组件2210和故障检测组件2310基于分组信息组成故障检测组,并通过心跳进行故障检测,检测服务器220和服务器230是否出现硬件故障。
基于上述,下面对本申请实施例提供的硬件故障检测方法及相关设备进行描述。参见图3,图3为本申请实施例提供的一种硬件故障检测方法的流程示意图。如图3所示,该方法包括但不限于以下步骤:
S301:故障检测控制器获取硬件相关信息。
具体地,该故障检测控制器可以是上述图2中的故障检测控制器210,该故障检测控制器可以通过硬件管理系统获取到硬件相关信息,硬件管理系统提前采集了并维护着硬件相关信息。
可选的,故障检测控制器所获取到的硬件相关信息包括机房物理位置信息、机房之间物理拓扑信息、机房内网络交换机拓扑信息、机架位置信息和服务器位置信息等。
示例性的,如图4所示,图4是本申请实施例提供的一种硬件分布示意图,硬件管理系统中维护数据中心400的硬件相关信息,该数据中心400包括两个机房410和机房420,机房410和机房420部署于同一个物理区域并相互连接,机房410中包括机架4110和机架4120,机架4110和机架4120之间相互连接,机架4110包括交换机4111、服务器4112和服务器4113,服务器4112和服务器4113连接在交换机4111上,机架4120包括交换机4121、服务器4122和服务器4123,服务器4122和服务器4123连接在交换机4121上;机房420包括机架4210和机架4220,机架4210和机架4220之间相互连接,机架4210包括交换机4211、服务器4212和服务器4213,服务器4212和服务器4213连接在交换机4211上,机架4220包括交换机4221、服务器4222和服务器4223,服务器4222和服务器4223连接在交换机4221上。
S302:故障检测控制器根据硬件相关信息创建故障检测组。
具体地,故障检测控制器在获取到硬件相关信息之后,对数据中心内的所有服务器进行集群划分,从而得到多个故障检测组,每个故障检测组包括至少两个故障检测组件,然后将每个服务器所属的故障检测组和物理位置信息写入安装部署系统的配置文件。
在一种可能的实现方式中,故障检测控制器将相同物理位置内的服务器划分为同一个故障检测组。
示例性的,故障检测控制器将相同机房(例如上述机房410),或相同机架(例如上述机架4110),或相同交换机(例如上述交换机4111)连接的服务器划分为同一个故障检测组,每一个故障检测组都对应一个服务器集群。
在另一种可能的实现方式中,故障检测控制器将具有相同物理属性的服务器划分为同一个故障检测组。
示例性的,故障检测控制器将具有相同硬件形态的服务器,例如具有相同中央处理器(central processing unit,CPU)的服务器划分为同一个故障检测组。
在另一种可能的实现方式中,故障检测控制器将具有相同故障检测需求的服务器划分为同一个故障检测组。
示例性的,故障检测控制器基于故障检测场景,例如需要覆盖多个交换机或机架,将具有相同故障检测需求的服务器划分为同一个故障检测组。
在另一种可能的实现方式中,故障检测控制器将预设数量的服务器划分为同一个故障检测组。
示例性的,故障检测控制器基于服务器数量,将预设数量的服务器,例如100台,划分为同一个故障检测组,当然,预设数量也可以根据需要设置为200台或300台,本申请对此不作限定。
S303:故障检测组中的故障检测组件选举出主故障检测组件。
具体地,故障检测控制器在创建了故障检测组之后,各个故障检测组对应一个服务器集群,服务器的故障检测则在各个故障检测组内实现,不需要再额外部署管理节点对各个服务器集群进行故障检测,从而减少对管理资源的占用,提高资源利用率。
需要说明的是,故障检测组件可以部署在独立的硬件卸载卡中,采用全分布式架构,如图5所示,服务器510、服务器520和服务器530都插置了一个硬件卸载卡,其中,硬件卸载卡5110、硬件卸载卡5210和硬件卸载卡5310中分别部署了故障检测组件5111、故障检测组件5211和故障检测组件5311,故障检测控制器540与硬件卸载卡5110、硬件卸载卡5210和硬件卸载卡5310连接,并将故障检测组件5111、故障检测组件5211和故障检测组件5311创建为同一个故障检测组。
进一步的,硬件卸载卡在上电后,从安装部署系统加载对应的配置文件,故障检测组件启动时读取配置信息,从而确定自身所在的故障检测组,同一个故障检测组内的所有故障检测组件互相发送心跳形成一个仲裁集群,并通过预设算法,例如一致性、可用性和网络分区容忍(consistency availability partition tolerance,CAP)、圣象牌(paxos)算法、木筏(raft)算法等,选举出主故障检测组件,主故障检测组件通过心跳检测故障检测组对应的服务器集群是否出现硬件故障,当主故障检测组件检测到组内某个故障检测组件的心跳中断,例如主故障检测组件在预设时间内没有接收到某个故障检测组件发送的心跳信息,则主故障检测组件可以判定该故障检测组件对应的服务器出现硬件故障,需要执行相应的故障恢复策略。
可以理解,通过利用硬件卸载卡运行故障检测组件,直接将硬件卸载卡插置于服务器即可,不需要进行复杂的管理配置,可以减少对服务器的管理资源开销,提高服务器资源利用率,且降低了运维成本。
在一种可能的实现方式中,同一个故障检测组内的所有故障检测组件互相发送心跳形成一个仲裁集群后,通过预设算法选举出一个主故障检测组件集群,该主故障检测组件集群包括多个主故障检测组件,若当前主故障检测组件无法继续工作时,该主故障检测组件集群中的其它主故障检测组件将接替当前主故障检测组件的工作,继续对故障检测组对应的服务器集群进行硬件故障检测,保证业务的正常运行。容易理解,选举出包含多个主故障检测组件的主故障检测组件集群,对主故障检测组件进行冗余备份,可以有效的提高系统的可靠性,保证业务正常运行。
S304:主故障检测组件对故障检测组对应的服务器集群进行故障检测。
具体地,对于每一个故障检测组,都将选举出一个主故障检测组件,在选择完成之后,主故障检测组件可以通过心跳检测该故障检测组对应的服务器集群是否出现硬件故障,并在检测到硬件故障后执行相应的故障恢复策略。
在一种可能的实现方式中,当数据中心需要进行扩容,即需要加入新的故障检测组件和服务器时,故障检测控制器可以新建一个故障检测组以包含新加入的故障检测组件,从而实现对新的服务器进行硬件故障检测,或者在已存在的故障检测组中加入新的故障检测组件,从而利用该故障检测组的主故障检测组件实现对新的故障检测组件对应的服务器进行硬件故障检测。
进一步的,当新的故障检测组件加入故障检测组后,该新的故障检测组件向组内进行广播,并向该故障检测组的主故障检测组件进行注册并发送心跳,主故障检测组件根据新的故障检测组件发送的心跳对新的故障检测组件对应的服务器进行硬件故障检测。
上述详细阐述了本申请提供的硬件故障检测方法,下面将结合图6对本申请提供的硬件故障检测方法进行进一步详细介绍。
如图6所示,故障检测控制器610从硬件管理系统620中获取硬件相关信息,并根据硬件相关信息对云环境和边缘环境中的服务器进行划分,得到不同的故障检测组,云环境指云服务提供商拥有的,用于提供计算、存储、通信资源的中心计算设备集群,边缘环境指在地理位置上距离数据采集设备较近的,用于提供计算、存储、通信资源的边缘计算设备集群。云环境包括核心交换机630、交换机6310、交换机6320和交换机6330,交换机6310连接有服务器6311、服务器6312和服务器6313,交换机6320连接有服务器6321、服务器6322和服务器6323,交换机6330连接有服务器6331、服务器6332和服务器6333;边缘环境包括交换机640,交换机640连接有服务器6410、服务器6420和服务器6430,各个服务器都插置了硬件卸载卡,其上部署有故障检测组件,例如服务器6311插置的硬件卸载卡上部署了故障检测组件63110。其中,故障检测控制器610将交换机6310及其连接的服务器划分为同一个故障检测组,将交换机6320及其连接的服务器划分为同一个故障检测组,交换机6330及其连接的服务器划分为同一个故障检测组,将交换机640及其连接的服务器划分为同一个故障检测组,在完成故障检测组划分之后,各个故障检测组内的故障检测组件相互发送心跳并通过预设算法选举出主故障检测组件或主故障检测组件集群,例如故障检测组件63110、故障检测组件63120和故障检测组件63130选举故障检测组件63110为该故障检测组的主故障检测组件,在选举出各个故障检测组的主故障检测组件之后,主故障检测组件通过心跳对本组内的服务器集群进行硬件故障检测,例如主故障检测组件63110通过心跳对服务器6311、服务器6312和服务器6313进行硬件故障检测,并在检测到硬件故障之后执行相应的故障恢复策略。
可以看出,故障检测控制器通过将云环境和边缘环境中的服务器进行集群划分,得到不同的故障检测组,在故障检测组内进行故障检测,不需要通过中心管理节点对所有的服务器进行集中式故障检测,或针对每一个故障检测组额外设置一个管理节点进行故障检测,此外利用硬件卸载卡部署故障检测组件,进一步降低了管理配置复杂度,减少了管理资源消耗,提高了资源利用率。
需要说明的是,图6所示的硬件故障检测方法与图3的原理一致,可以参照图3中的S301至S304步骤中的相关描述,为了简洁,在此不再赘述。
上述详细阐述了本申请实施例的方法,为了便于更好的实施本申请实施例的上述方案,相应地,下面还提供用于配合实施上述方案的相关设备。
参见图7,图7是本申请实施例提供的一种网络设备的结构示意图,该网络设备可以是上述图3所述的方法实施例中的故障检测控制器,可以执行图3所述的硬件故障检测方法实施例中以故障检测控制器为执行主体的方法和步骤。如图7所示,该网络设备700包括获取单元710和处理单元720。其中,
获取单元710,用于获取硬件相关信息;
处理单元720,用于根据所述硬件相关信息创建故障检测组,所述故障检测组包括至少两个故障检测组件,所述故障检测组件部署于物理服务器中。
具体地,所述获取单元710用于执行前述步骤S301,且可选的执行前述步骤中可选的方法,所述处理单元720用于执行前述步骤S302,且可选的执行前述步骤中可选的方法。上述两个单元之间互相可以通过通信通路进行数据传输,应理解,网络设备700包括的各单元可以为软件单元、也可以为硬件单元、或部分为软件单元部分为硬件单元。
作为一个实施例,所述硬件相关信息包括机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息。
作为一个实施例,所述故障检测组件部署于卸载卡中,所述卸载卡插置于所述网络服务器。
作为一个实施例,所述处理单元720,具体用于:将相同物理位置内的服务器划分为同一个故障检测组;或者,将具有相同物理属性的服务器划分为同一个故障检测组;或者,将具有相同故障检测需求的服务器划分为同一个故障检测组;或者,将预设数量的服务器划分为同一个故障检测组。
可以理解,本申请实施例中的获取单元710可以由收发器或收发器相关电路组件实现,处理单元720可以由处理器或处理器相关电路组件实现。
需要说明的是,上述网络设备的结构仅仅作为一种示例,不应构成具体限定,可以根据需要对该网络设备中的各个单元进行增加、减少或合并。此外,该网络设备中的各个单元的操作和/或功能是为了实现上述图3所描述的方法的相应流程,为了简洁,在此不再赘述。
参见图8,图8是本申请实施例提供的一种故障检测设备的结构示意图,该故障检测设备可以是上述图3所述的方法实施例中的故障检测组件,可以执行图3所述的硬件故障检测方法实施例中以故障检测控制组件为执行主体的方法和步骤。如图8所示,该故障检测设备800包括接收单元810和选举单元820。其中,
接收单元810,用于接收分组信息,所述分组信息包括所述故障检测设备所属的故障检测组,所述故障检测组包括至少两个故障检测设备,所述故障检测设备部署于物理服务器中;
选举单元820,用于在所述故障检测组中选举出主故障检测设备,所述主故障检测设备用于对所述故障检测组对应的服务器集群进行故障检测。
具体地,所述接收单元810用于执行前述步骤S303,且可选的执行前述步骤中可选的方法,所述选举单元820用于执行前述步骤S303和S304,且可选的执行前述步骤中可选的方法。上述两个单元之间互相可以通过通信通路进行数据传输,应理解,故障检测设备800包括的各单元可以为软件单元、也可以为硬件单元、或部分为软件单元部分为硬件单元。
作为一个实施例,所述故障检测设备800部署于卸载卡中,所述卸载卡插置于所述物理服务器。
作为一个实施例,所述选举单元820,具体用于:向所述故障检测组中的其它故障检测设备发送心跳建立连接,并通过预设算法选举出所述主故障检测设备;或者,向所述故障检测组中的其它故障检测设备发送心跳建立连接,并通过预设算法选举出主故障检测设备集群,所述主故障检测设备集群包括至少一个主故障检测设备。
作为一个实施例,所述接收单元810,还用于在新的故障检测设备加入所述故障检测组时,接收所述新的故障检测设备发送的心跳,并向所述故障检测组内的故障检测设备进行广播,以使得所述故障检测组内的故障检测设备与所述新的故障检测设备建立连接。
可以理解,本申请实施例中的接收单元810可以由收发器或收发器相关电路组件实现,选举单元820可以由处理器或处理器相关电路组件实现。
需要说明的是,上述故障检测设备的结构仅仅作为一种示例,不应构成具体限定,可以根据需要对该故障检测设备中的各个单元进行增加、减少或合并。此外,该故障检测设备中的各个单元的操作和/或功能是为了实现上述图3所描述的方法的相应流程,为了简洁,在此不再赘述
参见图9,图9是本申请实施例提供的一种计算设备的结构示意图。如图9所示,该计算设备900包括:处理器910、通信接口920以及存储器930,所述处理器910、通信接口920以及存储器930通过内部总线940相互连接。应理解,该计算设备900可以是云计算中的计算设备,或边缘环境中的计算设备。
所述处理器910可以由一个或者多个通用处理器构成,例如中央处理器(centralprocessing unit,CPU),或者CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC)、可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD)、现场可编程逻辑门阵列(field-programmable gatearray,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合。
总线940可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。所述总线940可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但不表示仅有一根总线或一种类型的总线。
存储器930可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM);存储器730也可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM)、快闪存储器(flash memory)、硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器730还可以包括上述种类的组合。
需要说明的是,计算设备900的存储器930中存储了网络设备700或故障检测设备800的各个单元对应的代码,处理器910执行这些代码实现了网络设备700或故障检测设备800的各个单元的功能,即执行了S301-S304的方法。
本申请还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机程序,当该计算机程序被处理器执行时,可以实现上述方法实施例中记载的任意一种的部分或全部步骤。
本发明实施例还提供一种计算机程序,该计算机程序包括指令,当该计算机程序被计算机执行时,使得计算机可以执行任意一种发放区域资源的方法的部分或全部步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可能可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

Claims (22)

1.一种硬件故障检测系统,其特征在于,包括故障检测控制器和多个故障检测组件,所述多个故障检测组件部署于多个物理服务器中,其中:
所述故障检测控制器用于获取硬件相关信息,并根据所述硬件相关信息创建故障检测组,所述故障检测组包括至少两个故障检测组件;
所述故障检测组中的故障检测组件选举出主故障检测组件,所述主故障检测组件用于对所述故障检测组对应的服务器集群进行故障检测。
2.如权利要求1所述的系统,其特征在于,所述硬件相关信息包括机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息。
3.如权利要求1或2所述的系统,其特征在于,所述故障检测组件部署于多个物理服务器中,包括:
所述故障检测组件部署于卸载卡中,所述卸载卡插置于所述物理服务器。
4.如权利要求1至3任一项所述的系统,其特征在于,所述故障检测控制器根据所述硬件相关信息创建所述故障检测组,包括:
所述故障检测控制器将相同物理位置内的服务器划分为同一个故障检测组;或者,
所述故障检测控制器将具有相同物理属性的服务器划分为同一个故障检测组;或者,
所述故障检测控制器将具有相同故障检测需求的服务器划分为同一个故障检测组;或者,
所述故障检测控制器将预设数量的服务器划分为同一个故障检测组。
5.如权利要求1至4任一项所述的系统,其特征在于,所述故障检测组中的故障检测组件选举出主故障检测组件,包括:
所述故障检测组中的故障检测组件相互发送心跳建立连接,并通过预设算法选举出所述主故障检测组件;或者,
所述故障检测组中的故障检测组件相互发送心跳建立连接,并通过预设算法选举出主故障检测组件集群,所述主故障检测组件集群包括至少一个主故障检测组件。
6.如权利要求1至5任一项所述的系统,其特征在于,
当新的故障检测组件加入所述故障检测组时,所述主故障检测组件接收所述新的故障检测组件发送的心跳,并向所述故障检测组内的故障检测组件进行广播,以使得所述故障检测组内的故障检测组件与所述新的故障检测组件建立连接。
7.一种硬件故障检测方法,其特征在于,包括:
故障检测控制器获取硬件相关信息,并根据所述硬件相关信息创建故障检测组,所述故障检测组包括至少两个故障检测组件,所述故障检测组件部署于物理服务器中;
所述故障检测组中的故障检测组件选举出主故障检测组件,所述主故障检测组件用于对所述故障检测组对应的服务器集群进行故障检测。
8.如权利要求6所述的方法,其特征在于,所述硬件相关信息包括机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息。
9.如权利要求7或8所述的方法,其特征在于,所述故障检测组件部署于物理服务器中,包括:
所述故障检测组件部署于卸载卡中,所述卸载卡插置于所述物理服务器。
10.如权利要求7至9任一项所述的方法,其特征在于,所述故障检测控制器根据所述硬件相关信息创建所述故障检测组,包括:
所述故障检测控制器将相同物理位置内的服务器划分为同一个故障检测组;或者,
所述故障检测控制器将具有相同物理属性的服务器划分为同一个故障检测组;或者,
所述故障检测控制器将具有相同故障检测需求的服务器划分为同一个故障检测组;或者,
所述故障检测控制器将预设数量的服务器划分为同一个故障检测组。
11.如权利要求7至10任一项所述的方法,其特征在于,所述故障检测组中的故障检测组件选举出主故障检测组件,包括:
所述故障检测组中的故障检测组件相互发送心跳建立连接,并通过预设算法选举出所述主故障检测组件;或者,
所述故障检测组中的故障检测组件相互发送心跳建立连接,并通过预设算法选举出主故障检测组件集群,所述主故障检测组件集群包括至少一个主故障检测组件。
12.如权利要求7至11任一项所述的方法,其特征在于,所述方法还包括:
当新的故障检测组件加入所述故障检测组时,所述主故障检测组件接收所述新的故障检测组件发送的心跳,并向所述故障检测组内的故障检测组件进行广播,以使得所述故障检测组内的故障检测组件与所述新的故障检测组件建立连接。
13.一种网络设备,其特征在于,包括:
获取单元,用于获取硬件相关信息;
处理单元,用于根据所述硬件相关信息创建故障检测组,所述故障检测组包括至少两个故障检测组件,所述故障检测组件部署于物理服务器中。
14.如权利要求13所述的网络设备,其特征在于,所述硬件相关信息包括机房位置信息和拓扑信息、交换机拓扑信息、机架位置信息和服务器位置信息。
15.如权利要求13或14所述的网络设备,其特征在于,所述故障检测组件部署于卸载卡中,所述卸载卡插置于所述网络服务器。
16.如权利要求13至15任一项所述的网络设备,其特征在于,所述处理单元,具体用于:
将相同物理位置内的服务器划分为同一个故障检测组;或者,
将具有相同物理属性的服务器划分为同一个故障检测组;或者,
将具有相同故障检测需求的服务器划分为同一个故障检测组;或者,
将预设数量的服务器划分为同一个故障检测组。
17.一种故障检测设备,其特征在于,包括:
接收单元,用于接收分组信息,所述分组信息包括所述故障检测设备所属的故障检测组,所述故障检测组包括至少两个故障检测设备,所述故障检测设备部署于物理服务器中;
选举单元,用于在所述故障检测组中选举出主故障检测设备,所述主故障检测设备用于对所述故障检测组对应的服务器集群进行故障检测。
18.如权利要求17所述的故障检测设备,其特征在于,所述故障检测设备部署于卸载卡中,所述卸载卡插置于所述物理服务器。
19.如权利要求17或18所述的故障检测设备,其特征在于,所述选举单元,具体用于:
向所述故障检测组中的其它故障检测设备发送心跳建立连接,并通过预设算法选举出所述主故障检测设备;或者,
向所述故障检测组中的其它故障检测设备发送心跳建立连接,并通过预设算法选举出主故障检测设备集群,所述主故障检测设备集群包括至少一个主故障检测设备。
20.如权利要求17至19任一项所述的故障检测设备,其特征在于,
所述接收单元,还用于在新的故障检测设备加入所述故障检测组时,接收所述新的故障检测设备发送的心跳,并向所述故障检测组内的故障检测设备进行广播,以使得所述故障检测组内的故障检测设备与所述新的故障检测设备建立连接。
21.一种计算设备,其特征在于,所述计算设备包括存储器和处理器,所述处理器执行存储器存储的计算机指令,使得所述计算设备执行权利要求7-12任一项所述的方法。
22.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,所述处理器执行权利要求7-12任一项所述的方法。
CN202011056417.1A 2020-09-30 2020-09-30 一种硬件故障检测方法、系统及相关设备 Pending CN114328036A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011056417.1A CN114328036A (zh) 2020-09-30 2020-09-30 一种硬件故障检测方法、系统及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011056417.1A CN114328036A (zh) 2020-09-30 2020-09-30 一种硬件故障检测方法、系统及相关设备

Publications (1)

Publication Number Publication Date
CN114328036A true CN114328036A (zh) 2022-04-12

Family

ID=81011690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011056417.1A Pending CN114328036A (zh) 2020-09-30 2020-09-30 一种硬件故障检测方法、系统及相关设备

Country Status (1)

Country Link
CN (1) CN114328036A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115086398A (zh) * 2022-06-14 2022-09-20 卫宁健康科技集团股份有限公司 分布式系统的通信方法、装置、设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115086398A (zh) * 2022-06-14 2022-09-20 卫宁健康科技集团股份有限公司 分布式系统的通信方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN105955824B (zh) 一种虚拟资源配置方法以及装置
CN113014634B (zh) 集群选举处理方法、装置、设备及存储介质
CN102402395B (zh) 基于仲裁磁盘的高可用系统不间断运行方法
CN109828868B (zh) 数据存储方法、装置、管理设备和双活数据存储系统
CN108153622B (zh) 一种故障处理的方法、装置和设备
CN102938705B (zh) 一种高可用多机备份路由表管理与切换方法
CN103647668A (zh) 一种高可用集群内主机群体决策系统及切换方法
CN105337780B (zh) 一种服务器节点配置方法及物理节点
CN106452846A (zh) 故障处理方法、虚拟架构管理系统和业务管理系统
CN108633311A (zh) 一种基于调用链的并发控制的方法、装置及控制节点
CN107666493B (zh) 一种数据库配置方法及其设备
CN112948063B (zh) 云平台的创建方法、装置、云平台以及云平台实现系统
CN109802986B (zh) 设备管理方法、系统、装置及服务器
CN108984349A (zh) 主节点选举方法及装置、介质和计算设备
CN104469699A (zh) 集群仲裁方法和多集群配合系统
CN110661641A (zh) 一种虚拟网络功能vnf部署方法及装置
CN111262723A (zh) 一种基于模块化硬件和软件定义的边缘智能计算平台
CN114328036A (zh) 一种硬件故障检测方法、系统及相关设备
CN104052799B (zh) 一种利用资源环实现高可用存储的方法
CN114124803B (zh) 设备管理方法、装置、电子设备及存储介质
CN112073499A (zh) 一种多机型云物理服务器的动态服务方法
CN115150253B (zh) 一种故障根因确定方法、装置及电子设备
CN111866210A (zh) 一种虚拟ip均衡分配方法、系统、终端及存储介质
CN104657240B (zh) 多内核操作系统的失效控制方法及装置
CN114584450A (zh) 双层区块链系统及共识方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination