智能运维:存储运维新领域

智能运维:存储运维新领域

随着相关基础研究的成熟,AI(Artificial Intelligence)技术已开始进入实用阶段,并逐步影响社会生活的各个方面。存储系统作为IT基础设施的主要部件,也在探索如何利用AI技术提升其各项能力。在存储系统的智能运用方面,目前最热的领域就是智能运维(AIOps)。本文及后续文章,将阐述华为存储在智能运维领域的思考和当前研究,以及这些研究给客户带来的价值。

AIOps的概念最早由Gartner于2016年提出,原为AlgorithmicIT Operations的简写,后受人工智能风潮影响,更名为Artificial Intelligencefor IT Operations。其含义是使用多种数据源、收集工具、分析(实时和深度)以及展示技术,通过主动、个性化以及动态的洞察,增强运维(监控、自动化和服务平台)能力。随着近两年AI技术的突飞猛进,不少存储公司已经开始了AIOps的大胆尝试,并取得了初步成效,华为存储也不例外。

华为认为,目前AIOps领域最有价值的业务领域,在以下三个方面:感知应用并进行运维优化,提前预警并快速消除隐患,主动识别并准确定位问题。

基于应用感知的运维优化

存储最基本的功能就是对外提供高可靠、高性能的数据存取能力。这看起来简单,但实施起来很困难。一个典型的问题是,客户的业务千差万别,而不同的业务对可靠性、性能的需求也不尽相同。为满足这些需求,存储设备提供了不同的介质、缓存、特性选项。如何合理配置这些选项,实现存储设备的最大化利用,就成为了存储运维复杂性的重要来源。用AIOps的方法来解决这个问题,就是要实现应用感知能力,并对存储进行优化

应用感知的原理是,通过存储设备内置的传感器去实时感知应用的特征、存储的性能、消耗的资源等数据,并基于获取的海量实时数据的进行数据分析、挖掘、建模和预测,准确的判断出应用的业务特点和行为模式,也就是应用的“DNA”。在后期新业务或者未知业务的识别和分析中,通过业务特有的“DNA”,便可准确获知其应用类型(OLTP?OLAP?文件共享?还是VDI?等等)。更进一步,基于长周期序列数据的分析和预测,存储可以预测应用性能需求的峰值和低谷,甚至是某个时刻的具体IOPS值,以及应用的趋势变化。

例如,以应用读写的IO大小分布作为横坐标,时间作为纵坐标,颜色深浅表示所占比例大小,可画出应用在一个业务周期内IO大小的热力图。将不同应用若干天的热力图放在一起比较,可以清晰的看到不同应用的特征区别显著,而同一个应用特征相对稳定,如下图所示。显而易见,通过这些特征可以准确区分出不用应用。

应用DNA示例

具备了感知应用的能力,存储设备就有了“眼睛”,清楚的知道运行在其上的应用类型。而基于应用的特征,配合存储设备内置的接口,来调整和优化存储的配置、参数、前台特性、后台任务等等,最终保障应用高效,平稳的运行。

华为存储的eService云端智能化远程运维系统*,可以接入在网的华为存储设备**,基于海量数据的分析和应用感知技术,可以获知不同应用在设备上的配置和性能状况,并总结出应用的最优实践、某个应用特定配置下的极限性能等知识。经过eService AI平台的发酵,可以形成优化建议推荐给客户,让客户的应用能够更高效的使用存储资源。随着应用业务的持续运行,业务应用所积累的运行信息会逐渐增多,而这些信息会更进一步推进AI更加智能化,形成不断优化的应用感知和调优能力,最终高效服务于客户应用。

提前预警和快速消除隐患

通过设备隐患的主动识别和提前预防,提高系统的稳定性和数据的可靠性,是每个客户都十分关心的内容。虽然人类无法预见未来,但是历史经验会帮助我们避免重蹈覆辙。在这方面,人工智能帮助我们“趋利避害”。

