基于AIOps的IT自动化运维应用与研究

发表时间:2021/3/19   来源:《当代电力文化》2020年27期   作者:    买加
[导读] AIOps(Artificial Intelligence for IT Operations)已逐渐被证明对于提升运维质量、降低运维成本和提高运维效能方面有着明显改进作用,被认为是IT自动化运维的“终极”解决方案。
        买加
        中电投电力工程有限公司(上海市)200233
         
        摘 要:AIOps(Artificial Intelligence for IT Operations)已逐渐被证明对于提升运维质量、降低运维成本和提高运维效能方面有着明显改进作用,被认为是IT自动化运维的“终极”解决方案。但是对于大多数企业来说,从传统的运维模式演进成AIOps仍然是一个巨大挑战。本文分析了IT自动化运维的典型应用场景,着重介绍了典型的AIOps需要具备的五种能力,即感知能力、检测能力、定位能力、业务能力和交互能力。本文提出的AIOps系统采用了模块间互操作服务的分层设计,使其能够很好地兼容传统的异构系统,不仅实现了与一些关键技术的融合,包括数据类别,数据库集群,服务网关和操作安全,而且已部署在一个复杂的大型IT环境中,有数百个设备节点。测量结果表明,在类似服务器“PING”故障等模糊诊断信息情况下,AIOps系统的故障自愈率可超过80%。
         
关键词:AIOps;IT运维;自动化运维;AIOps系统
         
一.IT自动化运维概述
        当今IT运维环境比以往任何时候都更加复杂,现代IT系统能在短时间内产生的海量数据和数亿级的告警信息,如何去管理这些数据以及发现其中的故障隐患,对于IT运维团队来说是一项巨大的考验和挑战。
        AIOps已被证明对于提升运维质量、降低运维成本和提高运维效能方面有着明显改进作用。IT 运维部门可以削减约70%的人员数量,大大减少人工成本的开支。AIOps预计将是 IT 自动化运维领域的“终极”解决方案,随着近年来人工智能技术应用的日益普及,无论是互联网公司还是中小企业都在探索建立自有的基于人工智能的IT自动化运维管理系统或平台。
二.IT自动化运维中的AIOps应用分析
        例如系统开发,已经从交付盒装产品转变为发布服务产品(包括在线服务和应用程序)。服务的构建和发布方式均不同于传统的盒装产品,是一种促进服务持续开发和发布的方法,已被广泛采用,但随着云计算技术的推广,服务的规模和复杂性急剧增加,系统开发和服务人员在使用系统开发所带来的高效构建运行服务同时,也面临着巨大的挑战。因此这就突显了IT运维服务的重要性。
三.IT自动化运维中的AIOps应用研究
        在本节中将重点介绍一个典型的IT运维人工智能系统需要具备的五种能力,即感知、检测、定位、业务和交互。基于这些能力提出了AIOps系统设计,包括分层设计和互操作性。
        3.1 分层架构设计
        第一层是感知层:感知的能力直接与IT系统底层或基础环境相互作用,因此可以被列为单独的一层,对于感知收集海量的数据,需要有存储和计算的能力,一般来说大数据解决方案是这一层的不错选择。
        第二层是检测/定位层:检测和定位能力依赖于各种算法、模型和经验,可以在许多业务场景中共享,因此将这两种能力合并到一个层次。
        第三层是业务/交互层:业务和场景基于算法和模型,支持大量 IT应用,如故障自愈、硬盘故障预测、容量规划、问答系统等,由于业务和场景需要与人交互,为了使这种交互更加智能和方便,还需要定义这样一个层级。
        3.2互操作性
        3.2 实施策略
        为了加快建设与部署,采取以下原则: 一是优先选择,选择业务场景层中急需运维的应用程序,并优先构建这些应用程序所依赖的模块。二是避免重建,如果现有系统的功能满足需要,更倾向于修改它们的接口使之兼容而不是重新构建它们,因为这可能会浪费很多时间,而且收效甚微。

