张杰
(四川大学计算机学院,成都 610064)
基于CBM的信息设备状态检修研究与尝试
张杰
(四川大学计算机学院,成都610064)
故障预测;CBM;规则集合;BP神经网络
进入云计算时代,依托于云服务构建的企业级应用越来越多。为满足客户的需求,云提供商部署了大规模不同用途的集群,而随着计算机体系结构日趋复杂、计算规模不断扩大,集群内部出现故障的可能性远高于单一计算节点,出现故障也已成为常态[1]。2002年,Google分析了其部署在不同地域的几十个站点的一年内运行数据,指出每年节点故障率为2-3%,即每36小时,就有一个节点发生故障[2]。
云提供商必须保证系统的高可用,才能避免给客户带来损失。主动冗余技术,是公认的保证系统高可用的唯一方式。通过主动冗余,可及时对集群内故障节点进行隔离,并完成失效转移,将业务处理转移到正常节点进行处理[3-5]。在主动冗余技术中,如何判断集群内计算节点的工作状态是否正常,是非常重要的,它直接关系到主动冗余策略的有效性。故障预测技术,就是用来判断、预测节点工作状态的。
上世纪70年代以来,设备维护得到了大量研究,并在机械、航天、电力等领域得到了大量的实践,积累了宝贵的经验和教训[6-7]。近10年来的研究与实践,CBM在故障预测方面的巨大潜力,更是得到了学术界、工业界的充分认可。然而,经实践、研究发现,在信息设备领域(如主机、存储、网络设备等),CBM的研究仍处于起步阶段,企业级的软件产品(如zabbix、cacti、openstdb等),仍存在明显不足,如不易部署、预测精度差。
因此,针对信息设备领域的状态检修进行了研究,提出了适用于信息设备领域故障预测的相关定义、评估标准,并提出了一种基于规则集合、BP神经网络相结合的企业级状态检修应用、开发、部署方案,满足企业易部署、易扩展、故障预测精度高的需求。
信息设备状态检修,指的是对主机、存储、网络等信息设备进行基于状态的维护。设备运行期间的状态,可通过SNMP、IPMI、SysLog等手段获取,经过数据分析模型的计算、评估,对潜在故障进行预测,并做出科学的维修决策。通过这种方式,将信息设备检修的时间点前移,在真正故障出现之前完成对设备的检修、维护,为设备安全可靠运行提供保障。
基于CBM技术进行设备检修的前提,是要求设备的状态劣化过程存在一个“潜在故障-功能故障”间隔,简称为P-F间隔期,如图1 所示。
图1 设备状态 “P-F间隔期”
P-F间隔期,其中的“P”点是潜在故障点,即故障可被检测到的最早时间点,在“P”点之前,故障的副作用不明显,故障无法检测;经过“P”点之后,如不维护设备,设备会以较快的速度劣化到故障点“F”点,此时设备出现明显故障,已不可用。“P-F间隔期”的存在,是进行基于状态维护的前提条件[8]。
信息设备的状态劣化过程,存在明显的“P-F间隔期”,因此可以对其进行基于状态的维护。信息设备状态检修的范围包括主机、存储、网络设备,主机类设备主要包括小型机、PC服务器等,网络类设备主要包括路由器、交换机等,存储类设备主要包括磁盘阵列、磁带库等。
信息设备在状态劣化的过程中,存在明显的“P-F间隔期”。在不加维护的情况下,设从“P点”到“F点”需要经过△t的时间,为了能够更加形象地描述设备在劣化过程中的不同阶段,并针对不同的劣化阶段提供更加精确的故障预测能力,有必要对“P-F间隔期”进行更加细致的划分。根据设备故障的严重性,将故障等级划分为“良好、异常、警告、严重”4个级别。
对设备进行基于状态的故障预测,其实质是建立一个用于故障预测的数学模型,通过该模型对表征设备状态的特征量进行计算,根据模型的计算结果来判断、预测设备的故障等级。表征设备状态的特征量的选择尤为重要,因为不同的设备类型,在运行期间存在不同的特点,表征其运行状态的特征量存在差异,相同特征量在不同故障等级情况下的取值范围也存在差异。
针对信息设备的运行特点,选择了一系列关键指标,作为表征设备状态的特征量。以主机设备类型为例,选择的有效特征量多达几十个,可以归纳为性能、设备生命周期、供电系统、环境情况、安保运维、供应商6个类别。
这里选择与性能相关的部分特征量作为重点描述对象,选择的部分性能特征量如表1所示。
表1 信息设备特征参量选择
考虑到企业级信息设备状态检修的应用场景,要求满足易部署、易扩展、预测精度高的需求,因此采用基于规则集合、BP神经网络相结合的的故障预测方法。
基于规则集合的故障预测模型,提供了一套规则集合模板,实际运维过程中可以创建派生模板对规则集合加以调整,以适应不同设备类型、不同业务场景的需要,满足易扩展的需求;该模型可以在不依赖历史故障数据的情况下,完成对状态检修任务,满足易部署的需求[9]。
但是,针对产自不同厂商、不同型号、历经不同上线时间、处于不同故障级别的设备制定一个近乎完备的规则集合,对运维管理人员来说,是非常困难的。在制定具体的规则集合的时候,如不能全面地了解设备的状况,就难免存在试错的可能性,制定出的规则集合有可能会损失预测精度,甚至造成严重的误判,给设备带来致命的损坏。
为了在易部署、易扩展的基础上提高故障预测的精度,在基于规则集合故障预测的基础上,结合基于BP神经网络的故障预测。系统部署后首先基于规则集合进行故障预测,运维人员可以将预测结果与设备具体健康状况进行对比,并对预测结果进行校准。历史故障数据及校准记录,可作为BP神经网络模型的训练数据,经训练后,BP神经网络模型可以接管对信息设备的故障预测任务,提高预测精度。
4.1基于规则集合的故障预测模型
基于规则集合的故障预测模型,是根据实践经验和知识库,人工制定的一系列故障预测规则。规则集合中的每条规则,都存在对应的分值表达式,将某一时刻采集到的设备状态特征量,输入到规则集合,规则集合就可以对当前输入计算出一个分值,以表征设备的健康状况。
下表是主机相关的部分性能特征量的权重、规则表达式、分值表达式的相关说明。
表2 部分性能特征量的规则、分值表达式说明
表2中该部分性能评价的得分情况为,各个特征量的分值表达式的和。状态评价结果分4个等级,“良好、异常、告警、严重”,评级与对应分值如表3所示。
表3 信息设备状态检修评价标准
上述状态评价评级与设备所处的故障等级一一对应,在不同的故障等级阶段,可以在知识库或决策支持系统的辅助下,制定出详细的状态检修策略和状态检修计划,保障设备正常运行。
4.2基于BP的神经网络的故障预测模型
如表1所示,各性能相关特征量之间关系密切,如高CPU利用率易导致核心温度升高、风扇转速增加,且它们间的关系大部分是非线性关系,考虑到BP神经网络恰能以任意精度逼近任何非线形函数,所以基于BP神经网络构建故障预测模型来提高预测精度的方法是可行的。
BP神经网络故障预测模型,其状态评价维度是规则集合故障预测模型评价维度的子集,即,其关注的特征量仅限于相互之间存在非线形关系的部分。表4列出了所关注的特征量。
表4 BP神经网络故障预测模型的参考特征量
(1)神经网络结构设计
神经网络包括输入层、隐层、输出层,各神经元层包含一定数量的神经元,每个神经元有多个输入和1个输出,神经网络模型的构建,其实质就是对神经元各输入引脚的权值的训练。针对性能特征量的故障预测,构建神经网络结构,包括输入层、隐层、输出层。输入层、输出层神经元的数量,可以根据实际情况进行调整,隐层神经元的数量,根据如下经验公式进行计算:
式(1)中,m为隐层节点数量,n为输入层节点数量,l为输出层节点数量,a为1-10之间的常数。
输出层神经元传递函数选用log-sigmoid型函数,中间层神经元的传递函数,依据BP神经网络的一般原则设定为S型正切函数tan-sigmoid。
(2)训练样本确定及分级
训练样本,是通过基于规则集合的故障预测所得到的。基于规则集合的故障预测结果,运维人员根据设备实际健康状况对其进行了校准,校准的原则如下:
①对比确认结果为“故障预测值准确”,对预测结果不予调整;
②对比确认结果为“故障预测值偏高”,预测结果降低一个故障等级,例如从“严重”降为“警告”;
③对比确认结果为“故障预测值偏低”,预测结果升高一个故障等级,例如从“良好”升高到“异常”;
上述校准后的故障预测结果可用于构建BP神经网络故障预测模型的训练样本,对应的故障等级保持不变。训练样本中,输入向量定义为InputX=[x1,x2,x3,x4],代表当日的设备状态特征量的值,其中各分量x1、x2、x3、x4依次表示 CON_FAN、CON_CPU、CON_ RAM、CON_TEMP;输出向量OutputY=[y1,y2,y3,y4],代表次日的设备特征量的值,其中各分量y1、y2、y3、y4依次表示CON_FAN、CON_CPU、CON_RAM、CON_ TEMP;故障级别代表在当日、次日这个时间窗口内设备所处的故障等级。
4.3规则集合、BP神经网络相结合的故障预测模型
将基于规则集合、基于BP神经网络的故障预测模型相结合,为实现易部署、易扩展、预测精度高的企业级状态检修提供了一个有效方案。状态检修系统中,两种故障预测模型的协作关系如图2 所示。
针对信息设备领域状态检修研究及企业级实践现状,提出了一种新的思路,即,将易实现、易部署、易扩展的基于规则集合的故障预测模型,与预测精度高的BP神经网络故障预测模型相结合,利用前者在状态检修中积累下的数据以及运维人员的校准,构建后者的训练样本,便于训练一个适应具体设备类型、业务场景的可靠的故障预测模型,在后期的设备检修过程中提高预测精度。
图2 两种故障预测模型协作检修流程
[1]Chakravorty S.,Mendes C.L.,and Kale L.V.Proactive Fault Tolerance in MPI Applications Via Task Migration[M].High Performance Computing-HiPC,2006:485-496.
[2]Bosila G.,Etal.MPICH-V:Toward a Scalable Fault Tolerant MPI for Volatile Nodes[C].In Supercomputing.ACM/IEEE 2002 Conference,2002.
[3]Chen G.,Jin H.,Zou D.Q.,Zhou B.B.,Qiang W.Z.A Lightweight Software System in the Cloud Environment[J].Concurrency and Computation-Practice&Experience,2015,27(12):2982-2998.
[4]Dai H.J.,Zhao S.L.,Zhang J.T.,Qiu M.K.,Tao L.X.Security Enhancement of Cloud Servers with a Redundancy-Based Fault-Tolerant Cache Structure[J].Future Generation Computer Systems-The International Journal of Grid Computing and Science,2015,52:147-155.
[5]Liu Dong.A Fault-Tolerant Architecture for ROIA in Cloud[J].Journal of Ambient Intelligence and Humanized Computing,2015,6(5): 587-595.
[6]彭颖.基于退化隐式半马尔科夫模型的设备健康预测及系统性维护策略研究[D].上海:上海交通大学机械与动力工程学院,2011.
[7]徐皑冬,于海斌,郭前进.基于状态的设备维护-CBM技术研究[J].工程机械,2005(6):9-13.
[8]侯晓凯,李师谦,王杰琼,胡彬,邓晶.一种基于神经网络的网络设备故障预测系统[J].山东理工大学学报(自然科学版),2014,28(6):29-34.
[9]严然,孟由,钱德沛,栾钟治.故障预测技术研究综述[J].高性能计算发展与应用,2013(2):38-49.
Fault Prediction;CBM;Rules Set;BP Neural Network
Research and Trying of Information Devices Status Maintenance Based on CBM
ZHANG Jie
(College of Computer Science,Sichuan University,Chengdu 610064)
张杰(1990-),男,山东滨州人,硕士研究生,研究方向为网络与信息安全
2015-12-22
2016-02-01
随着计算机体系结构、计算规模的不断扩大,相比于单一计算节点,集群内部出现故障的可能性显著提升,故障已经成为一种常态。主动冗余技术,是保证系统可靠性的常用方式。故障预测,在主动冗余技术中起着至关重要的作用。通过故障预测,可以对集群中计算节点的运行状态进行评估、判断,保证计算节点在真正的故障出现之前,完成节点的失效转移,从而提高系统的可靠性。提出适用于信息设备的故障预测的相关定义、评估标准,并提出一种适用于企业级应用部署的状态检修方案。
With the enlargement of computing scale,faults are more likely to appear in computing factory compared with single computing node,and faults have been becoming a common problem.Active Redundancy is the most effective method to guarantee the robustness of system. Faults prediction is of vital importance in active redundancy.By faults prediction,devices'health status can be evaluated and side effects of faults can be detected before the real faults appear in order to failover.Describes the relevant definition,evaluation standard of faults prediction in information devices area,puts forward a CBM based scheme adapt to enterprise level application,development and deployment.