一种慢盘检测方法及设备与流程

文档序号:35273392发布日期:2023-08-30 20:46阅读:52来源:国知局
一种慢盘检测方法及设备与流程

本技术涉及服务器,尤其涉及一种慢盘检测方法及设备。


背景技术:

1、在各行业数字化转型不断深入的背景下,业务高可用性及连续性需求愈加明显。作为提供算力的基础设施,计算设备的运行状态的异常将直接对上层业务带来冲击。以计算设备为服务器为例,目前,服务器硬件故障将由基板管理控制器(baseboard managementcontroller,bmc)准确检测且及时告警,现场运维人员根据告警进行快速地隔离及更换处理。

2、在这个过程中,服务器中的盘符所标识的硬盘或者磁盘阵列性能的异常下跌同样会严重拖慢整个业务的正常运行,对于实时性较强的业务场景会造成十分严重的影响,而由于硬盘或者磁盘阵列的磁性退化、坏道或振动等原因,硬盘或者磁盘阵列会出现输入输出(io,input/out)响应慢、性能降低等问题,这种硬盘或者磁盘阵列就会被称为慢盘,慢盘并非坏盘;因此,传统的bmc故障检测及告警方案已无法覆盖慢盘场景,且传统的磁盘阵列卡(raid,redundant arrays of independent disks)和南桥(platform controller hub,pch)仅能实现对盘符所标识的硬盘或者磁盘阵列对应的成员盘的运行状态进行判断和上报,无法对慢盘场景作出准确识别。


技术实现思路

1、本技术实施例提供了一种慢盘检测方法及设备,可以提升慢盘识别的准确性。

2、第一方面,本技术实施例提供了一种慢盘检测方法,该方法包括:获取目标设备的设备输入输出io服务时间,设备io服务时间包括n1个盘符中每个盘符对应的io服务时间;基于设备io服务时间和k1个聚类中心,确定k1个距离;k1和n1为正整数;一个聚类中心对应一个慢盘检测阈值;从k1个距离中确定目标距离,从k1个聚类中心中确定目标距离对应的目标聚类中心,并确定目标聚类中心对应的目标慢盘检测阈值;基于目标慢盘检测阈值和各盘符对应的io服务时间,对目标设备中各盘符所标识的硬盘或者逻辑硬盘进行慢盘检测。

3、在该技术方案中,可以实现从盘符对应的io性能的角度对慢盘场景作出准确识别,同时,通过设备io服务时间与聚类中心之间的距离可以选择合适的目标慢盘检测阈值,解决了慢盘检测阈值单一固化的问题,提升了慢盘检测的精准性和有效性。

4、在一种实现方式中,该方法还包括:将m个训练样本输入到聚类模型,得到聚类模型输出的k1个聚类集合以及k1个聚类中心,一个聚类集合对应一个聚类中心;基于k1个聚类中心,生成k1个慢盘检测阈值;其中,m个训练样本中的每个训练样本均包括n1个盘符中每个盘符对应的历史io服务时间。

5、在该技术方案中,通过利用聚类模型生成k1个聚类中心,从而可以实现可差异化定制慢盘检测阈值,解决慢盘检测阈值单一固化的问题,提升了慢盘检测的准确性。此外,由于聚类模型具备无监督学习特性,因此可以差异化定制不同厂商、不同类型、不同型号的硬盘或者逻辑硬盘在不同场景下的慢盘检测阈值,提升慢盘检测阈值定制的灵活性。

6、在一种实现方式中,该方法还包括:将m个第一训练样本输入到聚类模型,得到聚类模型输出的k2个初始聚类集合以及k2个初始聚类中心,一个初始聚类集合对应一个初始聚类中心;k2为正整数;基于k2个初始聚类中心,生成k2个初始慢盘检测阈值;将m个第二训练样本输入到聚类模型,得到聚类模型输出的k1个聚类集合以及k1个聚类中心;k1为正整数;基于k1个聚类中心,生成k1个参考慢盘检测阈值;基于k1个参考慢盘检测阈值,更新k2个初始慢盘检测阈值,得到k1个慢盘检测阈值;其中,每个第一训练样本均包括n2个盘符中每个盘符对应的历史io服务时间,每个第二训练样本均包括n1个盘符中每个盘符对应的历史io服务时间,n2均为正整数。

7、在该技术方案中,通过对初始慢盘检测阈值进行更新,可以解决硬盘性能变化,硬盘更换以及业务场景变化等情况对慢盘检测标准带来的冲击,从而可以一套可差异化定制、可动态调节的慢盘检测阈值,进而让后续的慢盘检测更具实时性,更加贴合实际,降低慢盘对客户业务造成的影响。

8、在一种实现方式中,将m个第二训练样本输入到聚类模型,包括:当k2个初始慢盘检测阈值的生成时间与当前时间之间的时间差大于或等于时间阈值时,将m个第二训练样本输入到聚类模型。

