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

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

依托 ML/AI 技术,提升云服务,这是微软亚洲研究院在智能运维领域的探索之路。


运维是一家公司正常运行的重要组成部分。为了保证在线系统的服务质量和用户体验,公司运维部门需要实时监控系统运行状况,以便对异常及时进行分析和处理。传统的人工运维方式耗时耗力,之后出现了使用大量自动化脚本的自动化运维方式,但随着系统规模日益增长,海量用户、大规模集群、复杂的系统架构自动化运维渐渐力不从心。


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

AIOps 是「Artifical Intelligence for IT Operations」的缩写,由 Gartner 在 2016 年提出。据其解释,AIOps 有两个主要组成部分,分别是大数据和机器学习。AIOps 需要远离数据孤岛,在大数据平台中将观测数据(如在监控系统和工作日志中发现的数据)和互动数据(如在突发事件和记录中发现的数据)聚合起来。然后,对组合 IT 数据执行全面分析和机器学习策略。最终获得自动化驱动的洞察力,这些洞察力可以实现运维平台持续的修复和改进。

图源:Gartner

伴随着各行业数字化转型的趋势以及近年来新冠疫情带来的远程工作、协同合作需求,云计算进一步蓬勃发展。Gartner 研究副总裁 Sid Nag 认为云已经成为主流策略,「下一代的产品方案,几乎都是搭建于云平台上的。」越来越多的应用服务转向了云端,5G 也为云计算的发展注入了新的活力。但是,随着越来越多的用户上云,系统管理正面临着前所未有的挑战。

AIOps 与云服务的融合

在 1 月 13 日的微软亚洲研究院「智能运维」媒体沟通会,微软亚洲研究院副院长、微软杰出首席科学家张冬梅认为,AIOps 应通过创新的 AI 或 ML 技术,有效且高效地设计、构建并运营大规模的复杂云服务

张冬梅。图源:msra

其中,AIOps 又可分为不同的服务对象以及不同的服务目标:

  • AI for System(服务 / 系统):设计和构建更可靠、更高性能和更高效率的高质量服务;
  • AI for DevOps(开发 / 运维):使用智能工具为工程人员赋能,在 DevOps 中实现高生产力;
  • AI for Customer(客户):通过智能化和更好的用户体验,改善客户满意度。


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


从应用场景可以看出,AIOps 的研究主要聚焦于检测、诊断、预测和优化四个领域,每个领域涵盖的运维任务不同,又各自面临不同的挑战。我们以检测为例,包含了时间序列的异常检测、基于日志的异常检测以及多维度变化检测等任务,但检测过程中面临着差异化需求、噪音数据、高纬度以及标注数据缺乏等挑战。


一直以来,微软亚洲研究院致力于探索 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 等云平台中,并在工业实践中获得收益。

其次,安全部署诊断。不规范、不安全部署会可能会引发灾难事故,因此针对部署的异常检测(Anomaly Detection)非常重要。微软亚研采用的方法如下图所示:


其中,在检测异常过程中,微软亚研在论文《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% 的人工标注即可实现良好的准确率。


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


不过,依然面临一些挑战,比如可预测的 VM 需求量少,存在大量的 VM 类型和差异化 VM 需求模式。此外,预测不确定不可避免,难以纳入优化体系中。决策变量和约束条件是离散,且离散域的优化是 NP - 难问题。对此,微软亚研提出了全新的方法框架,将不确定性感知框架用于预测与优化。结果表明,微软亚研提出的方法实现了相较于其他竞品更优的表现。


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

参考链接:https://www.bmc.com/blogs/what-is-aiops/封面图源:bagotaj

