疫情已经改变了人们生产、生活的方式。协同合作、远程办公、在线教育等场景成为了常态,而这些场景也对基础设施提出了更高的要求。
Gartner 研究副总裁 Sid Nag 认为,云已经成为主流策略:“下一代的产品方案,几乎都是搭建于云平台上的。”但随着越来越多的用户上云,系统的管理正面临着前所未有的挑战。海量用户、大规模集群、复杂的系统架构使传统的运维方式力不从心。如何实时检测异常、快速响应故障、预测故障、合理规划容量等问题已成为重要课题。此时,智能运维AIOps闪亮登场。
AIOps在多方面都直击传统运维的痛点。AI算法承担起分析海量运维数据的重任,能够自动、准确地发现和定位问题,从决策层面提高运营效率,为企业运营和运维工作在成本、质量和效率方面的优化提供了重要支持。根据Gartner的战略规划假设,到2023年,将有40%的DevOps团队将通过用于IT运营(AIOps)平台的AI增强应用程序和基础架构监视工具。
在炙手可热的人工智能领域,数据驱动、AI 赋能的微软云始终以理性而乐观的姿态立足于全球云服务市场。数据为微软云的管理提供了新的维度——数据智能。微软亚洲研究院常务副院长,微软杰出首席科学家张冬梅表示,微软主要从三个方面来定义AIOps: AI for System、AI for Customer、AI for DevOps。AIOps在这些应用场景中面临着诸多挑战。
AIOps的应用:精准预测、高效解决、更好服务
AI for System要求开发者能从运行的系统角度看问题,比如系统异常检测不仅仅是找到问题,最好还可以提前预警。以硬盘故障预测为例,开发者可以通过分析已经发生改变的数据或状态,来预测磁盘是否有故障,系统在学习了大量硬盘的历史数据后,对照目前磁盘的状态,预测将来是否可以及时采取措施。此外,除了发生故障的硬盘,还需要考虑其邻近磁盘的情况。
微软亚洲研究院首席研究员林庆维介绍说,微软亚洲研究院研发了邻域-时间注意力模型(NTAM)。该模型包含了邻域感知组件、时间组件、决策组件,在时间和空间上都能够捕捉更多的信息。林庆维表示,通过与过去 10 年、20 年最前沿的期刊或者会议上的论文方法对比,该模型从精确度和召回率方面都有很好的效果,预测能力很强。
AI for DevOps主要针对的是开发和运维人员的生产效率。在出现问题时,解决问题并不仅仅是快速恢复正常,而是如何通过大量的检测、诊断,来更快、更高效地解决问题本身。相关部署通常从非常小的规模开始,逐步扩大规模,在确认每一步都安全后才能部署到云平台。整个部署过程中需要检测所有的健康信号,包括资质、传感器信号、状态等。当任何一方面出现问题时,开发人员首先会检查是不是某个部署问题导致,同时根据部署做关联性排查。
针对AI for DevOps方面的安全部署诊断问题,微软亚洲研究院提出了主动迁移学习异常检测(ATAD)方案。该方案通过迁移学习把从别的数据上学到的知识转化为目标领域,同时通过主动学习让工程师排出优先级,得到更好的学习效果。目前该方案已经用到了微软云平台中。“这个方案通常很难获得高质量的标签数据,所以需要工程师有非常强的见解才能作出判别。” 林庆维表示。
AI for Customer则要打造更好的用户体验,为客户提供更好的服务。
林庆维以智能虚拟机预配置为例,介绍了微软亚洲研究院在AI for Customer方面所做的部分研究工作。云平台申请虚拟机需要时间,解决这个问题的方案之一就是预先装好软件和系统的配置,当用户有需求时可以直接用。但虚拟机池的容量有限,每种类似的机型不可能配置很多,所以需要预测用户会配置什么类型的虚拟机,以实现最优配置。微软亚洲研究院对此提出全新方法框架,将不确定性感知框架用于预测与优化。结果表明,该方法实现了相较于其他算法更优的表现。
伴随着微软亚洲研究院数据、知识、智能组与微软云产品团队的深度合作,一系列创新技术已经在云系统的故障预测、异常检测、智能诊断、容量规划、事故管理等诸多实际应用场景中落地,相关研究成果也在 ICSE、OSDI、USENIX ATC、WWW、AAAI、KDD 等高影响力会议中发表, 极大地提升了服务质量、用户体验和工业生产力。
AIOps的未来:自主化、主动化、通用化
谈到未来AIOps的研究方向,林庆维表示,首先是更加自动化、自主化。目前AIOps的方向更多的是给用户提供一定的建议和推荐,但是微软亚洲研究院希望在未来,AIOps能够更加自主化,可以自动做决策,帮助用户做出最优的决策,而不需要人工的干预;二是更加主动化,不能等到问题出现了才想起来解决问题,而是把问题遏止在萌芽的状态;三是会更加通用化,跨平台的AIOps应用不仅服务于云平台,而是服务于所有平台。