集群故障检测方法和装置制造方法及图纸

技术编号:23161527 阅读:64 留言:0更新日期:2020-01-21 21:56
本公开是关于一种集群故障检测方法和装置。涉及计算机互联网技术,解决了人工巡检和部署专用代理巡检无法在集群规模较大及多集群场景中满足复杂巡检需求的问题。该方法包括:在集群内节点中检测服务异常的服务异常节点;当检测到所述服务异常节点时,获取与所述服务异常节点所属集群存在第一依赖关系的至少一个上游服务集群;检测各个所述上游服务集群的服务状态信息,所述服务状态信息指示所述上游服务器集群服务正常或服务异常。本公开提供的技术方案适用于大规模集群巡检场景,实现了对服务复杂度高的网络环境下的高效、准确的巡检。

Cluster fault detection method and device

【技术实现步骤摘要】
集群故障检测方法和装置
本公开涉及计算机互联网技术,尤其涉及一种集群检测方法和装置。
技术介绍
一般的巡检方式只能获取到节点服务的运行状态,然后通过其他方式展示,由于只有服务级别的巡检,一旦发现问题,需要查看服务日志或者相关监控,由人工排查定位故障;在涉及到多集群的情况下,还需要在若干系统上来回切换以排查问题。随着服务的复杂度不断升高,集群中的服务器甚至增加到达了上万台的规模,巡检难度随之增高。可通过部署多个代理巡检执行模块作为节点巡检的渠道,形成分布式的巡检系统进行自动巡检。中心模块将巡检任务分配给多个代理巡检执行模块,每个代理巡检执行模块连接有若干节点,代理巡检执行模块将巡检任务发送至其连接的节点中执行巡检。但在集群规模较大及多集群场景中,通过部署专用的节点巡检渠道实现过于复杂,成本过高。在这样的场景下,人工巡检的工作量更是过大,导致故障无法被及时发现,故障排除严重滞后,网络性能受损,极大的影响了用户体验。
技术实现思路
为克服相关技术中存在的问题,本公开提供一种集群故障检测方法和装置。根据本公开实施例的第一方面,提供一种集群故障检测方法,包括:在集群内节点中检测服务异常的服务异常节点;当检测到所述服务异常节点时,获取与所述服务异常节点所属集群存在第一依赖关系的至少一个上游服务集群;检测各个所述上游服务集群的服务状态信息,所述服务状态信息指示所述上游服务器集群服务正常或服务异常。进一步的,所述在集群内节点中检测服务异常的服务异常节点,包括:获取集群索引,所述集群索引指示所述集群内部拓扑结构,所述集群内部拓扑结构包括:集群内的全部节点和各节点间的连接关系;通过监测系统获取所述集群内各个节点的工作状态信息,所述监测系统至少包括以下平台中的任一或任意多个:集群主节点、分布式布置与监控系统、机器报障系统、机器状态检测设备、分布式版本控制系统、关键指标监控系统,其中,所述集群主节点提供其所属集群内各节点的服务状态信息,所述机器报障系统提供节点的报修信息,所述机器状态检测设备提供节点的连通性信息和/或硬件性能信息,所述分布式版本控制系统提供节点的服役情况信息,所述关键指标监控系统提供节点级和集群级的关键指标;根据所述工作状态信息,确定所述服务异常节点。进一步的,所述根据所述工作状态信息,确定所述服务异常节点,包括以下至少一项:根据所述集群内各节点的服务状态信息,将服务状态异常的节点确定为所述服务异常节点;根据所述集群内各节点的服役情况信息,将退役节点确定为所述服务异常节点;根据所述集群内各节点的报修信息,将处于报修中的节点确定为所述服务异常节点;根据所述集群内的各节点的连通性信息,将发生连通异常的节点确定为所述服务异常节点;根据所述集群内的各节点的硬件性能信息,将发生硬件异常的节点确定为所述服务异常节点。进一步的,该方法还包括:获取各集群所述提供的服务之间的第二依赖关系,所述第二依赖关系包括以下至少一项:下游服务调用上游服务、所述下游服务以所述上游服务的输出作为输入;将提供所述下游服务的集群确定为下游服务集群,将提供所述上游服务的集群确定为上游服务集群;基于所述下游服务集群和所述上游服务集群所提供的服务之间的第二依赖关系,确定所述下游服务集群和所述上游服务集群之间的第一依赖关系。进一步的,所述获取与所述服务异常节点所属集群存在第一依赖关系的至少一个上游服务集群,包括:获取所述第一依赖关系;根据所述第一依赖关系确定所述服务异常节点所属集群作为下游服务集群时对应的至少一个上游服务集群。进一步的,所述服务状态信息包含集群级关键指标的检测结果,所述检测各个所述上游服务集群的服务状态信息,包括:获取各个所述上游服务集群的预置的集群级关键指标的检测结果;根据所述集群级关键指标的检测结果,确定各个所述上游服务集群服务正常或服务异常。进一步,该方法还包括:在存在至少一个服务异常的上游服务集群的情况下,确定所述上游服务集群的服务异常构成了所述服务异常节点发生服务异常的原因。进一步的,该方法还包括:获取存在第一依赖关系的多个集群的集群级关键指标的检测结果;根据所述检测结果,发现存在服务异常的上游服务集群;将所述上游服务集群服务异常的信息发送给所述上游服务集群的下游服务集群。根据本公开实施例的第二方面,提供一种集群故障检测装置,包括:节点异常检测模块,用于在集群内节点中检测服务异常的服务异常节点;上游服务确定模块,用于当检测到所述服务异常节点时,获取与所述服务异常节点所属集群存在第一依赖关系的至少一个上游服务集群;上游服务检测模块,用于检测各个所述上游服务集群的服务状态信息,所述服务状态信息指示所述上游服务器集群服务正常或服务异常。进一步的,所述节点异常检测模块包括:集群内部结构分析子模块,用于获取集群索引,所述集群索引指示所述集群内部拓扑结构,所述集群内部拓扑结构包括:集群内的全部节点和各节点间的连接关系;信息收集子模块,用于通过监测系统获取所述集群内各个节点的工作状态信息,所述监测系统至少包括以下平台中的任一或任意多个:集群主节点、分布式布置与监控系统、机器报障系统、机器状态检测设备、分布式版本控制系统、关键指标监控系统,其中,所述集群主节点提供其所属集群内各节点的服务状态信息,所述机器报障系统提供节点的报修信息,所述机器状态检测设备提供节点的连通性信息和/或硬件性能信息,所述分布式版本控制系统提供节点的服役情况信息,所述关键指标监控系统提供节点级和集群级的关键指标;服务异常节点确定子模块,用于根据所述工作状态信息,确定所述服务异常节点。进一步的,该装置还包括:服务依赖关系解析模块,用于获取各集群所述提供的服务之间的第二依赖关系,所述第二依赖关系包括以下至少一项:下游服务调用上游服务、所述下游服务以所述上游服务的输出作为输入;集群确定模块,用于将提供所述下游服务的集群确定为下游服务集群,将提供所述上游服务的集群确定为上游服务集群;集群依赖关系解析模块,用于基于所述下游服务集群和所述上游服务集群所提供的服务之间的第二依赖关系,确定所述下游服务集群和所述上游服务集群之间的第一依赖关系。进一步的,所述上游服务确定模块包括:集群关系解析模块,用于获取所述第一依赖关系;上游集群确定模块,用于根据所述第一依赖关系确定所述服务异常节点所属集群作为下游服务集群时对应的至少一个上游服务集群。进一步的,所述服务状态信息包含集群级关键指标的检测结果,所述上游服务检测模块包括:指标获取子模块,用于获取各个所述上游服务集群的预置的集群级关键指标的检测结果;上游服务分析子模块,用于根据所述集群级关键指标的检测结果,确定各个所述上游服务集群服务正常或服务异常。本文档来自技高网...