相关文章
|
5天前
|
机器学习/深度学习 运维 资源调度
智能化运维:机器学习在故障预测中的应用
【6月更文挑战第26天】本文旨在探讨机器学习技术如何革新传统的IT运维模式,特别是在故障预测领域的应用。文章将介绍机器学习的基本原理,分析其在故障预测中的优势,并通过案例研究展示机器学习模型如何提高运维效率和减少系统停机时间。最后,我们将讨论实施智能化运维时可能遇到的挑战及相应的解决策略。
|
16天前
|
机器学习/深度学习 人工智能 运维
智能化运维:AI在故障预测与自动化修复中的应用
【6月更文挑战第15天】本文探讨了人工智能(AI)技术在现代IT运维领域的革新性应用,重点分析了AI如何通过机器学习算法实现对系统故障的预测和自动化修复。文章首先概述了智能化运维的概念及其重要性,随后详细介绍了AI技术在故障检测、诊断和修复过程中的关键作用,并通过实际案例展示了AI运维解决方案的有效性。最后,文章讨论了实施智能化运维的挑战与未来发展趋势。
48 3
|
18天前
|
机器学习/深度学习 人工智能 运维
智能化运维:AI在故障预测与自愈系统中的应用
【6月更文挑战第13天】本文探讨了人工智能技术在现代IT运维领域的应用,着重分析了AI如何通过数据分析和机器学习算法实现故障预测和自动化修复。文章将揭示智能运维系统的工作机制,以及它如何帮助企业减少停机时间,提高服务稳定性,并最终推动业务连续性和增长。
|
23天前
|
机器学习/深度学习 人工智能 运维
智能化运维:AI在故障预测中的应用
【6月更文挑战第8天】随着人工智能技术的飞速发展,其在IT运维领域的应用也日益广泛。本文将探讨AI技术如何助力运维团队实现故障的智能预测,提高系统稳定性和业务连续性。
|
3天前
|
机器学习/深度学习 数据采集 运维
智能运维的崛起:机器学习在故障预测中的应用
随着信息技术的迅猛发展,企业对IT系统的稳定性和可靠性要求日益提高。传统的运维模式已难以满足现代业务需求,智能运维(AIOps)应运而生。本文将深入探讨机器学习技术如何赋能运维领域,特别是在故障预测方面的应用。文章首先概述了智能运维的概念及其重要性,随后详细分析了机器学习在故障预测中的作用机制,包括数据收集、特征工程、模型选择与训练等关键步骤,并结合实际案例展示了机器学习模型的预测效果。最后,讨论了实施智能运维时面临的挑战及应对策略,旨在为读者提供一套完整的智能运维解决方案框架。
11 0
|
4天前
|
机器学习/深度学习 缓存 运维
智能化运维:机器学习在故障预测与自动修复中的应用
随着信息技术的飞速发展,企业系统日益复杂,传统运维模式面临巨大挑战。智能化运维作为一种新兴趋势,通过集成机器学习算法,实现对系统故障的预测和自动修复,显著提高运维效率与准确性。本文深入探讨了智能化运维的概念、关键技术及其在故障预测和自动修复方面的应用实例,旨在为读者提供一种科学严谨、数据导向的视角,理解智能化运维的价值与实践路径。
6 0
|
5天前
|
机器学习/深度学习 运维 监控
智能化运维:机器学习在故障预测与自动化处理中的应用
随着信息技术的迅速发展,智能化运维成为企业提升效率、降低成本的关键手段。本文将探讨机器学习技术在智能化运维领域的应用,特别是故障预测和自动化处理方面。通过分析相关研究数据和案例,本文旨在揭示机器学习如何优化运维流程,提高系统稳定性和可靠性。
8 0
|
2月前
|
机器学习/深度学习 人工智能 运维
智能化运维:基于AI的系统异常检测与自动修复策略
【5月更文挑战第29天】 在现代IT基础设施管理领域,智能化运维正逐步成为推动效率和稳定性的关键因素。本文深入探讨了人工智能(AI)技术在系统异常检测和自动化故障修复中的应用,提出了一个集成的智能运维框架。该框架利用机器学习算法分析历史数据,实时监控关键性能指标,并在检测到潜在问题时触发自动化修复流程。通过这一方法,我们旨在降低人工干预的需求,提高系统的可靠性和业务连续性。
|
2月前
|
机器学习/深度学习 传感器 存储
超越边界,开启大规模数据处理的新纪元
在信息时代的浪潮中,大规模数据处理成为推动科技发展和商业创新的关键。本文将探讨大规模数据处理的重要性,介绍常见的数据处理技术,并展望未来可能出现的趋势和挑战。
|
2月前
|
运维 算法 数据处理