9、在一种实现方式中,将m个第二训练样本输入到聚类模型,包括:在检测到目标设备中的盘符对应的属性信息发生变化的情况下,将m个第二训练样本输入到聚类模型;其中,属性信息包括硬盘序列号或者逻辑磁盘的raid信息,raid信息包括以下至少一项:逻辑磁盘对应的raid卡型号、raid组数量、raid组级别、raid组读写策略和raid组中的成员盘信息。

10、在一种实现方式中,将m个第二训练样本输入到聚类模型,包括:

11、当接收到检测阈值更新触发指令时,将m个第二训练样本输入到聚类模型。

12、在一种实现方式中,目标慢盘检测阈值中包括n1个盘符中每个盘符对应的检测阈值;基于目标慢盘检测阈值和各盘符对应的io服务时间,对目标设备中各盘符所标识的硬盘或者逻辑硬盘进行慢盘检测,包括:从目标检测阈值中确定目标盘符对应的检测阈值;目标盘符为n1个盘符中的任一盘符;若目标盘符对应的io服务时间大于目标盘符对应的检测阈值,则基于第二参数的参数值,更新第一参数的参数值,得到第一参数的参数更新值;以及,初始化第二参数的参数值,得到第二参数的参数更新值;第一参数用于表示目标盘符对应的io服务时间大于目标盘符对应的检测阈值的次数;第二参数用于表示目标盘符正常的次数,目标盘符正常是指目标盘符对应的io服务时间小于或等于目标盘符对应的检测阈值,且第一参数的参数值大于0;若第一参数的参数更新值大于次数阈值,则确定目标盘符所标识的硬盘或逻辑磁盘为慢盘,次数阈值大于0。

13、在该技术方案中,通过引入第一参数和第二参数对各个盘符所标识的硬盘或者逻辑硬盘进行慢盘检测,提升了对盘符检测的准确性,且每次采样到n1个盘符中每个盘符对应的io服务时间时,均会选取相应合适的目标慢盘检测阈值,实现了慢盘检测阈值的可差异性定制以及解决了慢盘检测阈值单一固化的问题,使得慢盘检测更加具备时效性和准确性。

14、在一种实现方式中,该方法还包括:若第一参数的参数更新值小于或等于次数阈值,且第一参数的参数更新值大于或等于0,则继续获取目标设备的设备io服务时间。

15、在一种实现方式中,该方法还包括:若第一参数的参数更新值小于0,则初始化第一参数的参数更新值,并继续获取目标设备的设备io服务时间。

16、在一种实现方式中,该方法还包括:若目标盘符对应的io服务时间小于或等于目标盘符对应的检测阈值,且第一参数的参数值大于0,则更新第二参数的参数值,得到第二参数的参数更新值,并继续获取目标设备的设备io服务时间。

17、在一种实现方式中,第一参数的参数值为初始化第一参数所得到的初始值或者,第一参数的参数值为上一次进行慢盘检测时所得到的第一参数的参数更新值;

18、第二参数的参数值为初始化第二参数所得到的初始值或者,第二参数的参数值为上一次进行慢盘检测时所得到的第二参数的参数更新值。

19、在一种实现方式中,获取目标设备的设备输入输出io服务时间,包括:以第一采样频率,获取目标设备的设备io服务时间;或者,以第二采样频率,获取目标设备的设备io服务时间;其中,第一采样频率小于第二采样频率。

20、在该技术方案中,当第一参数的参数更新值大于或等于0时,意味着目标盘符所标识的硬盘或者逻辑硬盘可能为慢盘,因此可以将采样频率调整为第二采样频率,提升采样频率,加快对目标设备的设备io服务时间的获取。

21、第二方面,本技术实施例提供了一种慢盘检测装置,该装置包括:

22、获取单元,用于获取目标设备的设备输入输出io服务时间,设备io服务时间包括n1个盘符中每个盘符对应的io服务时间;

23、处理单元,用于基于设备io服务时间和k1个聚类中心,确定k1个距离;k1和n1为正整数;一个聚类中心对应一个慢盘检测阈值;

24、处理单元,还用于从k1个距离中确定目标距离,从k1个聚类中心中确定目标距离对应的目标聚类中心,并确定目标聚类中心对应的目标慢盘检测阈值;

25、处理单元,还用于基于目标慢盘检测阈值和各盘符对应的io服务时间,对目标设备中各盘符所标识的硬盘或者逻辑硬盘进行慢盘检测。

26、在一种实现方式中,处理单元,具体用于:

27、将m个训练样本输入到聚类模型,得到聚类模型输出的k1个聚类集合以及k1个聚类中心,一个聚类集合对应一个聚类中心;

28、基于k1个聚类中心,生成k1个慢盘检测阈值;

