一种故障检测方法、装置及电子设备制造方法及图纸

技术编号:20484323 阅读:25 留言:0更新日期:2019-03-02 18:45
本申请提供一种故障检测方法、装置及电子设备;所述故障检测方法包括:对于待检测故障的用户实例,获取所述用户实例的资源使用量及资源量上限;比较所述用户实例的资源使用量及资源量上限,根据比较结果确定所述用户实例是否存在故障。本申请至少一个实施例可以更加准确的对故障进行排查。

【技术实现步骤摘要】
一种故障检测方法、装置及电子设备
本专利技术涉及云计算领域,尤其涉及一种故障检测方法、装置及电子设备。
技术介绍
在云计算系统中,用户购买的云端的各种云服务称为用户实例,可以包括主机实例,数据库实例,对象存储实例,日志实例等;一个用户实例在用户看来就是一个完整的设备,但在云端是多个用户实例共享同一个或多个物理主机。对于一个用户实例,当用户部分请求变慢,发现服务器无法及时响应时,需要进行故障判断。由于云计算系统涉及的软硬件层次和技术众多,比如应用系统,操作系统,驱动程序,硬件等等各个模块都有可能是故障的来源,因此如果进行故障判断时对全部相关模块都检查一遍,耗时将会较多,通常短时间内无法准确判断是由于主机(本文所提及的主机均是指物理主机)本身软硬件故障,还是由于主机的资源使用瓶颈而导致响应时间变长。现有的故障判断方案通常是采集主机的操作系统日志来做过滤故障关键字,抓取到关键字后,判断出该主机是否有故障发生。一般系统结构如图1所示,包括:在用于向用户实例提供资源的主机上部署一个日志采集程序,负责采集该主机的日志,比如linux下的dmesg或/var/log等。然后通过日志过滤、分析程序将采集的日志和故障关键字进行文本匹配,将匹配出的故障信息(如果有)通过网络存储到数据存储(比如数据库等)设备中。然后对外提供故障数据访问接口,供查询该部分数据。当发现主机的响应变慢时,外部系统访问故障数据访问接口来查询该主机是否有采集到故障信息,根据查询结果来判断是否为主机本身故障导致。现有的故障判断方案存在以下缺点:当外部系统查询该接口获取不到数据存储设备中的故障数据时,即认为该主机无故障发生,但没有故障数据有可能是因为日志收集不全或故障关键字设置不合理造成的,所以判断结果并不一定准确。
技术实现思路
本申请提供一种故障检测方法、装置及电子设备,可以更加准确的对故障进行排查。本申请采用如下技术方案。一种故障检测方法,包括:对于待检测故障的用户实例,获取所述用户实例的资源使用量及资源量上限;比较所述用户实例的资源使用量及资源量上限,根据比较结果确定所述用户实例是否存在故障。其中,所述资源可以包括以下一或多种:中央处理器CPU、内存、磁盘、网络;所述资源使用量可以包括以下一种或多种:CPU核数、内存大小、磁盘每秒输入输出量iops、磁盘带宽、网络带宽。相应地,所述资源量上限可以包括以下一种或多种:CPU核数上限、内存上限、iops上限、磁盘带宽上限、网络带宽上限。其中,所述对于待检测故障的用户实例,获取所述用户实例的资源使用量及资源量上限前还可以包括:周期性获取各用户实例的请求统计数据;分别根据各用户实例的请求统计数据,判断各用户实例是否为待检测故障的用户实例。其中,所述请求统计数据可以包括:每秒查询率QPS、每秒事务处理量TPS和响应时间RT;所述分别根据各用户实例的请求统计数据,判断各用户实例是否为待检测故障的用户实例可以包括:对于各用户实例分别进行以下操作:当该用户实例本周期的TPS和QPS与上一周期相比,增长率均低于第一预定阈值,且本周期的RT与上一周期相比,增长率高于第二预定阈值时,将该用户实例作为待检测故障的用户实例。其中,所述获取用户实例的资源使用量可以包括:在预定长度的时间段中的T个时间点分别采集所述用户实例对各种资源的资源使用量,T是预定正整数;所述比较用户实例的资源使用量及资源量上限,根据比较结果确定所述用户实例是否存在故障可以包括:对于各种资源分别进行以下操作:将所采集的该种资源的T个资源使用量分别和所述用户实例该种资源的资源量上限进行比较,得到该种资源的T个比较结果;根据各种资源的T个比较结果确定所述用户实例是否存在故障。其中,所述根据各种资源的T个比较结果确定所述用户实例是否存在故障可以包括:如果一种资源的T个比较结果中有N个比较结果满足预定条件,则确定该种资源的使用达到极限;其中,N是小于T的正整数;如果存在至少一种资源的使用达到极限,则确定所述用户实例不存在故障;如果各种资源的使用都没有达到极限,则确定所述用户实例存在故障。其中,所述根据比较结果确定所述用户实例是否存在故障后还可以包括:如果确定所述用户实例存在故障,且所述用户实例所在主机中,仅所述用户实例被确定为存在故障,则判断是所述用户实例本身出现故障;如果确定所述用户实例存在故障,且所述用户实例所在主机中,各用户实例都被确定为存在故障,则判断是所述用户实例所在主机出现故障。一种故障检测装置,包括:检测模块,用于对于待检测故障的用户实例,获取所述用户实例的资源使用量及资源量上限;故障判断模块,用于比较所述用户实例的资源使用量及资源量上限,根据比较结果确定所述用户实例是否存在故障。其中,所述资源可以包括以下一或多种:中央处理器CPU、内存、磁盘、网络;所述资源使用量可以包括以下一种或多种:CPU核数、内存大小、磁盘每秒输入输出量iops、磁盘带宽、网络带宽;相应地,所述资源量上限可以包括以下一种或多种:CPU核数上限、内存上限、iops上限、磁盘带宽上限、网络带宽上限。其中,所述的故障检测装置还可以包括:选择模块,用于周期性获取各用户实例的请求统计数据;分别根据各用户实例的请求统计数据,判断各用户实例是否为待检测故障的用户实例。其中,所述请求统计数据可以包括:每秒查询率QPS、每秒事务处理量TPS和响应时间RT;所述选择模块分别根据各用户实例的请求统计数据,判断各用户实例是否为待检测故障的用户实例可以包括:所述选择模块对于各用户实例分别进行以下操作:当该用户实例本周期的TPS和QPS与上一周期相比,增长率均低于第一预定阈值,且本周期的RT与上一周期相比,增长率高于第二预定阈值时,将该用户实例作为待检测故障的用户实例。其中,所述检测模块获取用户实例的资源使用量可以包括:所述检测模块在预定长度的时间段中的T个时间点分别采集所述用户实例对各种资源的资源使用量,T是预定正整数;所述故障判断模块比较所述用户实例的资源使用量及资源量上限,根据比较结果确定所述用户实例是否存在故障可以包括:所述故障判断模块对于各种资源分别进行以下操作:将所采集的该种资源的T个资源使用量分别和所述用户实例该种资源的资源量上限进行比较,得到该种资源的T个比较结果;根据各种资源的T个比较结果确定所述用户实例是否存在故障。其中,所述故障判断模块根据各种资源的T个比较结果确定所述用户实例是否存在故障可以包括:所述故障判断模块当一种资源的T个比较结果中有N个比较结果满足预定条件时,确定该种资源的使用达到极限;其中,N是小于T的正整数;如果存在至少一种资源的使用达到极限,则确定所述用户实例不存在故障;如果各种资源的使用都没有达到极限,则确定所述用户实例存在故障。其中,所述故障判断模块还可以用于在确定所述用户实例存在故障后,如果该用户实例所在主机中仅该用户实例被确定为存在故障,则判断是该用户实例本身出现故障;如果该用户实例所在主机中,各用户实例都被确定为存在故障,则判断是该用户实例所在主机出现故障。一种用于进行故障检测的电子设备,包括:存储器和处理器;所述存储器用于保存用于进行故障检测的程序;所述用于进行故障检测的程序在被所述处理器读取执行时,执行如下操作:对于待检测故障的用户实例,获取本文档来自技高网
...