在AIOps系统的实施过程中,重点考虑了数据类别、数据库集群、服务网关和操作安全等关键技术的融合问题。
        对于一个主流的IT系统运维,从感知层收集的数据包括以下几类:
        1.度量--数值数据随时间变化,例如 CPU 利用率、内存利用率和网络流量。
        2.日志--各种硬件设备、操作系统、中间件和应用程序生成的非结构化文本数据。
        3.逻辑关系--描述模块之间或模块内部函数之间的调用关系,有助于应用程序的故障定位。
        4.配置数据库--CMDB,如设备信息、业务配置等结构化数据。
        5.业务流数据--业务管理系统生成的数据。
        6.多媒体数据--通常是非结构化和非文本的,如图片、音频、视频等。
        在标准服务体系结构下,通常有一个服务网关作为所有服务的入口。服务网关可以实现负载平衡、故障转移、统一权限控制以及服务统计和评估。一开始的设计也采用了网关模式,但最终放弃了这一设计,原因是:一、服务网关在高性能网络通信中存在瓶颈;二、服务网关增加了故障点;三、服务网关不能实现业务的细粒度权限控制,如控制每个数据的可见性;四、由于系统使用多个框架,例如 Python 和 Java Spring Cloud,因此不能保证统一网关的兼容性。作为替代方案,AIOps系统采用了DNS和其他机制来实现负载平衡,而服务统计则由系统本身完成。
        感知、检测、定位和交互通常不会影响到系统本身,但是一些行动指令却会,虽然支持更多的自动化指令是AIOps自动化运维的研究方向,但是行动指令应该在安全的前提下进行。在服务体系结构下,业务场景中的大量应用程序将同时调用指令,因此需要一个完整的机制来保证安全性。这里主要设计了两个方面的安全机制:
        1.权限--像许多系统一样,我们对指令的调用有严格的权限控制。
        2.运营审批--分为单点审批和全局审批。单点批准是指向单个对象的指令的有效性,例如连续重新启动设备(注意,指令可能由互不兼容的多个应用程序发出)。全局审批是指对所有的指令进行评估,比如一天内是否有太多的设备重启操作发出。
四.IT自动化运维中的AIOps初步成果
        在上述方案设计的基础上,我们将AIOps系统部署在一个大型的IT系统运维环境中,并取得了一些初步的成果,下面将重点故障自愈率指标。
        故障自愈率是指故障自动恢复的比例,不需要任何人为干预。换句话说,故障是自动检测,定位和恢复。由于AIOps的最终目标之一是减少手动操作,故障自愈率是 AIOps系统的一个关键指标。与此同时也评估了系统性能指标存储容量和服务响应延迟,这两项指标均与读写速率相关。最大写速率是指每秒写入指标的最大数量,最大查询速率是指随机指标每秒支持查询的最大数量。
五.研究展望
        AIOps系统采用了模块间互操作服务的分层设计,使其能够很好地兼容传统的异构系统,通过部署在一个复杂的大型IT环境中,将类似服务器“PING”故障等模糊诊断信息的故障场景自愈率超过80%。相信随着人工智能技术的进一步发展与成熟,通过对网络连接与集群数据等关键节点的优化措施,基于AIOps的IT自动化运维系统将更加成熟,更加广泛地应用于各个场景的IT运维中,为企业带来更大的收益。

参考文献:
[1]谢军,李世冲,温明媚,孟震,朱祥磊. IT系统运维能力成熟度评估模型研究和实践[J]. 电信工程技术与标准化,2021,34(01):42-47.
[2]王新东,王一大,庞国际,宋希堂,陆丽丽. 智能运维(AIOps)在中国联通分布式架构下的研究与应用[J]. 电信工程技术与标准化,2021,34(01):48-54.
[3]薛龙,陆钢,周奇,张会炎,万亭君. 面向云原生的智能运维架构和关键技术[J]. 电信科学,2020,36(12):105-112.
[4]黄莽,张燕,彭鹏. 基于AIOps的VoLTE质量管理解决方案[J]. 电信快报,2018,(06):36-39.
投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: