确定故障设备的方法及装置、非易失性存储介质与流程

文档序号:33506623发布日期:2023-03-18 02:06阅读:113来源:国知局
确定故障设备的方法及装置、非易失性存储介质与流程

1.本技术涉及计算机技术领域,具体而言,涉及一种确定故障设备的方法及装置、非易失性存储介质。


背景技术:

2.随着互联网技术(intemet technology,it)基础设施集约化、规模化,it基础设施的建设规模,如网络规模、存储规模、计算规模等也越来越大,越来越复杂,互联网分层、分域设计技术的应用也越来越广泛,导致it基础设施维护难度大。对于包含多系统业务的云平台,对云平台基础设施的运行健康和运行状态等进行监控,当监控到基础设施发生故障时,与该基础设施对应的监控节点就会产生一条告警,派出一个故障工单;当一个监控节点出现故障后,与该故障点关联的相关节点也会受到影响,因此当it基础设施出现一点故障时,产生连锁反应——发送多条告警信息,派出多个故障工单,无法快速定位真正发生故障的设备,无法快速确定故障根因。
3.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

4.本技术实施例提供了一种确定故障设备的方法及装置、非易失性存储介质,以至少解决由于互联网基础设施结构复杂造成的在出现故障时无法快速定位故障设备,无法快速确定故障根因的技术问题。
5.根据本技术实施例的一个方面,提供了一种确定故障设备的方法,该方法应用于云平台,包括:获取云平台发出的多个告警信息,其中,告警信息用于指示发送告警信息的节点出现异常;确定发送多个告警信息的多个节点,并确定多个节点之间的关联关系;根据多个节点中各个节点之间的关联关系,生成无向树,其中,无向树中的节点与云平台中的网络设备对应,无向树的连接边用于表示网络设备之间存在关联关系;根据无向树从多个节点中确定目标故障设备。
6.可选地,确定多个节点的关联关系,包括:确定多个节点对应的多个网络设备;确定多个网络设备的从属关系,其中,从属关系用于指示多个网络设备中的主设备和从设备;确定多个网络设备的物理连接关系,其中,物理连接关系用于指示多个网络设备之间通过链路连接;确定多个网络设备的逻辑关联关系,其中,逻辑关联关系用于指示多个网络设备之间存在通信依赖关系;将多个网络设备的从属关系转化为多个网络设备的直接关联关系,其中,直接关联关系用于指示预设数量的网络设备之间存在从属关系;依据多个网络设备的直接关联关系,物理连接关系以及逻辑关联关系,共同确定多个节点的关联关系。
7.可选地,根据多个节点和多个节点的关联关系,生成无向树,包括:根据多个节点和多个节点的关联关系,生成无向图;确定与无向图对应的邻接矩阵;根据邻接矩阵生成与无向图对应的无向树。
8.可选地,根据多个节点和多个节点的关联关系,生成无向图,包括:分别基于多个
节点确定无向图的顶点;将存在关联关系的多个节点连接,作为无向图的边,其中,与顶点连接的边的数量和与顶点存在关联关系的节点的数量相同;根据无向图的顶点和无向图的边,生成无向图。
9.可选地,确定与无向图对应的邻接矩阵,包括:如果多个节点之间存在关联关系,将多个节点之间的关联关系用第一字符表示;如果多个节点之间不存在关联关系,将多个节点之间的关联关系用第二字符表示;将多个节点的关联关系转换为多个第一字符和多个第二字符,将多个第一字符和多个第二字符确定为邻接矩阵的元素,以生成与无向图对应的邻接矩阵。
10.可选地,根据邻接矩阵生成与无向图对应的无向树,包括:分别确定邻接矩阵中每一行对应的节点,确定邻接矩阵的每一行中所有元素的和;将邻接矩阵的每一行的和确定为与该行对应的节点的度;确定根节点,其中,根节点为多个节点中度最大的节点;确定根节点的子节点,其中,子节点为与根节点存在关联关系的节点;根据根节点和子节点,生成无向树。
11.可选地,在根据多个节点中各个节点之间的关联关系,生成无向树之前,确定故障设备的方法还包括:将存在关联关系的多个节点分为一组,其中,每组节点对应一棵无向树。
12.可选地,根据无向树确定故障设备,包括:将与无向树的根节点对应的网络设备预判为故障设备,其中,故障设备的数量与无向树的数量相同;如果存在一棵无向树,将与无向树的根节点对应的网络设备确定为目标故障设备;如果存在多棵无向树,从与多棵无向树的多个根节点对应的网络设备中确定目标故障设备。
13.根据本技术实施例的另一方面,还提供了一种确定故障设备的装置,包括:获取模块,用于获取云平台发出的多个告警信息,其中,告警信息用于指示发送告警信息的节点出现异常;第一确定模块,用于确定发送多个告警信息的多个节点,并确定多个节点之间的关联关系;生成模块,用于根据多个节点中各个节点之间的关联关系,生成无向树,其中,无向树中的节点与云平台中的网络设备对应,无向树的连接边用于表示网络设备之间存在关联关系;第二确定模块,用于根据无向树从多个节点中确定目标故障设备。
14.根据本技术实施例的另一方面,还提供了一种非易失性存储介质,该非易失性存储介质中存储有程序,其中,在程序运行时控制非易失性存储介质所在设备执行上述的确定故障设备的方法。
15.根据本技术实施例的另一方面,还提供了一种电子设备,该电子设备包括:存储器和处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行上述的确定故障设备的方法。
16.在本技术实施例中,采用获取云平台发出的多个告警信息,其中,告警信息用于指示发送告警信息的节点出现异常;确定发送多个告警信息的多个节点,并确定多个节点之间的关联关系;根据多个节点中各个节点之间的关联关系,生成无向树,其中,无向树中的节点与云平台中的网络设备对应,无向树的连接边用于表示网络设备之间存在关联关系;根据无向树从多个节点中确定目标故障设备的方式,通过综合分析单位时间内被监控节点产生的所有告警,分析告警节点的关联关系,产生无向图和改进型无向树,达到了预判出故障的根节点的目的,从而实现了快速定位故障节点,定位故障设备,确定故障根因,将网络
全局恢复的技术效果,进而解决了由于互联网基础设施结构复杂造成的在出现故障时无法快速定位故障设备,无法快速确定故障根因技术问题。
附图说明
17.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
18.图1是根据本技术实施例的一种确定故障设备的流程图;
19.图2是根据本技术实施例的一种确定故障设备的装置的结构图;
20.图3是根据本技术实施例的一种故障设备的连接示意图;
21.图4是根据本技术实施例的一种故障无向图的示意图;
22.图5是根据本技术实施例的一种邻接矩阵的示意图;
23.图6是根据本技术实施例的一种节点的度的统计表;
24.图7是根据本技术实施例的一种无向树的示意图。
具体实施方式
25.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
26.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
27.为了更好地理解本技术实施例,以下将本技术实施例中涉及的技术术语解释如下:
28.树:一种数据结构,由有限个节点组成的一个具有层次关系的集合。
29.根节点/根结点:是树的一个组成部分,也叫树根,所有非空的二叉树中,都有且仅有一个根节点。
30.无向图:由非空集合组成的封闭的多边形,具体的,在本实施例中,由代表网络设备的多个节点组成;无向图的边不指示方向。
31.无向树:连通而无回路的无向图
32.邻接矩阵:在本实施例中,是与无向图对应的的邻接矩阵,表示顶点之间相邻关系,邻接矩阵根据无向图生成,是一个主对角线为零的对称矩阵。
33.度:一个点的度指图中与该点相连的边的数量;具体的,在本技术实施例中,一个节点的度是与该节点对应的网络设备相关联的网络设备的个数。
34.链路:有线通信时,指两个节点之间的物理线路,如电线或光缆。
35.灵活链路组(smart link):对于每个灵活链路组,组内值包含两个端口,当其中一个端口出现故障时,另一个端口的运行状态也将受到影响。
36.在相关技术中,通常采用有向图和有向树梳理具体业务的业务数据流向,以数据流向为基础对云平台进行故障分析,需要对云平台的全量网络节点进行分析,判断效率较低;并且在分析时未考虑到网络设备间的从属关系,导致有向树不完整,遗漏告警信息,无法快速定位到真正的故障点的问题。为了解决该问题,本技术实施例中通过对单位时间内的系列故障监控单元进行关联分析,计算故障监控单元的被关联程度,推导产生一棵或多棵以相对最大度为根的改进型无向树,将无向树的根确定为故障根因,从而可以解决上述问题,以下详细说明。
37.根据本技术实施例,提供了一种确定故障设备的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
38.图1是在上述运行环境下,根据本技术实施例提供的确定故障设备的流程图,如图1所示,该方法包括如下步骤:
39.步骤s102,获取云平台发出的多个告警信息,其中,告警信息用于指示发送告警信息的节点出现异常。
40.在本技术实施例中,利用监控系统对云平台进行监控,将云平台中每一个被独立识别并独立监控的网络设备定义为监控单元,例如:服务器是一个监控单元,一颗cpu、一个网卡、一个设备端口等也是一个监控单元;一个监控单元为云平台监控系统中的一个监控节点,当监控到云平台中的某一个网络设备出现故障时,与该网络设备对应的监控节点发出告警信息,在步骤s102中,获取上述告警信息以便后续确定出现异常的节点。
41.步骤s104,确定发送多个告警信息的多个节点,并确定多个节点之间的关联关系。
42.在步骤s104中,根据在步骤s102中获取的告警信息,确定与告警信息对应的节点;如果只收到一条告警信息,则根据该告警信息仅能确定一个对应的节点;如果收到了多条告警信息,则能够分别确定每一条告警信息对应的节点;如果通过告警信息确定了多个节点,还需要确定多个节点之间的关联关系,以便后续确定真正发生故障的节点。
43.步骤s106,根据多个节点中各个节点之间的关联关系,生成无向树,其中,无向树中的节点与云平台基础设施(infrastructure as a service,iaas)中的网络设备对应,无向树的连接边用于表示网络设备之间存在关联关系。
44.在步骤s106中,将节点作为无向树的节点,将存在关联关系的节点连接后作为无向树的“树杈”,生成一棵指示发出告警信息的多个网络设备的关联关系的无向树。
45.步骤s108,根据无向树从多个节点中确定目标故障设备。
46.在步骤s108中,根据在s106中生成的无向树,如果只生成一棵无向树,将该无向树的根节点确定为真正发生故障的节点,将该根节点指示的网络设备确定为发生故障的设备(即目标故障设备);如果生成多棵无向树,将多棵无向树的多个根节点预判为故障节点,再从上述多个故障节点中确定真正发生故障的节点,将与其对应的网络设备确定为真正发生故障的设备(即目标故障设备),减少了确定故障节点的时间。
47.通过上述步骤,对云平台中发生故障的监控单元分析,基于故障节点和包括从属关系在内的故障节点的关联关系,生成故障节点的无向树,从而实现快速、高效的确定根故障的技术效果。
48.根据本技术一个可选的实施例,确定多个节点的关联关系,包括确定以下几种关联关系:确定多个节点对应的多个网络设备;确定多个网络设备的从属关系,其中,从属关系用于指示多个网络设备中的主设备和从设备;确定多个网络设备的物理连接关系,其中,物理连接关系用于指示多个网络设备之间通过链路连接;确定多个网络设备的逻辑关联关系,其中,逻辑关联关系用于指示多个网络设备之间存在通信依赖关系;将多个网络设备的从属关系转化为多个网络设备的直接关联关系,其中,直接关联关系用于指示预设数量的网络设备之间存在从属关系;依据多个网络设备的直接关联关系,物理连接关系以及逻辑关联关系,共同确定多个节点的关联关系。
49.在本实施例中,节点的关联关系包括:由节点对应的网络设备的从属关系转化的网络设备的直接关联关系;节点对应的网络设备的逻辑关联关系,以及与节点对应的网络设备的物理连接关系。具体的,上述从属关系,逻辑关联关系和物理连接关系通过以下方法确定。
50.从属关系:从属关系包含主从关系、包含关系;例如,网络设备n为网络设备m的组成部分,则网络设备m和网络设备n之间为主从/包含关系,即网络设备m和网络设备n之间存在从属关系;再例如,网络交换机由数据板、电源、主控板等组成,同时数据板由端口组成,则网络交换机与数据板、电源、主控板之间存在从属关系,数据板与端口之间存在从属关系。如果,采用f(m,n)表示网络设备m和网络设备n之间存在从属关系,则对于主设备a,主设备a的从设备b,从设备b的从设备c等多个存在从属关系的网络设备,采用f(a,f(b,c)
……
f(k,l))表示,其中,k表示多个网络设备之间的主设备,l表示多个网络设备之间的从设备。
51.为便于后续生成无向树,本实施例中将多个网络设备之间的从属关系,转换为两个(即预设数量)网络设备之间的直接关联关系,将直接关联关系用rm表示,则对于上述两个网络设备的情况:f(m,n)直接转换为rm{(m,n)};而对于上述多个网络设备的情况:f(a,f(b,c)
……
f(k,l))则转换为rsm==ra{(a,b),(a,c)

(a,k),(a,l)}∪rb{(b,c)

(b,k),(b,l)}∪
……
∪rk{(k,l)},其中,s表示网络设备的中的主设备,“∪”表示取并集。
52.逻辑关联关系:如果多个不同网络设备的链路存在状态联动关系,即当其中一条链路出现故障时,对另一条链路存在影响,则认为这两条链路之间存在逻辑关系;例如,在网络规划中,将一个设备的2个端口定义为上行端口和下行端口,如果一个端口的接口关闭(down),那么另一个端口也应自动down否则将造成业务数据的中断,则与这两个端口连接的链路之间均存在逻辑关联联关系;对于开启了灵活链路组(smart link)的端口组,与该端口组中的端口连接的链路均存在逻辑关联关系,将逻辑关联关系用rl表示,则对于存在逻辑关联关系的多个网络设备组成集合,rl={(l1,l2),(l3,l4),(l2,l5)
……
(li,lj)}。其中,网络设备li与lj之间存在逻辑关联关系,i和j可以取值为任意自然数。
53.物理连接关系:如果不同网络设备之间通过物理链路关联,则说明网络设备之间存在物理连接关系,相应的,与网络设备对应的节点之间存在物理连接关系。将物理连接关系用rp表示,则对于存在物理连接关系的多个网络设备组成集合:rp={(p1,p2),(p3,p4)(p2,p5)
……
(pi,pj)}其中,网络设备pi与pj具有物理连接关联关系,i和j可以取值为任意
自然数。
54.需要说明的是,在本技术实施例中,多个网络设备之间无论是存在从属关系、逻辑关联关系还是物理连接关系,均认为其对应的节点之间存在关联关系,即在本实施例中的节点的关联关系r,应由物理连接关系rp,逻辑关联关系rl,直接关联关系用rsm组成,整体关联关系集合r=rp+rl+rsm。
55.根据本技术另一个可选的实施例,根据多个节点和多个节点的关联关系,生成无向树,包括:根据多个节点和多个节点的关联关系,生成无向图;确定与无向图对应的邻接矩阵;根据邻接矩阵生成与无向图对应的无向树。
56.为确定故障根因,首先需要根据上述多个故障节点生成无向树,在本实施例中,生成无向树包括三个步骤,首先根据上述多个告警信息指示的节点以及通过上一实施例确定的上述节点之间的关联关系生成无向图;接下来将无向图以邻接矩阵的形式表示以确定每个节点的度;最后根据多个节点和多个节点的度生成无向树。
57.根据本技术一些可选的实施例,根据多个节点和多个节点的关联关系,生成无向图,包括以下步骤:分别基于多个节点确定无向图的顶点;将存在关联关系的多个节点连接,作为无向图的边,其中,与顶点连接的边的数量和与顶点存在关联关系的节点的数量相同;根据无向图的顶点和无向图的边,生成无向图。
58.在本实施例中,梳理在节点出现异常时发送的告警信息,整理告警信息对应的故障监控单元(即节点),生成异常节点集合v,其中,v={v1,v2,v3
……
vi},vi标识具体的监控单元(即节点),将上述集合v中的每一个节点作为有向图的顶点。根据上述实施例确定的节点关联关系集合r,通过以下方法判断集合v中任意两个节点vi和vj之间是否存在关联关系:通过语句for(i=1:card(v)),for(j=1:card(v))遍历集合v中的节点,其中,card(v)标识集合v元素数量;每次遍历获取一个vi和一个vj;将每次遍历获取的vi和vj作为矩阵的元素,生成多个矩阵matrix(vi,vj);计算矩阵matrix(vi,vj)的值,具体的,如果遍历集合v得到的vi和vj均属于集合r,说明vi和vj之间存在关联关系;如果vi和vj的其中之一不属于集合r,或者均不属于集合r,说明vi和vj之间不存在关联关系;将存在关联关系的节点vi和节点vj连接,作为无向图的边,得到故障节点的无向图。
59.将上一实施例中的无向图以邻接矩阵的形式存储在云平台iaas中,包括以下步骤:如果多个节点之间存在关联关系,将多个节点之间的关联关系用第一字符表示;如果多个节点之间不存在关联关系,将多个节点之间的关联关系用第二字符表示;将多个节点的关联关系转换为多个第一字符和多个第二字符,将多个第一字符和多个第二字符确定为邻接矩阵的元素,以生成与无向图对应的邻接矩阵。
60.分别计算每个矩阵matrix(vi,vj)的值,具体的,如果遍历集合v得到的vi和vj均属于集合r,说明vi和vj之间存在关联关系,则matrix(vi,vj)的值为1(即第一字符);如果vi和vj的其中之一不属于集合r,或者均不属于集合r,说明vi和vj之间不存在关联关系,则matrix(vi,vi)的值为0(即第二字符);得到多个矩阵matrix(vi,vj)的值的集合e:e=∪{matrix(vi,vj)};则上一实施例的无向图g,可由故障节点集合v和表示故障节点之间关联关系的集合e共同表示为:g={v,e}。将节点集合v中的每个节点作为行标志和列标志,将其之间的连接关系作为矩阵的元素,将上述无向图g用邻接矩阵表示,由于本实施例中将节点之间的关联关系用0和1表示,因此,本实施例中由无向图转换的矩阵中值存在元素0和元素
1。
61.举例来说,如果存在主机和端口两个网络设备,则节点集合v中包括v1(指代主机)和v2(指代端口)两个节点,主机和端口之间存在关联关系,则矩阵matrix(v1,v2),矩阵matrix(v2,v1)的值为1,主机和主机,端口和端口之间均不存在关联关系,则矩阵matrix(v1,v1),矩阵matrix(v2,v2)的值为0;由此可以生成一个关于v1,v2的邻接矩阵其中,矩阵第一行的行标志为v1(指代主机),第一列的列标志为v1(指代主机),矩阵第二行的行标志为v2(指代端口),第二列的列标志为v2(指代端口),矩阵第一行第一列的元素0指代v1(指代主机)和v1(指代主机)之间的关联关系;矩阵第一行第二列的元素1指代v1(指代主机)和v2(指代端口)之间的关联关系;矩阵第二行第一列的元素1指代v2(指代端口)和v1(指代主机)之间的关联关系;矩阵第二行第二列的元素0指代v2(指代端口)和v2(指代端口)之间的关联关系。
62.根据本技术一个可选的实施例,根据邻接矩阵生成与无向图对应的无向树,包括:分别确定邻接矩阵中每一行对应的节点,确定邻接矩阵的每一行中所有元素的和;将邻接矩阵的每一行的和确定为与该行对应的节点的度;确定根节点,其中,根节点为多个节点中度最大的节点;确定根节点的子节点,其中,子节点为与根节点存在关联关系的节点;根据根节点和子节点,生成无向树。
63.沿用上一实施例中的举例,邻接矩阵第一行对应的节点为v1(指代主机),则节点v1的度为矩阵中第一行的元素的和,即0+1=1,节点v1的度为1,说明在生成无向树时,与节点v1连接的边为一条;邻接矩阵第二行对应的节点为v2(指代端口),则节点v2的度为矩阵中第二行的元素的和,即1+0=1,节点v2的度为1,说明在生成无向树时,与节点v2连接的边为一条。由于上述节点v1和v2之间存在关联关系,因此根据节点v1和v2只能生成一棵无向树,由于v1和v2的度均为1,则节点v1和v2不是该无向树的根节点;如果上述v1的度为3,v2的度为1,则根据节点v1和v2生成的无向树中,节点v1为根节点。
64.根据本技术一些优选的实施例,在根据多个节点中各个节点之间的关联关系,生成无向树之前,确定故障设备的方法还包括:将存在关联关系的多个节点分为一组,其中,每组节点对应一棵无向树。
65.在一些优选的实施例中,如果上述用例中,除了存在关联关系的主机和端口之外,还存在一个与主机和端口均不存在关联关系的网络设备1,则上述存在关联关系的v1(指代主机)和v2(指代端口)组成一棵节点树;网络设备1作为一个节点单独存在。如果除了存在关联关系的主机和端口之外,还存在与主机和端口均不存在关联关系的网络设备1和网络设备2,且网络设备1和网络设备2之间存在关联关系,则v1(指代主机)和v2(指代端口)组成一棵节点树;网络设备1和网络设备2组成另一棵节点树。如果除了存在关联关系的主机和端口之外,还存在与主机和端口均不存在关联关系的网络设备1和网络设备2,但网络设备1和网络设备2之间不存在关联关系,则v1(指代主机)和v2(指代端口)组成一棵节点树;网络设备1作为一个节点单独存在,网络设备2作为一个节点单独存在。
66.生成无向树的方法如下:将上述节点中度最大的节点作为无向树的根节点,建立一棵空的无向树,从无向图中搜索未纳入无向树的节点中,度最大的节点,作为无向树的
根,从无向图中查找该根的关联节点,作为无向树根节点的子节点,对当前无向树的每个叶子节点,以每个子节点为父节点,搜索关联节点,产生当前父节点的子节点,递归该算法,直到生成完整的无向树,即产生无向树的所有真正叶子节点。如果无向图中是否还有未纳入无向树中的节点,重复上述步骤,生成新的无向树,直到将故障无向图中所有的节点转化为一棵或多棵改进型无向树。通过上述方法产生的每棵无向树都是基于相对最大度的节点为根节点产生的改进型无向树,每棵树的根可预判为根故障。
67.根据本技术一个可选的实施例,根据无向树确定故障设备,包括:将与无向树的根节点对应的网络设备预判为故障设备,其中,故障设备的数量与无向树的数量相同;如果存在一棵无向树,将与无向树的根节点对应的网络设备确定为目标故障设备;如果存在多棵无向树,从与多棵无向树的多个根节点对应的网络设备中确定目标故障设备。
68.在本实施例中,如果在上述实施例中告警信息指示的节点生成一棵无向树,则将无向树的根节点为确定为故障节点,该节点对应的设备确定为发生故障的设备,该故障设备的故障原因确定为故障根因;如果生成多棵无向树,则将每棵无向树的根节点确定为故障节点,因此能够预判多个故障设备,再从这多个故障设备中确定真正发生故障的设备(即目标故障设备)。
69.图2是根据本技术实施例提供的确定故障设备的装置的结构图,如图2所示,该装置包括:获取模块20,用于获取云平台发出的多个告警信息,其中,告警信息用于指示发送告警信息的节点出现异常;第一确定模块22,用于确定发送多个告警信息的多个节点,并确定多个节点之间的关联关系;生成模块24,用于根据多个节点中各个节点之间的关联关系,生成无向树,其中,无向树中的节点与云平台中的网络设备对应,无向树的连接边用于表示网络设备之间存在关联关系;第二确定模块26,用于根据无向树从多个节点中确定目标故障设备。
70.需要说明的是,图2所示实施例的优选实施方式可以参见图1所示实施例的相关描述,此处不再赘述。
71.需要说明的是,上述确定故障设备的装置中的各个模块可以是程序模块(例如是实现某种特定功能的程序指令集合),也可以是硬件模块,对于后者,其可以表现为以下形式,但不限于此:上述各个模块的表现形式均为一个处理器,或者,上述各个模块的功能通过一个处理器实现。
72.具体实施时,如果由主机(host1),主机host1的网卡nic1,主机host1的网卡nic2,交换机sw1的端口:sw1.ge0/0/0,交换机sw1的端口:sw1.ge0/0/1,交换机sw2的端口:sw2.ge0/0/0和交换机sw3的端口:sw3.ge0/0/1组成的基础设施结构发生故障,图3是故障设备的连接示意图,如图3所示,主机接口host1.nic1与端口sw1.ge0/0/0连接,端口sw1.ge0/0/0与端口sw3.ge0/0/1连接,主机接口host1.nic2与端口sw2.ge0/0/0连接,并且端口sw1.ge0/0/0和端口sw1.ge0/0/1之间存在smartlink关系。
73.故障发生时,在单位时间,如在5分钟内,获取模块20接收到以下由各个设备对应的节点发出的告警信息:(1)物理主机host1的nic2网卡不正常;(2)物理主机host1的nic1网卡不正常;(3)交换机sw1的ge0/0/0端口宕;(4)物理主机host1宕机;(5)交换机sw2的ge0/0/0端口宕;(6)交换机sw1的ge0/0/1端口宕;(7)交换机sw3的端口ge 0/0/1端口宕;(8)集群cluster有服务器host1脱机。第一确定模块22通过上述告警信息确定以下节点:与
主机对应的节点host1,与网卡nic1对应的节点host1.nic1;与网卡nic2对应的节点host1.nic2;节点sw1.ge0/0/0,节点sw1.ge0/0/1,节点sw2.ge0/0/0,节点sw3.ge0/0/1,节点cluster;并根据图3确定上述节点之间的关系。
74.生成模块24生成如图4的故障无向图,如图4所示,主机host1与网卡nic1,网卡nic2和集群cluster之间存在从属关系,在故障无向图中,节点host1与节点host1.nic1连接;与节点host1.nic2连接,还与节点cluster连接;网卡nic2与端口sw2.ge0/0/0之间存在物理连接关系,节点host1.nic2与及节点sw2.ge0/0/0连接;网卡nic1与端口sw1.ge0/0/0之间存在物理连接关系,节点host1.nic1与及节点sw1.ge0/0/0连接;端口sw1.ge0/0/0和端口sw1.ge0/0/1之间存在smartlink关系(逻辑连接关系),节点sw1.ge0/0/0与节点sw1.ge0/0/1连接;交换机sw1和交换机sw3之间存在物理连接关系,节点sw1.ge0/0/1和节点sw3.ge0/0/1连接。
75.生成模块24还将上述无向图转换为图5所示的邻接矩阵的示意图,如图5所示,矩阵的第一行的行标志和第一列的列标志为节点host1.nic2,矩阵的第二行的行标志和第二列的列标志为节点host1.nic1,矩阵的第三行的行标志和第三列的列标志为节点sw1.ge0/0/0,矩阵的第四行的行标志和第四列的列标志为节点hostl,矩阵的第五行的行标志和第五列的列标志为节点sw2.ge0/0/0,矩阵的第六行的行标志和第六列的列标志为节点sw1.ge0/0/1,矩阵的第七行的行标志和第七列的列标志为节点sw3.ge0/0/1,矩阵的第八行的行标志和第八列的列标志为节点cluster,根据上述网络设备的关联关系,则在邻接矩阵中只有第一行第四列,第一行第五列,第二行第三列,第二行第四列,第二行第六列,第三行第二列,第三行第六列,第四行第一列,第四行第二列,第四行第八列,第五行第一列,第六行第三列,第六行第七列,第七行第六列,第八行第四列的元素为1,其余元素均为0。生成模块24根据邻接矩阵确定每个节点的度,图6是节点的度的统计表,如图6所示,根据上述邻接矩阵,节点host1.nic2的度为2,节点host1.nic1的度为3,节点sw1.ge0/0/0的度为2,节点host1的度为3,节点sw2.ge0/0/0的度为1,节点sw1.ge0/0/1的度为2,节点sw3.ge0/0/1的度为1,节点cluster的度为1。
76.生成模块24根据节点结合和节点的度生成图7所示的无向树的示意图,如图7所示,节点host1的为无向树的根节点,节点host1.nic2,节点cluster和节点host1.nic1为节点host1的子节点;节点sw2.ge0/0/0为节点host1.nic2的子节点;节点sw1.ge0/0/0为节点host1.nic1的子节点;节点sw1.ge0/0/1为sw1.ge0/0/0的子节点;节点sw3.ge0/0/1为节点sw1.ge0/0/1的子节点。由于本次故障只产生了一棵无向树,因此第二确定模块26预判只有一个根告警为host1,“物理主机host1宕机”为根因。
77.根据上述方法,仅对故障单元分析,将三种关联关系集合计算,生成故障无向树,对故障整体情况一目了然,故障解决有序、有据,能够快速确定故障根因。
78.本技术实施例还提供了一种非易失性存储介质,该非易失性存储介质中存储有程序,其中,在程序运行时控制非易失性存储介质所在设备执行以上的确定故障设备的方法。
79.上述非易失性存储介质用于存储执行以下功能的程序:获取云平台发出的多个告警信息,其中,告警信息用于指示发送告警信息的节点出现异常;确定发送多个告警信息的多个节点,并确定多个节点之间的关联关系;根据多个节点中各个节点之间的关联关系,生成无向树,其中,无向树中的节点与云平台中的网络设备对应,如果网络设备之间存在关联
关系,将与网络设备对应的节点连接作为无向树的连接边;根据无向树从多个节点中确定目标故障设备。
80.本技术实施例还提供了一种电子设备,该电子设备包括:存储器和处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的确定故障设备的方法。
81.上述电子设备用于运行执行以下功能的程序:获取云平台发出的多个告警信息,其中,告警信息用于指示发送告警信息的节点出现异常;确定发送多个告警信息的多个节点,并确定多个节点之间的关联关系;根据多个节点中各个节点之间的关联关系,生成无向树,其中,无向树中的节点与云平台中的网络设备对应,如果网络设备之间存在关联关系,将与网络设备对应的节点连接作为无向树的连接边;根据无向树从多个节点中确定目标故障设备。
82.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
83.在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
84.在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
85.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
86.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
87.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
88.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1