CN115686381B - 存储集群运行状态的预测方法及装置 - Google Patents

存储集群运行状态的预测方法及装置 Download PDF

Info

Publication number
CN115686381B
CN115686381B CN202211707187.XA CN202211707187A CN115686381B CN 115686381 B CN115686381 B CN 115686381B CN 202211707187 A CN202211707187 A CN 202211707187A CN 115686381 B CN115686381 B CN 115686381B
Authority
CN
China
Prior art keywords
target
risk level
hard disk
blocking
service
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.)
Active
Application number
CN202211707187.XA
Other languages
English (en)
Other versions
CN115686381A (zh
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202211707187.XA priority Critical patent/CN115686381B/zh
Publication of CN115686381A publication Critical patent/CN115686381A/zh
Application granted granted Critical
Publication of CN115686381B publication Critical patent/CN115686381B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本申请实施例提供了一种存储集群运行状态的预测方法及装置,其中,该方法包括:检测分布式存储集群中的IO业务阻塞事件;在检测到分布式存储集群中发生IO业务阻塞事件的情况下,获取发生IO业务阻塞事件的目标存储节点的运行数据;根据运行数据预测目标存储节点在当前时刻之后的目标时间段存在阻塞风险的目标风险等级;根据目标风险等级预测分布式存储集群在目标时间段的目标运行状态。通过本申请,解决相关技术中对分布式存储集群运行状态的监测的效率较低问题,达到提高对分布式存储集群运行状态的监测效率效果。

Description

存储集群运行状态的预测方法及装置
技术领域
本申请实施例涉及计算机领域,具体而言,涉及一种存储集群运行状态的预测方法及装置。
背景技术
随着云计算、大数据等新型技术的发展,各种应用的数据量的不断增大,分布式存储系统作为海量数据存储的场景越来越多,存储的性能要求也越来越高。软件应用对分布式存储系统的性能指标要求主要体现在延迟、带宽、IOPS(Input/Output Operations PerSecond,用于计算机存储设备性能测试的量测方法)等方面,而这些指标压力过大时,通常会表现出分布式存储系统中产生IO(Input/Output,输入/输出)阻塞情况,当分布式存储系统中产生大量IO阻塞,而不能尽快疏散时,直接影响前端应用的数据写入,产生读写报错,严重的还会出现业务宕机,数据丢失的情况。但目前,管理人员只有在分布式存储系统出现非常严重的IO阻塞进而导致分布式存储系统宕机的情况下,才得知分布式存储系统存在非常严重的IO阻塞,才会对宕机的分布式存储系统进行维护,这也对分布式存储系统上的业务数据造成了影响,因此,如何有效的对分布式存储系统的运行状态进行监测是行业内技术人员急需解决的技术问题。
发明内容
本申请实施例提供了一种存储集群运行状态的预测方法及装置,以至少解决相关技术中对分布式存储集群运行状态的监测的效率较低的问题。
根据本申请的一个实施例,提供了一种存储集群运行状态的预测方法,包括:检测分布式存储集群中的IO业务阻塞事件;在检测到所述分布式存储集群中发生所述IO业务阻塞事件的情况下,获取发生所述IO业务阻塞事件的目标存储节点的运行数据,其中,所述运行数据用于指示所述目标存储节点在发生所述IO业务阻塞事件的当前时刻对IO业务的处理情况;根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,其中,所述目标风险等级用于指示所述目标存储节点在所述目标时间段发生所述IO业务阻塞事件的概率;根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态。
可选的,所述根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,包括:根据所述运行数据确定所述目标存储节点中包括的具有目标硬盘属性的硬盘的目标硬盘数量,以及所述目标存储节点中部署的CPU(central processing unit,中央处理器)的目标负载参数,其中,具有所述目标硬盘属性的硬盘对IO业务的处理能力低于目标处理能力,所述目标负载参数用于指示所述目标存储节点中部署的CPU的负载情况;根据所述目标硬盘数量和所述目标负载参数预测所述目标风险等级。
可选的,所述根据所述运行数据确定所述目标存储节点中包括的具有目标硬盘属性的硬盘的目标硬盘数量,以及所述目标存储节点中部署的CPU的目标负载参数,包括:从所述运行数据所包括的参考硬盘中统计具有所述目标硬盘属性的硬盘的所述目标硬盘数量,其中,所述参考硬盘为所述目标存储节点中产生所述IO业务阻塞事件的硬盘;根据所述运行数据所包括的所述目标存储节点的业务负载计算所述目标存储节点中部署的CPU在所述当前时刻的目标平均负载作为所述目标负载参数。
可选的,所述从所述运行数据所包括的参考硬盘中统计具有所述目标硬盘属性的硬盘的所述目标硬盘数量,包括:从所述参考硬盘中统计具有故障属性的硬盘的第一硬盘数量,和/或,从所述参考硬盘中统计具有目标处理速率的硬盘的第二硬盘数量,其中,所述目标处理速率低于目标速率阈值;将所述第一硬盘数量,所述第二硬盘数量,或者,所述第一硬盘数量与所述第二硬盘数量的和值确定为所述目标硬盘数量。
可选的,所述根据所述目标硬盘数量和所述目标负载参数预测所述目标风险等级,包括:获取具有对应关系的硬盘数量区间,平均负载区间和风险等级,其中,所述具有对应关系的硬盘数量区间,平均负载区间和风险等级是根据历史产生的所述IO业务阻塞事件的数据构建的;从所述具有对应关系的硬盘数量区间,平均负载区间和风险等级中查找与所述目标硬盘数量和所述目标平均负载对应的所述目标风险等级。
可选的,所述从所述具有对应关系的硬盘数量区间,平均负载区间和风险等级中查找与所述目标硬盘数量和所述目标平均负载对应的所述目标风险等级,包括:在所述目标硬盘数量小于第一阈值,所述目标平均负载小于第二阈值的情况下,确定所述目标风险等级为第一风险等级;在所述目标硬盘数量小于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第二风险等级,其中,所述第二风险等级高于所述第一风险等级;在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载小于所述第二阈值的情况下,确定所述目标风险等级为第三风险等级,其中,所述第三风险等级高于或者等于所述第二风险等级;在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第四风险等级,其中,所述第四风险等级高于所述第三风险等级。
可选的,在所述获取发生所述IO业务阻塞事件的目标存储节点的运行数据之前,所述方法还包括:获取所述IO业务阻塞事件的阻塞事件信息;根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的参考阻塞风险等级。
可选的,所述根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的所述参考阻塞风险等级,包括:在所述IO业务阻塞事件的事件数量小于第三阈值,并且,所述IO业务阻塞事件的持续时间小于第四阈值的情况下,确定所述参考阻塞风险等级为第一阻塞风险等级,其中,所述阻塞事件信息包括所述事件数量和所述持续时间;在所述IO业务阻塞事件的所述事件数量大于或者等于所述第三阈值,和/或,所述IO业务阻塞事件的所述持续时间大于或者等于第四阈值的情况下,根据所述分布式存储集群中所述IO业务阻塞事件的增长幅度确定所述参考阻塞风险等级,其中,所述阻塞事件信息还包括所述增长幅度。
可选的,所述根据所述分布式存储集群中所述IO业务阻塞事件的增长幅度确定所述参考阻塞风险等级,包括:在所述增长幅度小于目标幅度的情况下,确定所述参考阻塞风险等级为第二阻塞风险等级,其中,所述第二阻塞风险等级高于所述第一阻塞风险等级;在所述增长幅度大于或者等于所述目标幅度的情况下,确定所述参考阻塞风险等级为第三阻塞风险等级,其中,所述第三阻塞风险等级高于所述第二阻塞风险等级。
可选的,所述获取所述IO业务阻塞事件的阻塞事件信息,包括:按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字,得到查询结果,其中,所述目标关键字为与所述IO业务阻塞事件对应的关键字,所述目标日志用于记录所述分布式存储集群的运行状态;根据所述查询结果确定所述阻塞事件信息。
可选的,在所述按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字之前,所述方法还包括:获取所述预定查询周期,其中,所述预定查询周期是所述分布式存储集群根据Crontab命令对初始查询周期进行调整得到的。
可选的,在所述根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的参考阻塞风险等级之后,所述方法还包括:生成携带所述参考阻塞风险等级的第一通知消息;将所述第一通知消息发送至管理员使用的管理帐号。
可选的,所述获取发生所述IO业务阻塞事件的目标存储节点的运行数据,包括:获取参考硬盘的硬盘属性,其中,所述参考硬盘为产生所述IO业务阻塞事件的硬盘;获取部署了所述参考硬盘的所述目标存储节点的业务负载,其中,所述运行数据包括所述硬盘属性和所述业务负载。
可选的,所述获取参考硬盘的硬盘属性,包括:获取所述参考硬盘的参考硬盘标识,其中,所述参考硬盘标识是所述参考硬盘触发所述IO业务阻塞事件后上报的;从SMART信息集合中获取与所述参考硬盘标识对应的参考硬盘SMART信息,其中,所述SMART信息集合用于存储具有对应关系的初始硬盘标识和硬盘SMART信息,所述初始硬盘标识用于指示正在产生所述IO业务阻塞事件的硬盘,所述硬盘SMART信息用于表征硬盘的所述硬盘属性。
可选的,在所述根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级之后,所述方法还包括:生成携带所述目标风险等级的第二通知消息;将所述第二通知消息发送至管理员使用的管理帐号。
可选的,所述根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态,包括:确定所述分布式存储集群中所包括的目标存储节点的目标节点数量;从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级,其中,所述目标阻塞风险等级用于指示所述分布式存储集群在目标时间段内执行IO业务时被阻塞的风险等级;确定与所述目标阻塞风险等级对应的所述目标运行状态。
可选的,所述从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级,包括:在所述风险等级大于预设风险等级的节点数量大于目标数量的情况下,确定所述目标阻塞风险等级为第一目标阻塞风险等级;在所述风险等级大于所述预设风险等级的节点数量小于或等于所述目标数量的情况下,确定所述目标阻塞风险等级为第二目标阻塞风险等级,其中,所述第一目标阻塞风险等级大于所述第二目标阻塞风险等级。
可选的,在所述从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级之后,所述方法还包括:生成携带所述目标阻塞风险等级的第三通知消息;将所述第三通知消息发送至管理员使用的管理帐号。
可选的,所述检测分布式存储集群中的IO业务阻塞事件,包括:运行权限添加脚本,其中,所述权限添加脚本用于在所述分布式存储集群中添加对预测脚本的运行权限,所述预测脚本用于预测所述分布式存储集群在所述目标时间段的所述运行状态;通过运行所述预测脚本的方式检测所述分布式存储集群中的所述IO业务阻塞事件。
根据本申请的另一个实施例,提供了一种存储集群运行状态的预测装置,包括:检测模块,用于检测分布式存储集群中的IO业务阻塞事件;第一获取模块,用于在检测到所述分布式存储集群中发生所述IO业务阻塞事件的情况下,获取发生所述IO业务阻塞事件的目标存储节点的运行数据,其中,所述运行数据用于指示所述目标存储节点在发生所述IO业务阻塞事件的当前时刻对IO业务的处理情况;第一预测模块,用于根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,其中,所述目标风险等级用于指示所述目标存储节点在所述目标时间段发生所述IO业务阻塞事件的概率;第二预测模块,用于根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本申请,在检测到分布式存储集群中发生了IO阻塞事件后,通过获取发生IO阻塞事件的目标存储节点的运行数据,进而根据运行数据可以预测出目标存储节点在当前时刻之后的目标时间段内存在阻塞风险的目标风险等级,实现对目标存储节点在未来运行过程中阻塞风险的预测,进而可以根据目标风险等级预测分布式存储集群在目标时间段的运行状态,从而能够实现对分布式存储集群的运行状态提前预测,避免由于分布式存储集群由于严重的IO阻塞导致的分布式存储集群宕机时间的发生。因此,可以解决相关技术中对分布式存储集群运行状态的监测的效率较低问题,达到提高对分布式存储集群运行状态的监测效率效果。
附图说明
图1是本申请实施例的一种存储集群运行状态的预测方法的移动终端的硬件结构框图;
图2是根据本申请实施例的存储集群运行状态的预测方法的流程图;
图3是根据本申请实施例的一种可选的运行状态的预测流程图;
图4是根据本申请实施例的一种可选的参考阻塞风险预测流程图;
图5是根据本申请实施例的存储集群运行状态的预测装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本申请实施例的一种存储集群运行状态的预测方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的存储集群运行状态的预测方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种存储集群运行状态的预测方法,图2是根据本申请实施例的存储集群运行状态的预测方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,检测分布式存储集群中的IO业务阻塞事件;
步骤S204,在检测到所述分布式存储集群中发生所述IO业务阻塞事件的情况下,获取发生所述IO业务阻塞事件的目标存储节点的运行数据,其中,所述运行数据用于指示所述目标存储节点在发生所述IO业务阻塞事件的当前时刻对IO业务的处理情况;
步骤S206,根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,其中,所述目标风险等级用于指示所述目标存储节点在所述目标时间段发生所述IO业务阻塞事件的概率;
步骤S208,根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态。
通过上述步骤,在检测到分布式存储集群中发生了IO阻塞事件后,通过获取发生IO阻塞事件的目标存储节点的运行数据,进而根据运行数据可以预测出目标存储节点在当前时刻之后的目标时间段内存在阻塞风险的目标风险等级,实现对目标存储节点在未来运行过程中阻塞风险的预测,进而可以根据目标风险等级预测分布式存储集群在目标时间段的运行状态,从而能够实现对分布式存储集群的运行状态提前预测,避免由于分布式存储集群由于严重的IO阻塞导致的分布式存储集群宕机时间的发生。因此,可以解决相关技术中对分布式存储集群运行状态的监测的效率较低问题,达到提高对分布式存储集群运行状态的监测效率效果。
上述存储集群运行状态的预测方法可以运行在分布式存储集群的任意存储节点上,本方案对此不做限定。
在上述步骤S202提供的实施例中,检测分布式存储集群中的IO业务阻塞事件可以是通过对分布式存储集群中的运行日志进行检测实现的,或者还可以是对分布式存储集群中各个存储节点的运行状态进行实时监控实现的,比如,在分布式存储集群的运行日志中搜索与IO业务阻塞事件对应的关键字,从而确定分布式存储集群中是否存储在IO业务阻塞事件,再比如,通过对分布式存储节点的负载量和数据处理量进行实时监控,从而确定各个分布式存储节点的IO业务阻塞事件,进而确定出分布式存储集群的IO业务阻塞事件。
在上述步骤S204提供的实施例中,存储节点的运行数据可以但不限于包括存储节点上的业务负载情况、存储节点上的CPU核数、存储节点上的硬盘数量以及各个硬盘的硬盘状态等等;
可选地,在本实施例中,目标存储节点的运行数据可以是直接获取分布式存储集群中各个存储节点的运行数据,并检测各个存储节点上是否存在IO阻塞事件,进而将存在IO阻塞事件的存储节点作为目标存储节点,将对应的运行数据确定为目标存储节点的运行数据,或者还可以是通过检测分布式存储集群中产生IO阻塞业务的硬盘,进而查询部署了该硬盘的存储节点,进而查询该存储节点的运行数据,本方案对获取运行数据的方法不做限定。
可选地,在本实施例中,目标存储节点可以是根据各个分布式存储节点上报的运行状态确定的,比如,各个分布式存储节点会定时的上报各自的运行情况,如上报各自是否发生IO业务阻塞事件,进而确定出分布式存储集群中发生IO业务阻塞事件的目标存储节点。
可选地,在本实施例中,目标存储节点还可以是通过对分布式存储集群中各个存储节点上部署的硬盘的信息进行筛选得到的,比如,获取分布式存储集群中各个节点上部署的硬盘的硬盘SMART(Self-Monitoring Analysis and Reporting Technology,自我监测、分析及报告技术)信息(该信息中存储了对硬盘的硬件如磁头、盘片、马达、电路的运行情况进行监控的结果),并对硬盘SMART信息进行保存,通过对硬盘SMART信息进行分析从而判断出各个硬盘是否是慢盘或者是否存在物理坏点,在并将部署了慢盘或者物理坏点的硬盘的服务器节点确定为目标存储节点。
在上述步骤S206提供的实施例中,目标风险等级可以是使用风险等级预测模型对运行数据进行预测得到的,其中,风险等级预测模型可以是使用通过标注了风险等级的历史运行数据作为训练样本对初始风险等级预测模型进行训练得到的。
可选地,在本实施例中,风险等级还可以是通过对目标存储节点上的不是的用于存储数据的硬盘的硬盘属性以及分布式存储节点上的业务负载情况进行分析得到的,比如,通过对硬盘属性进行分析,从而得到目标分布式存储节点上各个硬盘对IO业务的处理能力,即各个硬盘是否是慢盘或者坏盘,进而根据各个硬盘对IO业务的处理能力和目标存储节点上的业务负载情况预测出目标存储节点在目标时间段存在阻塞风险的目标风险等级。
在上述步骤S208提供的实施例中,目标运行状态可以但不限于包括分布式存储集群运行状态正常、分布式存储集群存在IO阻塞事件、分布式存储集群由于IO阻塞事件导致宕机等等,本方案对此不做限定。
可选地,在本实施例中,根据目标风险等级预测分布式存储集群的运行状态可以是通过对目标风险等级进行分析,从而确定出分布式存储集群中在目标时间段内目标风险等级大于预设风险等级的存储节点的数量,进而根据分布式存储集群中全部节点的数量以及目标风险等级大于预设风险等级的存储节点数量,确定出分布式存储集群在目标时间段内处于各个运行状态的概率值,并将概率值最大的运行状态确定为目标运行状态。
可选地,在本实施例中,根据目标风险等级预测目标运行状态还可以是从具有对应关系的风险的能级和运行状态中查找与目标风险等级匹配的目标运行状态,本方案对此不做限定。
图3是根据本申请实施例的一种可选的运行状态的预测流程图,如图3所示,至少包括如下步骤:
S301,通过crontab定时任务命令,周期查询分布式存储的健康状态,同时使用grep命令自动查找分布式存储集群运行状态输出信息中block的关键字,进而判断分布式存储底层是否有IO业务阻塞事件产生。
S302,block的数量可以判断分布式存储集群发生的阻塞的IO业务阻塞事件的数量,通过监测分布式存储集群中block产生的数量、持续时间、增长情况,从而预测出分布式存储集群的参考阻塞风险等级,并生成对应的报警信息。
S303,使用icfs health detail记录正在产生block的硬盘信息(如硬盘ID),对这些硬盘信息对应的硬盘SMART信息进行分析可以判断这些硬盘是否为慢盘或者是否存在物理坏道,同时记录下已经产生阻塞硬盘所在的目标存储节点,通过计算平均负载F=CPU负载数/存储节点CPU核数,判断F是否大于1来确定节点是否负载过高,最后通过硬盘信息和目标存储节点的平均负载情况来对存储节点在目标时间段内产生阻塞事件的目标风险等级进行预测。
S304,根据分布式存储集群中各个目标存储节点的目标风险等级,从而预测出分布式存储集群在目标时间段内产生IO业务阻塞的目标阻塞风险等级,并生成对应的报警信息,由于目标风险等级是使用各个目标存储节点的目标风险等级进行预测得到的,因此目标阻塞风险等级的准确率高于参考阻塞风向等级。
S305,根据目标阻塞风险等级从而预测出分布式存储集群在目标时间段内的目标运行状态。
作为一种可选的实施例,所述根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,包括:
根据所述运行数据确定所述目标存储节点中包括的具有目标硬盘属性的硬盘的目标硬盘数量,以及所述目标存储节点中部署的CPU的目标负载参数,其中,具有所述目标硬盘属性的硬盘对IO业务的处理能力低于目标处理能力,所述目标负载参数用于指示所述目标存储节点中部署的CPU的负载情况;
根据所述目标硬盘数量和所述目标负载参数预测所述目标风险等级。
可选地,在本实施例中,具有目标硬盘属性的硬盘可以是对IO业务处理能力较低的慢盘(如机械硬盘),或者还可以是存在物理故障的硬盘,本方案对此不做限定。
可选地,在本实施例中,运行数据中可以携带了存储节点上部署的硬盘的硬盘属性以及目标存储节点上的CPU 的目标负载参数,或者还可以是携带用于确定硬盘属性和目标负载参数的相关数据,比如,运行携带了对IO业务的处理能力低于目标处理能力的硬盘的硬盘标识,进而可以根据该硬盘标识从硬盘属性集合中查找出硬盘标识对应的目标硬盘属性,同时运行数据中还可以携带有目标存储节点上的业务负载量以及目标存储节点上部署的CPU的数量,进而可以根据业务负载量和CPU数量确定出每个CPU的目标负载参数。
可选地,在本实施例中,目标风险等级可以但不限于是从具有对应关系的硬盘数量、负载参数和风险等级的对应关系中确定出于目标硬盘数量和目标负载参数对应的目标风险等级。
作为一种可选的实施例,所述根据所述运行数据确定所述目标存储节点中包括的具有目标硬盘属性的硬盘的目标硬盘数量,以及所述目标存储节点中部署的CPU的目标负载参数,包括:
从所述运行数据所包括的参考硬盘中统计具有所述目标硬盘属性的硬盘的所述目标硬盘数量,其中,所述参考硬盘为所述目标存储节点中产生所述IO业务阻塞事件的硬盘;
根据所述运行数据所包括的所述目标存储节点的业务负载计算所述目标存储节点中部署的CPU在所述当前时刻的目标平均负载作为所述目标负载参数。
可选地,在本实施例中,目标平均负载是通过计算业务负载和目标存储节点上部署的CPU数量的商值得到的。
可选地,在本实施例中,从参考硬盘中统计目标硬盘属性的硬盘的目标硬盘数量可以是通过统计参考硬盘的硬盘属性与目标硬盘属性的匹配一致的硬盘的数量得到的。
作为一种可选的实施例,所述从所述运行数据所包括的参考硬盘中统计具有所述目标硬盘属性的硬盘的所述目标硬盘数量,包括:
从所述参考硬盘中统计具有故障属性的硬盘的第一硬盘数量,和/或,从所述参考硬盘中统计具有目标处理速率的硬盘的第二硬盘数量,其中,所述目标处理速率低于目标速率阈值;
将所述第一硬盘数量,所述第二硬盘数量,或者,所述第一硬盘数量与所述第二硬盘数量的和值确定为所述目标硬盘数量。
可选地,在本实施例中,具有故障属性的硬盘用于指示硬盘存在坏道、磁头破损等故障。
可选地,在本实施例中,具有目标处理速率的硬盘是由硬盘的自身对业务数据的处理属性导致的,比如硬盘是慢盘(如机械硬盘),其在无故障存在的情况下对IO业务的处理速率低于目标速率阈值。
作为一种可选的实施例,所述根据所述目标硬盘数量和所述目标负载参数预测所述目标风险等级,包括:
获取具有对应关系的硬盘数量区间,平均负载区间和风险等级,其中,所述具有对应关系的硬盘数量区间,平均负载区间和风险等级是根据历史产生的所述IO业务阻塞事件的数据构建的;
从所述具有对应关系的硬盘数量区间,平均负载区间和风险等级中查找与所述目标硬盘数量和所述目标平均负载对应的所述目标风险等级。
可选地,在本实施例中,存储节点上具有目标硬盘属性的硬盘的硬盘数量不同,CPU的平均负载不同,导致存储节点在目标时间段内的风险等级也是不同的。
作为一种可选的实施例,所述从所述具有对应关系的硬盘数量区间,平均负载区间和风险等级中查找与所述目标硬盘数量和所述目标平均负载对应的所述目标风险等级,包括:
在所述目标硬盘数量小于第一阈值,所述目标平均负载小于第二阈值的情况下,确定所述目标风险等级为第一风险等级;
在所述目标硬盘数量小于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第二风险等级,其中,所述第二风险等级高于所述第一风险等级;
在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载小于所述第二阈值的情况下,确定所述目标风险等级为第三风险等级,其中,所述第三风险等级高于或者等于所述第二风险等级;
在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第四风险等级,其中,所述第四风险等级高于所述第三风险等级。
可选地,在本实施例中,风险等级越高,则该存储节点在目标时间段内出现业务阻塞的概率越高。
作为一种可选的实施例,在所述获取发生所述IO业务阻塞事件的目标存储节点的运行数据之前,所述方法还包括:
获取所述IO业务阻塞事件的阻塞事件信息;
根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的参考阻塞风险等级。
可选地,在本实施例中,阻塞事件信息包括阻塞事件的事件数量、阻塞事件的持续事件、阻塞事件数量的增长情况等等,本方案对此不做限定。
可选地,在本实施例中,参考阻塞风险等级可以是通过参考阻塞风险预测模型对阻塞事件信息进行预测得到的,其中,参考阻塞风险预测模型是使用标注了阻塞风险等级的历史阻塞事件信息作为样本对初始阻塞风险预测模型进行训练得到的,本方案对此不做限定。
作为一种可选的实施例,所述根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的所述参考阻塞风险等级,包括:
在所述IO业务阻塞事件的事件数量小于第三阈值,并且,所述IO业务阻塞事件的持续时间小于第四阈值的情况下,确定所述参考阻塞风险等级为第一阻塞风险等级,其中,所述阻塞事件信息包括所述事件数量和所述持续时间;
在所述IO业务阻塞事件的所述事件数量大于或者等于所述第三阈值,和/或,所述IO业务阻塞事件的所述持续时间大于或者等于第四阈值的情况下,根据所述分布式存储集群中所述IO业务阻塞事件的增长幅度确定所述参考阻塞风险等级,其中,所述阻塞事件信息还包括所述增长幅度。
可选地,在本实施例中,根据IO业务阻塞事件的增长幅度确定参考阻塞风险等级可以是通过从具有对应关系的增长幅度和阻塞风险等级中查找与当前增长幅度对应的参考阻塞风险等级。
图4是根据本申请实施例的一种可选的参考阻塞风险预测流程图,如图4所示,至少包括如下步骤:
S401,通过crontab定时任务命令,周期查询分布式存储的健康状态,同时使用grep命令自动查找分布式存储集群运行状态输出信息中block的关键字,进而判断分布式存储底层是否有IO业务阻塞事件产生,block的数量可以判断分布式存储集群发生的阻塞的IO业务阻塞事件的数量,监测分布式存储集群中block产生的数量、持续时间、增长情况。
S402,检测block数量或者阻塞时间是够大于设定阈值,在大于设定阈值的情况下,执行步骤S404,在小于或者等于设定阈值的情况下,执行步骤S403。
S403,判断参考阻塞风险等级为低级,记录产生block的节点和硬盘ID,触发低级警报。
S404,检测block数量是否持续增长。
S405,当block数量继续增长时,则判断参考阻塞风险等级为高级,记录产生block的节点和硬盘ID,触发严重警报。
S406,当block数量没有继续增长,则判断参考阻塞风险等级为中级,记录产生block的节点和硬盘ID,触发中级警报。
作为一种可选的实施例,所述根据所述分布式存储集群中所述IO业务阻塞事件的增长幅度确定所述参考阻塞风险等级,包括:
在所述增长幅度小于目标幅度的情况下,确定所述参考阻塞风险等级为第二阻塞风险等级,其中,所述第二阻塞风险等级高于所述第一阻塞风险等级;
在所述增长幅度大于或者等于所述目标幅度的情况下,确定所述参考阻塞风险等级为第三阻塞风险等级,其中,所述第三阻塞风险等级高于所述第二阻塞风险等级。
可选地,在本实施例中,阻塞风险等级越高,则表征分布式存储集群在目标时间段内出现IO业务阻塞的概率越大。
作为一种可选的实施例,所述获取所述IO业务阻塞事件的阻塞事件信息,包括:
按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字,得到查询结果,其中,所述目标关键字为与所述IO业务阻塞事件对应的关键字,所述目标日志用于记录所述分布式存储集群的运行状态;
根据所述查询结果确定所述阻塞事件信息。
可选地,在本实施例中,grep命令用于查找目标日志中符合条件的字符串,即查找目标日志中的目标关键字,每查找到一个目标关键字,则表征分布式存储集群中存在一起IO业务阻塞事件。
可选地,在本实施例中,在一个查询周期中,每查询到一个目标关键字则证明分布式存储集群中存在一起IO业务阻塞事件,进而通过统计当前查询周期中目标关键字的数量从而得到IO业务阻塞事件的事件数量,通过将多个查询周期查询到的数据进行统计,从而得到IO业务阻塞事件的持续时间和增长幅度,进而得到阻塞事件信息。
作为一种可选的实施例,在所述按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字之前,所述方法还包括:
获取所述预定查询周期,其中,所述预定查询周期是所述分布式存储集群根据Crontab命令对初始查询周期进行调整得到的。
可选地,在本实施例中,Crontab命令用于设置周期性被执行的指令,通过Crontab命令设置grep命令的执行周期。
作为一种可选的实施例,在所述根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的参考阻塞风险等级之后,所述方法还包括:
生成携带所述参考阻塞风险等级的第一通知消息;
将所述第一通知消息发送至管理员使用的管理帐号。
可选地,在本实施例中,第一通知消息用于指示管理员对分布式存储集群在目标时间段内可能存在的阻塞风险进行预处理,比如对分布式存储集群进行阻塞风险排查,本方案对此不做限定。
可选地,在本实施例中,还可以根据参考阻塞风险触发对应的警报信号,比如参考阻塞风险较低时,触发低级警报,在参考阻塞风险较高时,则触发严重警报,警报用于指示管理员对第一通知消息对应的参考阻塞风险等级的阻塞事件进行预处理。
作为一种可选的实施例,所述获取发生所述IO业务阻塞事件的目标存储节点的运行数据,包括:
获取参考硬盘的硬盘属性,其中,所述参考硬盘为产生所述IO业务阻塞事件的硬盘;
获取部署了所述参考硬盘的所述目标存储节点的业务负载,其中,所述运行数据包括所述硬盘属性和所述业务负载。
可选地,在本实施例中,获取硬盘属性可以是通过检测存在IO业务阻塞事件的硬盘的硬盘标识,进而从存储硬盘属性信息的文件夹中查找与该硬盘标识对应的硬盘属性,比如从预先存储的硬盘SMART信息中查找与硬盘标识对应的SMART信息。
作为一种可选的实施例,所述获取参考硬盘的硬盘属性,包括:
获取所述参考硬盘的参考硬盘标识,其中,所述参考硬盘标识是所述参考硬盘触发所述IO业务阻塞事件后上报的;
从SMART信息集合中获取与所述参考硬盘标识对应的参考硬盘SMART信息,其中,所述SMART信息集合用于存储具有对应关系的初始硬盘标识和硬盘SMART信息,所述初始硬盘标识用于指示正在产生所述IO业务阻塞事件的硬盘,所述硬盘SMART信息用于表征硬盘的所述硬盘属性。
可选地,在本实施例中,SMART信息是对硬盘的硬件如磁头、盘片、马达、电路的运行情况进行监控得到的,通过SMART信息能够表征硬盘的硬盘是否为慢盘、是否存在故障属性等等。
作为一种可选的实施例,在所述根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级之后,所述方法还包括:
生成携带所述目标风险等级的第二通知消息;
将所述第二通知消息发送至管理员使用的管理帐号。
可选地,在本实施例中,第二通知消息中除了携带目标风险等级外,还可以携带目标存储节点的节点标识,以及目标存储节点上部署的具有目标硬盘属性的硬盘的硬盘标识,进而管理员能够通过第二通知消息准确的得知具体产生IO业务阻塞的硬盘,并对存在IO业务阻塞的硬盘进行处理,以提前消除IO业务阻塞的发生,比如,提前对慢盘进行替换,替换为快盘,将故障属性的硬盘进行替换等等。
可选地,在本实施例中,第二通知消息用于指示管理员对目标存储节点在目标时间段内可能存在的阻塞风险进行预处理,比如对目标存储节点进行维护、程序升级等等,本方案对此不做限定。
可选地,在本实施例中,还可以根据目标风险等级触发对应的警报信号,比如目标风险等级较低时,触发低级警报,在目标风险等级较高时,则触发严重警报,警报用于指示管理员对第二通知消息对应的目标风险等级的阻塞事件进行预处理。
作为一种可选的实施例,所述根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态,包括:
确定所述分布式存储集群中所包括的目标存储节点的目标节点数量;
从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级,其中,所述目标阻塞风险等级用于指示所述分布式存储集群在目标时间段内执行IO业务时被阻塞的风险等级;
确定与所述目标阻塞风险等级对应的所述目标运行状态。
可选地,在本实施例中,目标存储节点的节点数量、目标存储节点发生阻塞事件的风险等级以及阻塞风险之间具有对应关系,即发生阻塞挤时间的存储节点的数量不同,并且每个发生阻塞事件的存储节点的在目标时间段内发生阻塞事件的风险等级不同时,分布式存储集群在目标时间段内的执行IO业务被阻塞的阻塞风险等级也就不同。
可选地,在本实施例中,目标运行状态用于指示分布式存储集群在目标时间段内执行IO业务的状态,可以但不限于包括正常执行IO业务、执行IO业务被阻塞、执行IO业务被阻塞并宕机等等,本方案对此不做限定。
作为一种可选的实施例,所述从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级,包括:
在所述风险等级大于预设风险等级的节点数量大于目标数量的情况下,确定所述目标阻塞风险等级为第一目标阻塞风险等级;
在所述风险等级大于所述预设风险等级的节点数量小于或等于所述目标数量的情况下,确定所述目标阻塞风险等级为第二目标阻塞风险等级,其中,所述第一目标阻塞风险等级大于所述第二目标阻塞风险等级。
作为一种可选的实施例,在所述从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级之后,所述方法还包括:
生成携带所述目标阻塞风险等级的第三通知消息;
将所述第三通知消息发送至管理员使用的管理帐号。
可选地,在本实施例中,第三通知消息用于指示管理员对分布式存储集群在目标时间段内可能存在的IO业务阻塞等运行状态进行预处理,比如对分布式存储集群中处于阻塞状态的硬盘进行维护、对分布式存储集群中存储程序进行升级等等,本方案对此不做限定。
可选地,在本实施例中,还可以根据目标阻塞风险等级触发对应的警报信号,比如目标阻塞风险等级较低时,触发低级警报,在目标阻塞风险等级较高时,则触发严重警报,警报用于指示管理员对第三通知消息对应的目标阻塞风险等级的阻塞事件进行预处理。
作为一种可选的实施例,所述检测分布式存储集群中的IO业务阻塞事件,包括:
运行权限添加脚本,其中,所述权限添加脚本用于在所述分布式存储集群中添加对预测脚本的运行权限,所述预测脚本用于预测所述分布式存储集群在所述目标时间段的所述运行状态;
通过运行所述预测脚本的方式检测所述分布式存储集群中的所述IO业务阻塞事件。
可选地,在本实施例中,权限添加脚本可以运行在分布式存储集群中的任意存储节点上,权限添加脚本可以但不限于是使用chmod +x对预测脚本条件可执行权限。
可选地,在本实施例中,预测脚本用于实现上述存储集群运行状态的预测方法,该预测脚本可以运行在分布式存储集群的任意存储节点上。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在本实施例中还提供了一种存储集群运行状态的预测装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本申请实施例的存储集群运行状态的预测装置的结构框图,如图5所示,该装置包括:检测模块52,用于检测分布式存储集群中的IO业务阻塞事件;第一获取模块54,用于在检测到所述分布式存储集群中发生所述IO业务阻塞事件的情况下,获取发生所述IO业务阻塞事件的目标存储节点的运行数据,其中,所述运行数据用于指示所述目标存储节点在发生所述IO业务阻塞事件的当前时刻对IO业务的处理情况;第一预测模块56,用于根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,其中,所述目标风险等级用于指示所述目标存储节点在所述目标时间段发生所述IO业务阻塞事件的概率;第二预测模块58,用于根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态。
可选的,所述第一预测模块,包括:第一确定单元,用于根据所述运行数据确定所述目标存储节点中包括的具有目标硬盘属性的硬盘的目标硬盘数量,以及所述目标存储节点中部署的CPU的目标负载参数,其中,具有所述目标硬盘属性的硬盘对IO业务的处理能力低于目标处理能力,所述目标负载参数用于指示所述目标存储节点中部署的CPU的负载情况;预测单元,用于根据所述目标硬盘数量和所述目标负载参数预测所述目标风险等级。
可选的,所述第一确定单元,用于:从所述运行数据所包括的参考硬盘中统计具有所述目标硬盘属性的硬盘的所述目标硬盘数量,其中,所述参考硬盘为所述目标存储节点中产生所述IO业务阻塞事件的硬盘;根据所述运行数据所包括的所述目标存储节点的业务负载计算所述目标存储节点中部署的CPU在所述当前时刻的目标平均负载作为所述目标负载参数。
可选的,所述第一确定单元,用于:从所述参考硬盘中统计具有故障属性的硬盘的第一硬盘数量,和/或,从所述参考硬盘中统计具有目标处理速率的硬盘的第二硬盘数量,其中,所述目标处理速率低于目标速率阈值;将所述第一硬盘数量,所述第二硬盘数量,或者,所述第一硬盘数量与所述第二硬盘数量的和值确定为所述目标硬盘数量。
可选的,所述第一确定单元,用于:获取具有对应关系的硬盘数量区间,平均负载区间和风险等级,其中,所述具有对应关系的硬盘数量区间,平均负载区间和风险等级是根据历史产生的所述IO业务阻塞事件的数据构建的;从所述具有对应关系的硬盘数量区间,平均负载区间和风险等级中查找与所述目标硬盘数量和所述目标平均负载对应的所述目标风险等级。
可选的,所述第一确定单元,用于:在所述目标硬盘数量小于第一阈值,所述目标平均负载小于第二阈值的情况下,确定所述目标风险等级为第一风险等级;在所述目标硬盘数量小于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第二风险等级,其中,所述第二风险等级高于所述第一风险等级;在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载小于所述第二阈值的情况下,确定所述目标风险等级为第三风险等级,其中,所述第三风险等级高于或者等于所述第二风险等级;在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第四风险等级,其中,所述第四风险等级高于所述第三风险等级。
可选的,所述装置还包括:第二获取模块,用于在所述获取发生所述IO业务阻塞事件的目标存储节点的运行数据之前,获取所述IO业务阻塞事件的阻塞事件信息;确定模块,用于根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的参考阻塞风险等级。
可选的,所述确定模块,包括:第二确定单元,用于在所述IO业务阻塞事件的事件数量小于第三阈值,并且,所述IO业务阻塞事件的持续时间小于第四阈值的情况下,确定所述参考阻塞风险等级为第一阻塞风险等级,其中,所述阻塞事件信息包括所述事件数量和所述持续时间;第三确定单元,用于在所述IO业务阻塞事件的所述事件数量大于或者等于所述第三阈值,和/或,所述IO业务阻塞事件的所述持续时间大于或者等于第四阈值的情况下,根据所述分布式存储集群中所述IO业务阻塞事件的增长幅度确定所述参考阻塞风险等级,其中,所述阻塞事件信息还包括所述增长幅度。
可选的,所述第三确定单元,用于:在所述增长幅度小于目标幅度的情况下,确定所述参考阻塞风险等级为第二阻塞风险等级,其中,所述第二阻塞风险等级高于所述第一阻塞风险等级;在所述增长幅度大于或者等于所述目标幅度的情况下,确定所述参考阻塞风险等级为第三阻塞风险等级,其中,所述第三阻塞风险等级高于所述第二阻塞风险等级。
可选的,所述第二获取模块,包括:查询单元,用于按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字,得到查询结果,其中,所述目标关键字为与所述IO业务阻塞事件对应的关键字,所述目标日志用于记录所述分布式存储集群的运行状态;第四确定单元,用于根据所述查询结果确定所述阻塞事件信息。
可选的,所述装置还包括:第二获取模块,用于在所述按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字之前,获取所述预定查询周期,其中,所述预定查询周期是所述分布式存储集群根据Crontab命令对初始查询周期进行调整得到的。
可选的,所述第一确定单元,用于:在所述目标硬盘数量小于第一阈值,所述目标平均负载小于第二阈值的情况下,确定所述目标风险等级为第一风险等级;在所述目标硬盘数量小于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第二风险等级,其中,所述第二风险等级高于所述第一风险等级;在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载小于所述第二阈值的情况下,确定所述目标风险等级为第三风险等级,其中,所述第三风险等级高于或者等于所述第二风险等级;在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第四风险等级,其中,所述第四风险等级高于所述第三风险等级。
可选的,所述装置还包括:第二获取模块,用于在所述获取发生所述IO业务阻塞事件的目标存储节点的运行数据之前,获取所述IO业务阻塞事件的阻塞事件信息;确定模块,用于根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的参考阻塞风险等级。
可选的,所述确定模块,包括:第二确定单元,用于在所述IO业务阻塞事件的事件数量小于第三阈值,并且,所述IO业务阻塞事件的持续时间小于第四阈值的情况下,确定所述参考阻塞风险等级为第一阻塞风险等级,其中,所述阻塞事件信息包括所述事件数量和所述持续时间;第三确定单元,用于在所述IO业务阻塞事件的所述事件数量大于或者等于所述第三阈值,和/或,所述IO业务阻塞事件的所述持续时间大于或者等于第四阈值的情况下,根据所述分布式存储集群中所述IO业务阻塞事件的增长幅度确定所述参考阻塞风险等级,其中,所述阻塞事件信息还包括所述增长幅度。
可选的,所述第三确定单元,用于:在所述增长幅度小于目标幅度的情况下,确定所述参考阻塞风险等级为第二阻塞风险等级,其中,所述第二阻塞风险等级高于所述第一阻塞风险等级;在所述增长幅度大于或者等于所述目标幅度的情况下,确定所述参考阻塞风险等级为第三阻塞风险等级,其中,所述第三阻塞风险等级高于所述第二阻塞风险等级。
可选的,所述第二获取模块,包括:查询单元,用于按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字,得到查询结果,其中,所述目标关键字为与所述IO业务阻塞事件对应的关键字,所述目标日志用于记录所述分布式存储集群的运行状态;第四确定单元,用于根据所述查询结果确定所述阻塞事件信息。
可选的,所述装置还包括:第二获取模块,用于在所述按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字之前,获取所述预定查询周期,其中,所述预定查询周期是所述分布式存储集群根据Crontab命令对初始查询周期进行调整得到的。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (22)

1.一种存储集群运行状态的预测方法,其特征在于,包括:
检测分布式存储集群中的IO业务阻塞事件;
在检测到所述分布式存储集群中发生所述IO业务阻塞事件的情况下,获取发生所述IO业务阻塞事件的目标存储节点的运行数据,其中,所述运行数据用于指示所述目标存储节点在发生所述IO业务阻塞事件的当前时刻对IO业务的处理情况;
根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,其中,所述目标风险等级用于指示所述目标存储节点在所述目标时间段发生所述IO业务阻塞事件的概率;
根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态。
2.根据权利要求1所述的方法,其特征在于,所述根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,包括:
根据所述运行数据确定所述目标存储节点中包括的具有目标硬盘属性的硬盘的目标硬盘数量,以及所述目标存储节点中部署的CPU的目标负载参数,其中,具有所述目标硬盘属性的硬盘对IO业务的处理能力低于目标处理能力,所述目标负载参数用于指示所述目标存储节点中部署的CPU的负载情况;
根据所述目标硬盘数量和所述目标负载参数预测所述目标风险等级。
3.根据权利要求2所述的方法,其特征在于,所述根据所述运行数据确定所述目标存储节点中包括的具有目标硬盘属性的硬盘的目标硬盘数量,以及所述目标存储节点中部署的CPU的目标负载参数,包括:
从所述运行数据所包括的参考硬盘中统计具有所述目标硬盘属性的硬盘的所述目标硬盘数量,其中,所述参考硬盘为所述目标存储节点中产生所述IO业务阻塞事件的硬盘;
根据所述运行数据所包括的所述目标存储节点的业务负载计算所述目标存储节点中部署的CPU在所述当前时刻的目标平均负载作为所述目标负载参数。
4.根据权利要求3所述的方法,其特征在于,所述从所述运行数据所包括的参考硬盘中统计具有所述目标硬盘属性的硬盘的所述目标硬盘数量,包括:
从所述参考硬盘中统计具有故障属性的硬盘的第一硬盘数量,和/或,从所述参考硬盘中统计具有目标处理速率的硬盘的第二硬盘数量,其中,所述目标处理速率低于目标速率阈值;
将所述第一硬盘数量,或者,所述第二硬盘数量,或者,所述第一硬盘数量与所述第二硬盘数量的和值确定为所述目标硬盘数量。
5.根据权利要求3所述的方法,其特征在于,所述根据所述目标硬盘数量和所述目标负载参数预测所述目标风险等级,包括:
获取具有对应关系的硬盘数量区间,平均负载区间和风险等级,其中,所述具有对应关系的硬盘数量区间,平均负载区间和风险等级是根据历史产生的所述IO业务阻塞事件的数据构建的;
从所述具有对应关系的硬盘数量区间,平均负载区间和风险等级中查找与所述目标硬盘数量和所述目标平均负载对应的所述目标风险等级。
6.根据权利要求5所述的方法,其特征在于,所述从所述具有对应关系的硬盘数量区间,平均负载区间和风险等级中查找与所述目标硬盘数量和所述目标平均负载对应的所述目标风险等级,包括:
在所述目标硬盘数量小于第一阈值,所述目标平均负载小于第二阈值的情况下,确定所述目标风险等级为第一风险等级;
在所述目标硬盘数量小于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第二风险等级,其中,所述第二风险等级高于所述第一风险等级;
在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载小于所述第二阈值的情况下,确定所述目标风险等级为第三风险等级,其中,所述第三风险等级高于或者等于所述第二风险等级;
在所述目标硬盘数量大于或者等于所述第一阈值,所述目标平均负载大于或者等于所述第二阈值的情况下,确定所述目标风险等级为第四风险等级,其中,所述第四风险等级高于所述第三风险等级。
7.根据权利要求1所述的方法,其特征在于,在所述获取发生所述IO业务阻塞事件的目标存储节点的运行数据之前,所述方法还包括:
获取所述IO业务阻塞事件的阻塞事件信息;
根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的参考阻塞风险等级。
8.根据权利要求7所述的方法,其特征在于,所述根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的所述参考阻塞风险等级,包括:
在所述IO业务阻塞事件的事件数量小于第三阈值,并且,所述IO业务阻塞事件的持续时间小于第四阈值的情况下,确定所述参考阻塞风险等级为第一阻塞风险等级,其中,所述阻塞事件信息包括所述事件数量和所述持续时间;
在所述IO业务阻塞事件的所述事件数量大于或者等于所述第三阈值,和/或,所述IO业务阻塞事件的所述持续时间大于或者等于第四阈值的情况下,根据所述分布式存储集群中所述IO业务阻塞事件的增长幅度确定所述参考阻塞风险等级,其中,所述阻塞事件信息还包括所述增长幅度。
9.根据权利要求8所述的方法,其特征在于,所述根据所述分布式存储集群中所述IO业务阻塞事件的增长幅度确定所述参考阻塞风险等级,包括:
在所述增长幅度小于目标幅度的情况下,确定所述参考阻塞风险等级为第二阻塞风险等级,其中,所述第二阻塞风险等级高于所述第一阻塞风险等级;
在所述增长幅度大于或者等于所述目标幅度的情况下,确定所述参考阻塞风险等级为第三阻塞风险等级,其中,所述第三阻塞风险等级高于所述第二阻塞风险等级。
10.根据权利要求7所述的方法,其特征在于,所述获取所述IO业务阻塞事件的阻塞事件信息,包括:
按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字,得到查询结果,其中,所述目标关键字为与所述IO业务阻塞事件对应的关键字,所述目标日志用于记录所述分布式存储集群的运行状态;
根据所述查询结果确定所述阻塞事件信息。
11.根据权利要求10所述的方法,其特征在于,在所述按照预定查询周期通过grep命令查询目标日志中是否存在目标关键字之前,所述方法还包括:
获取所述预定查询周期,其中,所述预定查询周期是所述分布式存储集群根据Crontab命令对初始查询周期进行调整得到的。
12.根据权利要求7所述的方法,其特征在于,在所述根据所述阻塞事件信息确定所述分布式存储集群在所述目标时间段内的参考阻塞风险等级之后,所述方法还包括:
生成携带所述参考阻塞风险等级的第一通知消息;
将所述第一通知消息发送至管理员使用的管理帐号。
13.根据权利要求1所述的方法,其特征在于,所述获取发生所述IO业务阻塞事件的目标存储节点的运行数据,包括:
获取参考硬盘的硬盘属性,其中,所述参考硬盘为产生所述IO业务阻塞事件的硬盘;
获取部署了所述参考硬盘的所述目标存储节点的业务负载,其中,所述运行数据包括所述硬盘属性和所述业务负载。
14.根据权利要求13所述的方法,其特征在于,所述获取参考硬盘的硬盘属性,包括:
获取所述参考硬盘的参考硬盘标识,其中,所述参考硬盘标识是所述参考硬盘触发所述IO业务阻塞事件后上报的;
从SMART信息集合中获取与所述参考硬盘标识对应的参考硬盘SMART信息,其中,所述SMART信息集合用于存储具有对应关系的初始硬盘标识和硬盘SMART信息,所述初始硬盘标识用于指示正在产生所述IO业务阻塞事件的硬盘,所述硬盘SMART信息用于表征硬盘的所述硬盘属性。
15.根据权利要求1所述的方法,其特征在于,在所述根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级之后,所述方法还包括:
生成携带所述目标风险等级的第二通知消息;
将所述第二通知消息发送至管理员使用的管理帐号。
16.根据权利要求1所述的方法,其特征在于,所述根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态,包括:
确定所述分布式存储集群中所包括的目标存储节点的目标节点数量;
从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级,其中,所述目标阻塞风险等级用于指示所述分布式存储集群在目标时间段内执行IO业务时被阻塞的风险等级;
确定与所述目标阻塞风险等级对应的所述目标运行状态。
17.根据权利要求16所述的方法,其特征在于,所述从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级,包括:
在所述风险等级大于预设风险等级的节点数量大于目标数量的情况下,确定所述目标阻塞风险等级为第一目标阻塞风险等级;
在所述风险等级大于所述预设风险等级的节点数量小于或等于所述目标数量的情况下,确定所述目标阻塞风险等级为第二目标阻塞风险等级,其中,所述第一目标阻塞风险等级大于所述第二目标阻塞风险等级。
18.根据权利要求16所述的方法,其特征在于,在所述从具有对应关系的节点数量,风险等级和阻塞风险等级中确定与所述目标节点数量和所述目标风险等级对应的目标阻塞风险等级之后,所述方法还包括:
生成携带所述目标阻塞风险等级的第三通知消息;
将所述第三通知消息发送至管理员使用的管理帐号。
19.根据权利要求1所述的方法,其特征在于,所述检测分布式存储集群中的IO业务阻塞事件,包括:
运行权限添加脚本,其中,所述权限添加脚本用于在所述分布式存储集群中添加对预测脚本的运行权限,所述预测脚本用于预测所述分布式存储集群在所述目标时间段的所述运行状态;
通过运行所述预测脚本的方式检测所述分布式存储集群中的所述IO业务阻塞事件。
20.一种存储集群运行状态的预测装置,其特征在于,包括:
检测模块,用于检测分布式存储集群中的IO业务阻塞事件;
第一获取模块,用于在检测到所述分布式存储集群中发生所述IO业务阻塞事件的情况下,获取发生所述IO业务阻塞事件的目标存储节点的运行数据,其中,所述运行数据用于指示所述目标存储节点在发生所述IO业务阻塞事件的当前时刻对IO业务的处理情况;
第一预测模块,用于根据所述运行数据预测所述目标存储节点在所述当前时刻之后的目标时间段存在阻塞风险的目标风险等级,其中,所述目标风险等级用于指示所述目标存储节点在所述目标时间段发生所述IO业务阻塞事件的概率;
第二预测模块,用于根据目标风险等级预测所述分布式存储集群在所述目标时间段的目标运行状态。
21.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至19任一项中所述的方法的步骤。
22.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至19任一项中所述的方法的步骤。
CN202211707187.XA 2022-12-29 2022-12-29 存储集群运行状态的预测方法及装置 Active CN115686381B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211707187.XA CN115686381B (zh) 2022-12-29 2022-12-29 存储集群运行状态的预测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211707187.XA CN115686381B (zh) 2022-12-29 2022-12-29 存储集群运行状态的预测方法及装置

Publications (2)

Publication Number Publication Date
CN115686381A CN115686381A (zh) 2023-02-03
CN115686381B true CN115686381B (zh) 2023-03-14

Family

ID=85055893

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211707187.XA Active CN115686381B (zh) 2022-12-29 2022-12-29 存储集群运行状态的预测方法及装置

Country Status (1)

Country Link
CN (1) CN115686381B (zh)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4392665B2 (ja) * 2005-05-26 2010-01-06 日本電気株式会社 クラスタシステムの性能予測装置、性能予測方法及び性能予測プログラム
CN108009016B (zh) * 2016-10-31 2021-10-22 华为技术有限公司 一种资源负载均衡控制方法及集群调度器
CN108664346A (zh) * 2017-03-27 2018-10-16 中国移动通信集团福建有限公司 分布式存储系统的节点异常的定位方法、装置和系统
CN111026621B (zh) * 2019-12-23 2023-04-07 杭州安恒信息技术股份有限公司 面向Elasticsearch集群的监控报警方法、装置、设备、介质
US20210216351A1 (en) * 2020-01-15 2021-07-15 Purdue Research Foundation System and methods for heterogeneous configuration optimization for distributed servers in the cloud
CN112115031A (zh) * 2020-09-29 2020-12-22 中国银行股份有限公司 集群状态监控方法及装置
CN112965872A (zh) * 2021-02-24 2021-06-15 刘志欣 系统集群节点的风险预测方法、装置、终端及存储介质
CN113032233A (zh) * 2021-03-17 2021-06-25 中国工商银行股份有限公司 分布式服务集群运行时参数自适应处理方法、装置及系统

Also Published As

Publication number Publication date
CN115686381A (zh) 2023-02-03

Similar Documents

Publication Publication Date Title
CN110661659B (zh) 一种告警方法、装置、系统及电子设备
CN109684181B (zh) 告警根因分析方法、装置、设备及存储介质
US9672085B2 (en) Adaptive fault diagnosis
CN103220173B (zh) 一种报警监控方法及监控系统
US10983855B2 (en) Interface for fault prediction and detection using time-based distributed data
CN110224885B (zh) 设备监控的告警方法、装置、存储介质及电子设备
US6633834B2 (en) Baselining of data collector data
CN101635651A (zh) 一种网络日志数据管理方法、系统及装置
CN112395156A (zh) 故障的告警方法和装置、存储介质和电子设备
CN112699007A (zh) 监控机器性能的方法、系统、网络设备及存储介质
CN113986595A (zh) 一种异常定位方法及装置
CN108809729A (zh) 一种分布式系统中ctdb服务的故障处理方法及装置
CN115686381B (zh) 存储集群运行状态的预测方法及装置
CN111324583B (zh) 一种业务日志的分类方法及装置
CN106686082B (zh) 存储资源调整方法及管理节点
CN113472881B (zh) 在线终端设备的统计方法和装置
US20210135924A1 (en) Network monitoring system and method, and non-transitory computer readable medium storing program
CN111506446B (zh) 接口故障检测方法及服务器
WO2023093527A1 (zh) 告警关联规则生成方法、装置、电子设备和存储介质
CN117439899B (zh) 一种基于大数据的通信机房巡检方法及系统
CN114422324B (zh) 一种告警信息的处理方法、装置、电子设备及存储介质
CN115150253B (zh) 一种故障根因确定方法、装置及电子设备
CN113110977B (zh) 一种基于区块链系统的安全监控方法
CN116185752A (zh) 一种基于日志的异常监测方法、系统、装置及存储介质
CN115617617A (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
GR01 Patent grant
GR01 Patent grant