·故障预测:存储系统是由大大小小的各类硬件和软件构成的复杂系统,每个部件都有可能出现故障,从而影响整个系统的稳定性。虽然存储系统做了很多的容错机制,如RAID,双活等,防止出现数据不可用或数据丢失等情况,但是若能提前获知某个部件即将发生故障,无疑会让系统在处理时更加从容。如硬盘的失效,通过硬盘的SMART信息,学习硬盘在失效前的模式,构建机器学习模型,提前预测出故障盘,及时进行更换,可极大避免由于多盘故障导致的数据丢失问题。

·基于云端的智能运维,让我们能实时获知每个设备的健康状态,当某个局点出现故障时,eService可以迅速进行根因分析,指导故障修复,同时总结故障指纹,立即在全网积极排查,避免同类故障在其它局点出现。

·系统瓶颈识别:基于用户的历史数据,eService能对用户的存储设备的运行情况进行预测,如容量和性能的预测,给出建议。用户可以清楚业务在未来一段时间的容量和性能需求,并提前进行相应的扩容或SLA(Service Level Agreement)等级调整等工作,避免临时出现资源不足导致的生产事故。

主动识别并准确定位问题

大部分情况下,当存储设备出现故障时,往往都有一些异常征兆:或许是CPU飙高,或许是短时间内打印大量日志。若识别这些异常,并提前预警,将故障扼杀在摇篮里,将会极大提升系统可靠性,降低运维风险。

对于存储设备来说,需要识别的异常有两类,一类是KPI (Key Performance Indicator)异常,如CPU占用率、时延、IOPS、带宽等指标异常;另一类是日志异常,如异常打印:

·KPI异常:KPI异常通常分为三类:点异常(point anomalies), 上下文异常(contexture anomalies)和群集异常(collective anomalies)。点异常和上下文异常较好理解,群集异常略显复杂。例如,在存储设备中,通常控制器的CPU利用率会随着IOPS的增高或后台任务的增多而增高,当IOPS以及后台任务不变的情况下,CPU利用率增高(但也没到告警的阈值),这就是一个群集异常现象。识别这类异常的方法很多,简单的方法是基于规则,通过设定阈值来检测。但是,当监控指标很多,业务特征很复杂时,管理这些规则和阈值就成了不可完成的任务。更智能的方法,是利用传统的ARIMA、Holt winter方法,或LSTM,CNN等深度学习方法,学习出预测模型,监控预测值与实际值的偏差;或者通过最近邻、聚类和马尔科夫链等方法直接找出异常点。

·日志异常:日志类的异常检测在运维已有不少成功的先例。其核心思想如下:通过分析大量日志,将类似的日志标记为一个事件。通过学习正常日志来归纳总结这些事件的正常模式。当系统发生异常,产生不正常的日志时,就可判断出这时的事件发生模式有异常,可将其标记为不正常的时间段。若存在反馈机制,通过人工定位查明故障根因,则可构建出根因树。基于已有的根因树,类似的故障再度发生时,通过识别故障时的事件模型就可以直接定位根因,有效提升问题定位的效率:

基于日志异常的自动根因定位

存储的智能运维是个全新的领域,涉及到方方面面的问题,很难通过一篇文章将所有方面都讲明白。后续我们会推出一系列文章,针对一些具体的切入点,进行深入的介绍,尽请期待。

*:eService存储设备云端智能远程运维系统当前的主要功能包括:设备云端监控、健康度报告,业务健康度评估等;同时,基于大数据分析和AI技术,提供故障预防和处理,设备调优等功能,实现存储设备生命周期管理,帮助客户降低OPEX。eService目前正在内测阶段,将于2018年初面向全球客户上线。

**:eService仅收集设备运行信息,如配置、性能报表、故障日志,硬盘健康指标等,不会对任何用户信息进行收集。在接入eService前,需要用户进行书面授权。同时,用户可利用eService提供的日志审计功能进行溯源。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180105G0PWUA00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券