Article / 文章中心

使用ML预测磁盘故障、智能诊断部署,MSRA在云端将AIOps玩出高度

发布时间:2022-01-24 点击数:183

 运维是一家公司正常运行的重要组成部分。为了保证在线体系的服务质量和用户体会,公司运维部分需求实时监控体系运行状况,以便对反常及时进行分析和处理。传统的人工运维办法耗时耗力,之后呈现了使用很多自动化脚本的自动化运维办法,但跟着体系规模日益增长,海量用户、大规模集群、杂乱的体系架构自动化运维渐渐无能为力。

如何实时检测反常、快速响应毛病、猜测毛病、合理规划容量等成为了重要研讨课题。大数据和 AI 时代的到来使公司运维迈入了智能化阶段,智能运维(AIOps)应运而生。

AIOps  是「Artifical Intelligence for IT Operations」的缩写,由 Gartner 在 2016  年提出。据其解说,AIOps 有两个主要组成部分,别离是大数据和机器学习。AIOps  需求远离数据孤岛,在大数据渠道中将观测数据(如在监控体系和作业日志中发现的数据)和互动数据(如在突发事件和记载中发现的数据)聚合起来。然后,对组合  IT 数据履行全面分析和机器学习战略。终究取得自动化驱动的洞察力,这些洞察力能够完成运维渠道持续的修复和改进。

image.png

图源:Gartner

伴跟着各行业数字化转型的趋势以及近年来新冠疫情带来的长途作业、协同协作需求,云核算进一步蓬勃发展。Gartner  研讨副总裁 Sid Nag 以为云现已成为干流战略,「下一代的产品方案,几乎都是搭建于云渠道上的。」越来越多的使用服务转向了云端,5G  也为云核算的发展注入了新的生机。可是,跟着越来越多的用户上云,体系办理正面对着前所未有的应战。

AIOps 与云服务的交融

在 1 月 13 日的微软亚洲研讨院「智能运维」媒体交流会,微软亚洲研讨院副院长、微软杰出首席科学家张冬梅以为,AIOps 应经过立异的 AI 或 ML 技能,有用且高效地规划、构建并运营大规模的杂乱云服务。

image.png

张冬梅。图源:msra

其间,AIOps 又可分为不同的服务对象以及不同的服务方针:

AI for System(服务 / 体系):规划和构建更可靠、更高功能和更高功率的高质量服务;

AI for DevOps(开发 / 运维):使用智能工具为工程人员赋能,在 DevOps 中完成高生产力;

AI for Customer(客户):经过智能化和更好的用户体会,改进客户满意度。

下图为 AIOps 别离针对服务 / 体系、开发 / 运维和客户的使用场景:

image.png

从使用场景能够看出,AIOps 的研讨主要聚焦于检测、确诊、猜测和优化四个范畴,每个范畴包括的运维使命不同,又各自面对不同的应战。咱们以检测为例,包含了时刻序列的反常检测、根据日志的反常检测以及多维度变化检测等使命,但检测过程中面对着差异化需求、噪音数据、高纬度以及标示数据缺少等应战。

image.png

一直以来,微软亚洲研讨院致力于探索  AIOps 范畴的研讨边界。10 年前,率先开发云智能以及 AIOps  相关范畴的研讨,在该范畴提出了全新的办法与规划,如自动体系规划(Proactive System  Design)、数据驱动型安全布置(Data-driven Safe Deployment),并在  ICSE/FSE(软件工程范畴)、OSDI/NSDI(核算机网络体系范畴)以及  AAAI/IJCAI(人工智能范畴)等全球高影响力学术会议上发表论文 50 多篇。

其间,与天津大学智能与核算学部软件工程团队、纽斯卡尔大学等协作完成的论文《  How Long Will it Take to Mitigate this Incident for Online Service  Systems? 》更是取得了 ISSRE 2021 唯一最佳论文奖。


实践中的 AIOps 技能