29、其中,m个训练样本中的每个训练样本均包括n1个盘符中每个盘符对应的历史io服务时间。

30、在一种实现方式中,处理单元,具体用于:

31、将m个第一训练样本输入到聚类模型,得到聚类模型输出的k2个初始聚类集合以及k2个初始聚类中心,一个初始聚类集合对应一个初始聚类中心;k2为正整数;

32、基于k2个初始聚类中心,生成k2个初始慢盘检测阈值;

33、将m个第二训练样本输入到聚类模型,得到聚类模型输出的k1个聚类集合以及k1个聚类中心;k1为正整数;

34、基于k1个聚类中心,生成k1个参考慢盘检测阈值;

35、基于k1个参考慢盘检测阈值,更新k2个初始慢盘检测阈值,得到k1个慢盘检测阈值;

36、其中,每个第一训练样本均包括n2个盘符中每个盘符对应的历史io服务时间,每个第二训练样本均包括n1个盘符中每个盘符对应的历史io服务时间,n2均为正整数。

37、在一种实现方式中,处理单元,具体用于:

38、当k2个初始慢盘检测阈值的生成时间与当前时间之间的时间差大于或等于时间阈值时,将m个第二训练样本输入到聚类模型。

39、在一种实现方式中,处理单元,具体用于:

40、在检测到目标设备中的盘符对应的属性信息发生变化的情况下,将m个第二训练样本输入到聚类模型;其中,属性信息包括硬盘序列号或者逻辑磁盘的raid信息,raid信息包括以下至少一项:逻辑磁盘对应的raid卡型号、raid组数量、raid组级别、raid组读写策略和raid组中的成员盘信息。

41、在一种实现方式中,处理单元,具体用于:

42、当接收到检测阈值更新触发指令时,将m个第二训练样本输入到聚类模型。

43、在一种实现方式中,目标慢盘检测阈值中包括n1个盘符中每个盘符对应的检测阈值;处理单元,具体用于:

44、从目标检测阈值中确定目标盘符对应的检测阈值;目标盘符为n1个盘符中的任一盘符;

45、若目标盘符对应的io服务时间大于目标盘符对应的检测阈值,则基于第二参数的参数值,更新第一参数的参数值,得到第一参数的参数更新值;以及,初始化第二参数的参数值,得到第二参数的参数更新值;第一参数用于表示目标盘符对应的io服务时间大于目标盘符对应的检测阈值的次数;第二参数用于表示目标盘符正常的次数,目标盘符正常是指目标盘符对应的io服务时间小于或等于目标盘符对应的检测阈值,且第一参数的参数值大于0;

46、若第一参数的参数更新值大于次数阈值,则确定目标盘符所标识的硬盘或逻辑磁盘为慢盘,次数阈值大于0。

47、在一种实现方式中,获取单元,还用于:

48、若第一参数的参数更新值小于或等于次数阈值,且第一参数的参数更新值大于或等于0,则继续获取目标设备的设备io服务时间。

49、在一种实现方式中,处理单元,还用于:若第一参数的参数更新值小于0,则初始化第一参数的参数更新值;

50、获取单元,还用于继续获取目标设备的设备io服务时间。

51、在一种实现方式中,处理单元,还用于:

52、若目标盘符对应的io服务时间小于或等于目标盘符对应的检测阈值,且第一参数的参数值大于0,则更新第二参数的参数值,得到第二参数的参数更新值;

53、获取单元801,还用于继续获取目标设备的设备io服务时间。

54、在一种实现方式中,第一参数的参数值为初始化第一参数所得到的初始值或者,第一参数的参数值为上一次进行慢盘检测时所得到的第一参数的参数更新值;

55、第二参数的参数值为初始化第二参数所得到的初始值或者,第二参数的参数值为上一次进行慢盘检测时所得到的第二参数的参数更新值。

56、在一种实现方式中,获取单元,具体用于:以第一采样频率,获取目标设备的设备io服务时间;或者,以第二采样频率,获取目标设备的设备io服务时间;其中,第一采样频率小于第二采样频率。

57、第三方面,本技术实施例提供了一种计算设备,该计算设备包括:处理器和存储器,处理器和存储器电连接,其中,存储器用于存储计算机程序,计算机程序包括程序指令,处理器用于执行程序指令,以使计算设备执行如第一方面所述的慢盘检测方法。

58、第四方面,本技术实施例提供了一种计算设备,该计算设备包括中央处理器、磁盘阵列raid卡、硬盘以及主板,其中,raid卡通过线缆与硬盘相连接,且raid卡通过主板,实现与中央处理器相连接,中央处理器用于执行如第一方面所述的慢盘检测方法。

59、第五方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器加载并执行如第一方面所述的慢盘检测方法。

60、第六方面,本技术实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算设备执行上述第一方面所述的慢盘检测方法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1