【技术保护点】
1.一种集群故障检测方法,其特征在于,包括:/n在集群内节点中检测服务异常的服务异常节点;/n当检测到所述服务异常节点时,获取与所述服务异常节点所属集群存在第一依赖关系的至少一个上游服务集群;/n检测各个所述上游服务集群的服务状态信息,所述服务状态信息指示所述上游服务器集群服务正常或服务异常。/n

【技术特征摘要】
1.一种集群故障检测方法,其特征在于,包括:
在集群内节点中检测服务异常的服务异常节点;
当检测到所述服务异常节点时,获取与所述服务异常节点所属集群存在第一依赖关系的至少一个上游服务集群;
检测各个所述上游服务集群的服务状态信息,所述服务状态信息指示所述上游服务器集群服务正常或服务异常。


2.根据权利要求1所述的方法,其特征在于,所述在集群内节点中检测服务异常的服务异常节点,包括:
获取集群索引,所述集群索引指示所述集群内部拓扑结构,所述集群内部拓扑结构包括:集群内的全部节点和各节点间的连接关系;
通过监测系统获取所述集群内各个节点的工作状态信息,所述监测系统至少包括以下平台中的任一或任意多个:
集群主节点、分布式布置与监控系统、机器报障系统、机器状态检测设备、分布式版本控制系统、关键指标监控系统,
其中,所述集群主节点提供其所属集群内各节点的服务状态信息,所述机器报障系统提供节点的报修信息,所述机器状态检测设备提供节点的连通性信息和/或硬件性能信息,所述分布式版本控制系统提供节点的服役情况信息,所述关键指标监控系统提供节点级和集群级的关键指标;
根据所述工作状态信息,确定所述服务异常节点。


