作者:浪潮资深存储架构师 叶毓睿、浪潮存储架构师 李强
随着5G、大数据为代表的新基建不断落地,现代数据中心正迅速崛起,新型的存储器件、软件技术及解决方案的发展使得存储系统越来越复杂。这一趋势下,浪潮存储基于InView智能管理平台,为企业提供了智能、简单且易用的存储管理和运维。
解决存储系统的复杂性需要AI技术
存储系统的生命周期包括准备、实施、维护三个阶段,这是一个非常复杂的过程。从准备阶段的方案设计到实施过程中的现场性能调优,再到维护阶段的监控管理、问题定位和解决,加之由于用户数据中心环境复杂,存储设备种类数量繁多,所以存储系统的生命周期是一个复杂的体系,解决存储系统的复杂生命周期运行和管理需要AI技术的加持。
图1:存储系统生命周期三阶段
AI技术可以解决存储系统运行和管理的复杂性,AI技术会不断地从存储及其运行环境中采集存储的各种状态信息和性能数据,用机器学习、算法分析,学习用户的存储使用情况,进而自动化的调整并优化存储系统,使存储服务能更好地适应用户的需求。比如:智能化的把数据保存在合适的区域;自动的完成数据均衡;预测未来的需求;预防潜在的问题;自动参数调优等,有AI加持的智能化存储管理可以增强存储系统的可靠性、降低存储的复杂性和维护成本。
权威IT调研与咨询服务公司Gartner也在持续关注存储智能化的发展,并给出了AIOps(Artificial Intelligence IT Operations)的定义: AIOps利用大数据和AI技术增强IT管理和运维的能力,包括:可用性和性能监测、事件关联和分析、IT服务管理和自动化。
用户期待AI加持的存储智能管理
全球的用户也期待着拥有智能化管理的存储产品。IDC在2018年6月完成了一项全球存储用户的智能化特性调查,用户对使用AI / ML算法推动存储系统的改进抱以积极的态度。
图2:IDC调研用户对AI存储的需求
同时,IDC还调研了已经使用了存储智能运维技术(AIOps)的用户,询问他们从中得到了哪些好处。图3展示了用户目前最关心的五项智能服务。其中,排第一的AIOps用途是改善系统的整体可用性,其次是加快问题解决速度及提高性能容量规划,预测性地识别任何即将发生的故障,监视与存储相关的其他IT基础架构也被用户重点关注。整体来说,存储智能运维技术(AIOps)在整个的市场和发展趋势是非常好的,对于用户来说,用户期待借助存储智能运维技术(AIOps)来解决日常手段或者现有方法不能解决的存储管理问题。
图3:IDC调研:用户最希望使用的AIOps特性
浪潮存储智能运维(AIOps)的关键功能和应用场景
图4:存储的AIOps框架
一个完整的存储智能运维(AIOps)框架包括监控、学习、预测、推荐和实施五个过程,五个过程能为存储提供根因分析、自动调优、预防故障、容量预测和规划、性能预测和规划、IT服务管理等功能。
图5:Gartner 定义的AIOps主要功能
学术界也非常关注存储的AIOps。国外的存储和系统领域的顶级会议FAST、ATC、SRE、KDD有很多相关文章,清华大学、中科院、华中科技大学等国内科研机构也在故障预测、根因分析、异常检测、自动调优等方面有优秀的科研成果。清华大学在《计算机学会通讯》上发表了“基于机器学习的运维”,系统地阐述了智能运维的关键技术,把AIOps分成针对历史事件、针对当前事件和针对未来事件三类应用场景。历史事件场景中瓶颈分析指的是制约存储或系统服务的硬件或软件瓶颈;当前事件场景主要是根据当前的日志和告警,快速检测、定位异常,并完成故障的根因分析,最终实现快速止损,控制故障的影响范围;未来事件场景中是通过AI技术自动挖掘故障发生前的日志、性能参数指标,找到故障前的可重复的模式,从而在今后出现类似的日志模式时,提前预测故障、性能容量变化趋势以及系统可能的热点瓶颈。
图6:AIOps的关键场景和技术
磁盘故障预测和性能容量预测给存储管理做“减法”
根据图3 IDC的用户调查来看,针对未来事件的预测分析是存储用户重点关注的五大功能之一。存储本身很复杂,数据中心环境和用户应用也很复杂,预测性分析技术是准确预测存储风险和故障、解决存储的复杂性的重要一部分。预测性分析技术是通过分析历史的日志、告警、报错等信息,AI算法可以自动分析出问题出现前的频繁出现的数据模式,之后在从正常存储系统上匹配这些AI学习到模式就能形成预测。对于一个复杂的存储系统来说,用户关注最多的是硬盘、性能和容量的预测分析,磁盘故障预测和性能容量预测则成为两大关键功能。
为什么关注硬盘故障预测?公开数据显示百度数据中心4年29万次硬件故障中,硬盘故障占比高达81.84%。对于传统的存储厂商来说,虽然磁盘的绝对故障率不高,但是在所有的存储部件中,如CPU、内存、主板、网卡、HBA卡、电源等,磁盘的故障率是最高的。虽然传统存储有RAID、副本等机制,但是数据重建过程中使用了大量IO资源,这导致存储性能严重下降,而且重建时间很长往往以天计。因此,数据重建对用户的业务影响很大。如果我们可以提前预测磁盘故障,用户可以选择业务不繁忙的时间来重建数据,那么重建带来的影响可以忽略不计。同时,预测可以把突发事件变为计划事件,也降低了存储的维护成本。
为什么关注容量性能预测?除故障外,用户在日常使用存储的过程中关注最多的就是容量和性能。系统容量不足会导致系统不可用,用户业务中断。性能指标主要指时延、带宽、IOPS,随着用户业务的发展,给存储带来的性能压力越来越大,性能不足会让用户的应用变慢甚至无响应。利用AI技术,对存储的性能、容量变化趋势进行准确预测,一方面可以告知用户进行扩容、软硬件升级的时间点,另一方面也能提供存储规划的具体参考指标。
浪潮存储智能管理平台的磁盘故障预测技术
图7:浪潮磁盘故障预测系统整体架构
同典型的AI系统一样,浪潮智能管理平台先对历史数据进行训练,生成AI模型,最后在新的数据到来时形成预测。具体说包括以下五个部分:输入数据、预处理、模型训练、优化集成和预测。对于软件系统来说关键点有:数据来源、算法选择和评估指标。
其一,数据来源
硬盘本身提供了SMART数据(Self-Monitoring Analysis and Reporting Technology)。SMART是90年代定义的硬盘状态检测和预警系统的规范,提供了磁头、磁盘、电机、电路等硬盘硬件的运行数据。目前几乎所有的硬盘厂商都已经支持了该规范。下表列出了与故障相关的SMART值。
表1:故障相关的SMART值
浪潮存储智能管理平台基于SMART数据进行磁盘故障预测,且都取得了不错的效果。在2020年2月的存储顶会FAST(USENIX Conference on File and Storage Technologies)上发表的最新论文表明,SMART再加上存储性能数据可以进一步提升预测准确率。作者采用了12个磁盘IO性能指标、18个服务器性能指标、4个位置信息,基于CNN和LSTM的AI算法实现了提前10天故障预测误报率0.5%、漏报率5.1%。我们也将着手在浪潮存储平台上能应用最新的技术来进一步提高预测的准确性。
其二,算法选择
可用于磁盘故障预测的AI算法有很多,如传统算法决策树、经典的SVM(Support Vector Machine)、在各种竞赛上大放异彩的XGBoost(Gradient Tree Boosting)以及深度学习算法CNN和LSTM。实际效果及顶级会议KDD、ATC、FAST的论文实验结果都表明,XGBoost、CNN、LSTM的效果比传统算法有明显优势。
其三,评价指标
在完成了历史数据训练,故障预测之后,我们需要对预测的效果进行评估。表2描述了机器学习中标准的评价指标。
表2:机器学习模型评价指标
基于表2中的定义,评价磁盘故障预测的主要有准确率、漏报率和误报率:
准确率=:判定正确的盘(含好盘和坏盘)占所有盘的比例
误报率=:好盘被误判成坏盘占所有好盘的比例
漏报率=:没有识别出的坏盘占所有坏盘的比例
准确率高,误报和漏报低,是浪潮存储追求的目标。这相当于我们在发现几乎所有坏盘的同时,没有把好盘误判成坏盘。但是从算法调优的角度看,误报率和漏报率是一对矛盾,误报率的降低会引起漏率报的上升,漏报率的降低会引起误报率的上升。
浪潮存储智能管理平台的性能容量预测技术
对于存储来说,性能和容量预测是两件不同的事情,都为用户带来不同的价值。但是站在技术角度,两者都属于数据挖掘中时间序列预测问题(Time Series Prediction)。时间序列,也叫时间数列、历史复数或动态数列。它是将某种统计指标的数值,按时间先后顺序排到所形成的数列。预测的基本原理是:统计分析过去的时间序列数据,形成拟合函数或者AI算法模型,以拟合的函数结果或模型来预测未来的趋势。
时间序列预测法可用于短期、中期和长期预测。造成时间序列数据发生变化的因素主要有以下四个:
1) 趋势性:时间序列曲线呈现出一种缓慢而长期的持续上升、下降、不变的整体趋势。
2) 周期性:由于外部的影响,随季节的交替,时间序列曲线有明显的周期性的高峰、低谷。
3) 随机性:个别的数据变化为随机变动,但整体呈现出统计规律。
4) 综合性:以上几种变化因素的叠加或组合。预测时可以过滤除去不规则的随机因素,最终展现出趋势性和周期性变动。
经典的时间序列预测算法有ARIMA、线性回归、深度学习算法等。这些算法有各自的优劣势,产品会根据不同的用户应用场景来选择不同的算法。图8展示了各个算法的实际效果。
图8:时间序列算法效果比较
对于存储来说,除核心算法外,存储还有自身的容量和性能指标。表3列出了浪潮存储智能管理平台支持的未来1天、7天、30天、90天的3个容量趋势指标,15个性能趋势指标。
表3:性能容量预测指标
存储产业界中,作为新数据时代“新存储”引领者,浪潮存储基于InView智能管理平台,提供了预测性分析、端到端的故障定位、性能洞察等一系列的智能化功能,帮助用户分析复杂应用环境下从虚拟机到后端存储端到端的性能瓶颈,确定影响性能瓶颈的主要因素,并最终给出可行的优化或解决问题的建议。其中磁盘故障预测、性能容量预测的智能化功能,可以帮助用户预防硬件故障带来的损失,并给出具体的扩容建议,为用户提供更稳定、高性能、智能化的存储服务,使存储服务能更好地适应用户需求,同时降低存储的复杂性和维护成本。