【技术保护点】
1.一种故障检测方法,包括:对于待检测故障的用户实例,获取所述用户实例的资源使用量及资源量上限;比较所述用户实例的资源使用量及资源量上限,根据比较结果确定所述用户实例是否存在故障。

【技术特征摘要】
1.一种故障检测方法,包括:对于待检测故障的用户实例,获取所述用户实例的资源使用量及资源量上限;比较所述用户实例的资源使用量及资源量上限,根据比较结果确定所述用户实例是否存在故障。2.如权利要求1所述的故障检测方法,其特征在于,所述资源包括以下一或多种:中央处理器CPU、内存、磁盘、网络;所述资源使用量包括以下一种或多种:CPU核数、内存大小、磁盘每秒输入输出量iops、磁盘带宽、网络带宽;相应地,所述资源量上限包括以下一种或多种:CPU核数上限、内存上限、iops上限、磁盘带宽上限、网络带宽上限。3.如权利要求1所述的故障检测方法,其特征在于,所述对于待检测故障的用户实例,获取所述用户实例的资源使用量及资源量上限前还包括:周期性获取各用户实例的请求统计数据;分别根据各用户实例的请求统计数据,判断各用户实例是否为待检测故障的用户实例。4.如权利要求3所述的故障检测方法,其特征在于,所述请求统计数据包括:每秒查询率QPS、每秒事务处理量TPS和响应时间RT;所述分别根据各用户实例的请求统计数据,判断各用户实例是否为待检测故障的用户实例包括:对于各用户实例分别进行以下操作:当该用户实例本周期的TPS和QPS与上一周期相比,增长率均低于第一预定阈值,且本周期的RT与上一周期相比,增长率高于第二预定阈值时,将该用户实例作为待检测故障的用户实例。5.如权利要求1所述的故障检测方法,其特征在于,所述获取用户实例的资源使用量包括:在预定长度的时间段中的T个时间点分别采集所述用户实例对各种资源的资源使用量,T是预定正整数;所述比较用户实例的资源使用量及资源量上限,根据比较结果确定所述用户实例是否存在故障包括:对于各种资源分别进行以下操作:将所采集的该种资源的T个资源使用量分别和所述用户实例该种资源的资源量上限进行比较,得到该种资源的T个比较结果;根据各种资源的T个比较结果确定所述用户实例是否存在故障。6.如权利要求5所述的故障检测方法,其特征在于,所述根据各种资源的T个比较结果确定所述用户实例是否存在故障包括:如果一种资源的T个比较结果中有N个比较结果满足预定条件,则确定该种资源的使用达到极限;其中,N是小于T的正整数;如果存在至少一种资源的使用达到极限,则确定所述用户实例不存在故障;如果各种资源的使用都没有达到极限,则确定所述用户实例存在故障。7.如权利要求1所述的故障检测方法,其特征在于,所述根据比较结果确定所述用户实例是否存在故障后还包括:如果确定所述用户实例存在故障,且所述用户实例所在主机中,仅所述用户实例被确定为存在故障,则判断是所述用户实例本身出现故障;如果确定所述用户实例存在故障,且所述用户实例所在主机中,各用户实例都被确定为存在故障,则判断是所述用户实例所在主机出现故障。8.一种故障检测装置,其特征在于,包括:检测模块,用于对于待检测故障的用户实例,获取所述用户实例的资源使用量及资源量上限;故障判断模块,用于比较所述用户实例的资源使用量及资源量上限...

【专利技术属性】
技术研发人员:田英鹤
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1