3.根据权利要求2所述的方法,其特征在于,所述根据所述工作状态信息,确定所述服务异常节点,包括以下至少一项:
根据所述集群内各节点的服务状态信息,将服务状态异常的节点确定为所述服务异常节点;
根据所述集群内各节点的服役情况信息,将退役节点确定为所述服务异常节点;
根据所述集群内各节点的报修信息,将处于报修中的节点确定为所述服务异常节点;
根据所述集群内的各节点的连通性信息,将发生连通异常的节点确定为所述服务异常节点;
根据所述集群内的各节点的硬件性能信息,将发生硬件异常的节点确定为所述服务异常节点。


4.根据权利要求1所述的方法,其特征在于,该方法还包括:
获取各集群所述提供的服务之间的第二依赖关系,所述第二依赖关系包括以下至少一项:下游服务调用上游服务、所述下游服务以所述上游服务的输出作为输入;
将提供所述下游服务的集群确定为下游服务集群,将提供所述上游服务的集群确定为上游服务集群;
基于所述下游服务集群和所述上游服务集群所提供的服务之间的第二依赖关系,确定所述下游服务集群和所述上游服务集群之间的第一依赖关系。


5.根据权利要求4所述的方法,其特征在于,所述获取与所述服务异常节点所属集群存在第一依赖关系的至少一个上游服务集群,包括:
获取所述第一依赖关系;
根据所述第一依赖关系确定所述服务异常节点所属集群作为下游服务集群时对应的至少一个上游服务集群。


6.根据权利要求5所述的方法,其特征在于,所述服务状态信息包含集群级关键指标的检测结果,所述检测各个所述上游服务集群的服务状态信息,包括:
获取各个所述上游服务集群的预置的集群级关键指标的检测结果;
根据所述集群级关键指标的检测结果,确定各个所述上游服务集群服务正常或服务异常。


7.根据权利要求6所述的方法,其特征在于,该方法还包括:
在存在至少一个服务异常的上游服务集群的情况下,确定所述上游服务集群的服务异常构成了所述服务异常节点发生服务异常的原因。


8.根据权利要求4所述的集群故障检测方法,其特征在于,该方法还包括:
获取存在第一依赖关系的多个集群的集群级关键指标的检测结果;
根据所述检测结果,发现存在服务异常的上游服务集群;
将所述上游服务集群服务异常的信息发送给所述上游服务集群的下游服务集群。


9.一种集群故障检测装置,其特征在于,包括:
节点异常检测模块,用于在集群内节点中检测服务异常的服务异常节点;
上游服务确定模块,用于当检测到所述服务异常节点时,获取与所述服务异常节点所属集群存在第一依赖关系的至少一个上游服务集群;
上游服务检测模块,...

【专利技术属性】
技术研发人员:刘志杰
申请(专利权)人:北京小米移动软件有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1