云环境下保障业务连续性故障诊断技术研究

2019-10-19 07:30赵莹王国平路学刚杨勰刘军刘赛
现代计算机 2019年25期
关键词:知识库连续性故障诊断

赵莹,王国平,路学刚,杨勰,刘军,刘赛

(1.云南电网有限责任公司,昆明650011;2.南瑞集团有限公司(国网电力科学研究院有限公司),南京210003;3.南京南瑞信息通信科技有限公司,南京210003)

0 引言

在国家大力倡导推进云数据中心建设的背景下,众多服务依赖于云环境,一旦云环境发生故障错误,将会导致严重的后果。近年来,云环境发生故障事件频发,例如,在2018 年一月份,由于谷歌自动化设备的故障导致长达93 分钟的停运,随之而来的后果导致谷歌软件上最受欢迎的一些应用程序突然停止服务,指使谷歌资金损失惨重。2018 年2 月28 日,亚马逊云服务平台(AWS)因错误指令而导致停电。据Cyence 报道的数据统计分析,由于AWS 长达四小时的服务中断,不仅导致五百家上市公司损失了1.5 亿左右的美元而且还引起了大量用户的投诉意见。网络监测公司Apica做过相关研究,其指出世界排名前100 位的互联网零售商中起码有54 家都因为故障影响导致其收益下降了20%以上,甚至有3 家网站因此暂停了服务。18 年六月份,阿里云的官方网站的控制台和部分产品功能由于处理不当出现故障;阿里云的官方网站的一部分控制功能,还有MQ、NAS、OSS 等产品的一些功能由于人为恶意攻击同样也出现了访问异常的情况,一些用户报告说,手机方面和电脑方面都无法访问。2018 年七月初,AWS 的管理控制平台出现间歇性失灵状况。同年七月中旬,谷歌云平台由于事先准备工作不当导致大面积负载均衡服务发生故障,这直接导致用户短时间内无法访问云平台。

当今,容灾备份恢复的解决已经刻不容缓,相关专家指出该问题已经上升到国家信息发展的战略高度,成为国家信息安全体系的核心问题之一[1]。针对该问题提出的抗灾后备和灾后恢复系统已成为通向信息化社会道路必不可少的基础安全设施,其中容灾备份的一个应用延伸为保障业务连续性,即(Business Continuity),业务连续性主要是指组织在故障事件后可以以预定的、可接受范围内的水平持续提供服务的能力。业务连续保护目前在国际上受到了相当大的关注,它是由多学科相互交叉的新兴前沿研究热点领域,因此研究业务连续保护相当有必要。云南电力高度重视业务连续性在公司信息系统中的应用研究工作,已开展各类信息系统的数据级、应用级以及双活灾备建设实践。在应用中,为了解决数据复制一致性问题,除了采用传统的基于逻辑级的数据复制技术外,目前云南电力公司也在开展基于块复制的物理级数据复制技术试点验证工作,但这些技术仅针对传统环境下数据库层面解决数据异地灾备问题。随着电网公司业务上云,传统的业务开通、迁移、资源调配、故障恢复等解决方案已无法满足云环境下的业务连续性保障要求。如何确保云数据中心/云平台在地震、洪水、火灾等自然条件引起的事故破坏或失败后及时恢复,在这基础上确保业务的连续性是一个亟待解决的重要问题。而在该问题中,在云平台下保障业务连续性并对故障进行快速的定位和恢复则是重中之重。

故障诊断技术早在40 年之前就已经有人开始着手研究,发展至今已经相当成熟,主要应用于大型电网、军事、航空航天、汽车工业等领域中[2-3]。目前常用的故障诊断方法包括、基于专家系统的诊断评估方法、基于贝叶斯网络的诊断评估方法和基于故障树的诊断评估方法等[4]。此外,许多学者还基于新兴的技术提出了很多新的方法,如基于隐马尔科夫和神经网络相结合的集成模型[5],基于混合键合图模型的综合诊断方案[6],基于最小动态贝叶斯网络构建了最小评价模型(H-MEMS)[7]等。

专家系统是由该领域内专家所提供的专业知识为基础形成的评估体系,可以利用该系统不断积累知识经验来诊断故障,该方法的特点是简单,但在知识不全面、经验不足的条件下,专家系统的表现不佳。贝叶斯网络可以通过该网络的无环图结构描述变量之间的关系网络,表达故障的相关性,但结构复杂,计算复杂程度很高。故障树分析法主要用于分析各种导致设备出现故障的因素,通过构建树,根据树状结构,逐层细化,找出并绘制出出现故障的所有可能组合。该方法适用的环境非常广泛,其不仅可以分析软硬件本身出现故障的原因,推到出导致系统故障的原因组合,还能进行定量计算。虽然故障树分析法也存在一些问题,包括一旦故障树规则确定后续就不好更改,如果有新的故障将无法很好地诊断,但利用故障树分析法实现故障诊断仍然存在非常大的优势。

基于此,本文针对云环境,根据知识库保存的历史只是构建故障树,结合故障树分析法实现故障树规则的自我更新完善,通过分析云业务系统故障,针对这些故障分析出故障处理流程和具体的故障处理建议,达到对故障进行快速的定位和恢复的目的。

1 故障树分析法