利用大规模数据发掘、机器学习和人工智能技能,微软亚洲研讨院开发了一系列 AIOps 立异技能,并现已在云体系的毛病猜测、反常检测、智能确诊、容量规划、事端办理等许多实际使用场景中落地,极大地提升了工业生产力、服务质量和用户体会和。研讨成果现已使用到了微软 Skype、OneDrive、Office 365、Azure 等许多在线服务中。

微软亚洲研讨院首席研讨员林庆维以磁盘毛病猜测、安全布置确诊和智能虚拟机预装备(PPS)为例展示了 AIOps 在软硬件毛病猜测、智能确诊和智能化建议 / 提示等三个使用场景中的落地及完成作用。

首先,硬盘毛病猜测。在毛病产生之前,提前猜测以防止可能的损失是智能服务的杀手锏。咱们知道,硬件毛病是形成虚拟机(VM)宕机和重启的最主要原因之一,而磁盘毛病又是形成硬件毛病的主要原因。在磁盘完全失效前,虚拟机就会遭到影响,并且磁盘数据存储散布极点失衡,磁盘健康状态也会遭到邻近磁盘的影响,

针对这些特征,微软亚研在论文《NTAM:  Neighborhood-Temporal Attention Model for Disk Failure Prediction in  Cloud Platforms》中提出了邻域 - 时刻注意力模型(Neighborhood-Temporal Attention Model,  NTAM),这是一种根据深度学习的全新磁盘毛病猜测办法。此外,本文还提出了时刻渐进采样法(Temporal Progressive  Sampling, TPS),一种用于处理极点数据失衡的数据增强办法。

论文地址:https://dl.acm.org/doi/10.1145/3442381.3449867

下图为  NTAM 模型概览。微软亚研在公共数据集以及从微软 Azure 中收集数百万个磁盘创立的两个工业数据集上对该模型进行了评估。结果表明,NTAM  显著优于其他 SOTA 模型。更值得重视的是,NTAM 和 TPS 办法现已使用到了微软 Azure 和微软 365  等云渠道中,并在工业实践中取得收益。

image.png

其次,安全布置确诊。不规范、不安全布置会可能会引发灾难事端,因而针对布置的反常检测(Anomaly Detection)非常重要。微软亚研采用的办法如下图所示:

image.png

其间,在检测反常过程中,微软亚研在论文《Cross-dataset  Time Series Anomaly Detection for Cloud Systems》中提出了自动迁移学习反常检测(Active  Transfer Anomaly Detection,  ATAD),它集成了迁移学习和自动学习技能。迁移学习用于将知识从源数据集迁移至方针数据集,自动学习用于确认未标示数据集中一小部分样本的信息标签。

论文地址:https://www.usenix.org/conference/atc19/presentation/zhang-xu

ATAD 概览如下。微软亚研经过实验证明了 ATAD 在跨数据集时刻序列反常检测中的有用性,只需求少于 0.1% 的人工标示即可完成杰出的准确率。

image.png

最后,智能虚拟机预装备。作为最常见的核心操作,虚拟机装备对用户体会产生直接影响。装备功能不良会形成长时刻等候导致客户不满意,并且难以处理大客户的批量恳求,形成巨大经济损失。微软  Azure 中的预装备服务(Pre-Provisioning Service, PPS)经过创立预装备的虚拟机提升了 VM  布置的功能,带来了可靠性和延迟收益。

image.png

不过,仍然面对一些应战,比如可猜测的  VM 需求量少,存在很多的 VM 类型和差异化 VM  需求形式。此外,猜测不确认不可防止,难以归入优化体系中。决议计划变量和约束条件是离散,且离散域的优化是 NP -  难问题。对此,微软亚研提出了全新的办法结构,将不确认性感知结构用于猜测与优化。结果表明,微软亚研提出的办法完成了相较于其他竞品更优的体现。

image.png

未来,微软亚洲研讨院将致力于「更自动化、更自动化和更通用化」的智能运维,更高效地赋能于运维人员、开发者和客户。