故障树分析法(Fault Tree Analysis,FTA),是在1961 年由美国贝尔实验室的研究员华特先生为提升火箭发射系统安全性、可靠性而提出的[8]。它是一种适用于故障诊断的分析方法,主要通过图演绎的方式,目前已被成功运用于对化工[9]、航空航天[10]、核电站[11]、制造工艺[12]、汽车故障[13]等各个领域的安全性分析。该方法是通过将导致形成故障的因素根据树的结构逐级推演,从而得出系统故障的原因,该方法甚至可以进一步计算每种故障发生的概率,找出产生系统故障因素的所有组合。故障树分析法的有点非常多:它能够分析任何故障,不单单局限于分析由于软硬件本身引起的故障,还包括一些人为导致或者周围环境引起的故障原因;它通过分析可以确定最小割集,最小割集可以帮助系统确定系统的缺陷和所有可能存在的故障模式,并通过定量计算故障分布和发生概率,从而求得最小割集重要度,确定正确的诊断流程以及确定每个故障相应的优先级。

1.1 最小割集

最小割集是可靠性统计的基本概念之一,站在故障的角度,由于每个底层事件都是由系统所能测量和控制的最低分析单元组成,因此它其实表示的是导致系统出现故障的最根本的原因。换句话来说,如果最小割集中所有的部件都出现了故障,这意味着该系统也就出现了故障。所以,最小切割集是那些导致系统出现中断或者故障的最小因素组合。确定最小割集可以使我们准确系统所有潜在危机,它是实现精准故障诊断的核心。

除了最小割集之外,顶部事件发生的概率也是评估系统故障的一个定量描述。因此。通过系统模型中的顶事件以及最小割集的发生概率,求得系统发生异常甚至故障的原因。

假设某系统模型的最小割集K{X1,X2,…,Xn},其中Xn表示第n 个底事件,值得注意的是最小割集种的每个底事件没有交集完全独立,因此根据计算每个底事件的发生概率的积可以得到最小割集的概率PK,计算公式如下:

根据等式(1),按照故障树的逻辑结构从下往上逐步计算,可以求得故障树顶事件发生的概率。已知可以通过使用顶事件和最小割集组成的或门来表示任何一种故障,因此顶事件的发生概率可以通过最小割集计算得到,假设已知故障树的最小割集Mi,其中该故障树包含m 个最小割集,可以求得该故障树的顶事件发生概率为:。通过计算最小割集重要度PM/T=PM/PT,获得每个最小割集的优先级,从而明确诊断流程及诊断顺序。

1.2 基于故障树的故障诊断

故障会给系统带来很大的损失,而若无法及时找到故障原因并快速解决故障,则可能会导致更加严重的损失。为了达到这个目的,需要系统运维人员根据之前的工作经验来设计一个监管控制系统模型,实现对系统的重要设备的实时监控和状态数据的实时采集,而对于那些有着高风险和高故障率的设备或模块,需要进行比其他设备更加高频的监控。运维人员对采集到的实时数据进行分析,若数据超出了阈值,那么便认定有故障产生;其次,这些数据信息可以用作故障树的顶事件,然后依据故障树定义规则构建分析模型。如图1 所示。顶事件代表某项业务故障,底事件代表某最小单元故障。中间事件指未充分拆解的故障原因。

图1 故障树的建树规则及其分析模型图

其中,各符号的意义及概率计算如表1 所示。

表1 故障树中各符号意义

有了分析模型后,就可以对系统异常进行诊断,基于故障树的故障诊断流程如图2 所示。

图2 基于故障树的故障诊断

2 基于故障树和知识库的故障诊断技术

知识是信息经过人为整理加工而得来的,知识库是由事实,概念和规则组成的知识集合[14]。本文的知识库用于存储专家在这一领域提供的专业知识。

本文将知识库添加到故障树分析方法中,使故障树规则可以自我更新和改进,与此同时,还给出了具体的故障处理建议。具体模型如图3 所示。

图3 基于故障树的故障诊断

故障诊断流程主要包括三个步骤:

(1)收集所需数据,根据真实经验积累、实际项目要求和专家组提供的专业知识,建立起故障树的规则库,计算出故障树底事件的概率,完成故障树规则库的构建及初始知识库的构建;

(2)当有告警发生时,根据故障树和知识库进行诊断,输出一个包含故障诊断顺序及故障处理建议的诊断报告;

(3)通过故障诊断报告产生的案例扩充故障处理知识库,之后再根据扩充后的知识库来更新完善故障规则库。

3 实验及结果

本文针对云环境下业务连续性运行构建故障树实现故障诊断模型。由于业务连续性运行涉及的范围比较广,需要从主机、网络、存储、应用、数据库、中间件等方面,结合云计算、数据库资源池,形成云环境下业务运行安全保障机制和闭环管理机制。通过云南电网调度系统业务运行典型场景实验,形成如图4 所示云环境下业务连续性运行故障诊断故障树。

图4 云环境下业务连续性运行故障诊断

4 结语

本文在分析和处理大量数据的基础上,选择基于知识库与故障树的的云业务数据中心故障诊断技术,构建针对云环境的故障快速定位和恢复模型。通过实验分析表明,本文提出的模型具有良好的表现,能够完成精准的故障定位、诊断和处理建议,保障业务系统在云数据中心环境下运行的连续性。

猜你喜欢
知识库连续性故障诊断
比亚迪秦EV充电系统故障诊断与排除
基于神经网络的船舶电力系统故障诊断方法
迈腾B81.8T起动机无法启动故障诊断分析
非连续性文本之图文转化题阅读摭谈
汉语近义词辨析知识库构建研究
浅谈连续函数的四则运算的连续性
小学中段非连续性文本阅读教学初探
连续性
我国联合虚拟参考咨询系统知识库现状研究*
——基于与QuestionPoint的对比
位置与方向测试题