忽如一夜春风来,千树万树梨花开 ——“人工智能+运维”浅析_AI.人工智能讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  AI.人工智能讨论区 »
总帖数
2
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 959 | 回复: 1   主题: 忽如一夜春风来,千树万树梨花开 ——“人工智能+运维”浅析        上一篇   下一篇 
huang.wang
高级会员
等级:少将
经验:13495
发帖:278
精华:0
注册:1970-1-1
状态:离线
发送短消息息给huang.wang 加好友    发送短消息息给huang.wang 发消息
发表于: IP:您无权察看 2017-6-1 9:33:11 | [全部帖] [楼主帖] 楼主

    曾在网络上看过一个运维工程师吐槽的帖子,讲的主要是运维工程师是怎样看待运维工作的,下面是一些点赞数较多的答案——「运维是块砖,哪里需要哪里搬。不出问题你打杂,出了问题你负责」、「先研发之忧而忧,后业务之乐而乐;起早与贪黑齐飞,调休共假期待定,这就是运维」、「运维就像一场永不休止的战争,时而硝烟弥漫,时而安静的可怕;一个人倒下了,后面的人补上来,没有人能看到这场战争结束」、「机器是女朋友,随叫随到,虐我千百遍,还爱的死心塌地」。

    从以上吐槽可以看出,运维并不是一份轻松的工作,大体可以归纳为——事多、事杂、休假少。确实,提起运维工程师,很多人都会把他们和“消防员”联系起来。任何时候,只要系统出现故障无法正常运转,运维人员是第一个被询问的,同时也必须第一时间赶到现场“救火”,由于故障发生的不定期性,下一个问题不知道什么时候会出现,大多数运维人员必须24小时待命,以确保在故障发生后第一时间将其解决修复,其工作的艰苦程度可想而知。


1.webp.jpg

 

    但随着人工智能技术的日渐成熟,各行各业都开始不同程度的将人工智能引入到工作当中,以达到提高工作效率和解放人力的目的,运维工程师们祖传的痛点也将得到一定程度的缓解。下面,就让我们来聊一聊人工智能在运维领域的应用。


    运维领域的现状


    1、运维的定义

    在介绍人工智能在运维领域的应用之前,我们先明确一下运维的定义。

    通常情况下我们所说的运维,指的就是对产品的运营和维护,普遍在硬件设备和网络运行两个方向中应用较多,其核心目标是将交付的业务软件和硬件基础设施高效合理的整合,转换为可持续提供高质量服务的产品,同时最大限度降低服务运行的成本,保障服务运行的安全。


    2、运维的发展历程

    运维发展到现在,大致经历了三个阶段,分别是人工运维——自动化运维——智能运维。


2.webp.jpg

图:运维的发展历程


    人工运维阶段,人均所需要维护的设备量较少,主要靠纯手工来完成日常的运维工作;到了自动化运维阶段,平均每人所需要维护的设备数量以及工作复杂度大大增加,工程师们开始编写一些自动化脚本来简化大量重复的工作,一些监控产品和管理工具也应需被开发出来,最终集成在一个平台上,大大提高了运维工作的效率;而到了数据大爆炸的今天,现有的自动化管理平台处理起来也捉襟见肘,人们的目光开始转向更强大的基于人工智能的运维。


    3、传统企业和互联网企业对智能运维的发展需求 

    运维是各行各业都需要解决的一个问题,但是面对运维的态度,传统行业和互联网企业差别却很大。 

    在技术运维领域,有两个比较明显的现象: 

    首先,过去从事专业技术运维工作的人员大多定位为管理(Administrator),他们对各类产品的技术原理、命令操作、问题诊断、性能调优等都有相当深入的理解和掌握,其中不少骨干还通过了业界比较有影响力的专业认证。但是他们在开发技能方面好像比较欠缺,有些甚至对完成脚本编写这样任务都感到困难。

     其次,传统企业和互联网企业在IT管理体系建设方面的做法也有明显差异。传统企业大都优先强调管理流程的建设,运维自动化建设工作则在其次,很多时候优先级还比不上测试自动化建设;而互联网企业呢,大都优先推进技术运维自动化建设,而后再逐步考虑管理流程体系的建设。

     对于上述两个现象现象的产生,除了有企业文化和管理理念方面的差异之外,还有技术环境的差异以及IT规模和运维人员规模的差异。具体见下表:


3.webp.jpg

图:传统企业与互联网企业的区别


    由此可以看出,虽然智能运维的优点很多,但传统企业对智能运维的发展需求并没有那么迫切,反而对于互联网企业来说,智能运维的应用可以说是迫在眉睫,因而当前人工智能较多的应用在互联网企业的运维当中。


    人工智能在运维领域的应用


    1、构成智能运维的三要素

    人工智能要在运维领域发挥作用,应具备以下三个要素。

4.webp.jpg

图:智能运维的三要素


    (1)数据采集与处理

    数据的采集与处理是智能运维系统的核心,也是智能运维系统的基础设施。

    1)采集对象:主要有三类,基础架构Server端的采集,主要是采集来自数据中心内的动力设备、IT硬件设备、日志、网络信息、容器、虚拟机等的信息;用户端的采集:从CDN、WEB、移动端,还有PC客户端产品的采集;应用端(软件层/服务层)的采集:Web服务器+App服务器的+文件服务器+负载均衡设备的。只有对以上三类对象进行了完整的采集,我们的智能运维系统才是完整的、报警才是没有遗漏的。

    2)采集数据:针对服务端主要是采集性能指标数据:服务器的CPU、内存,磁盘空间、网络消耗、日志等;针对用户端主要采集的是业务数据:流量、错误率、用户访问情况、操作信息、个性化操作记录等;还有一类是容易遗漏的,就是运维本身事件的信息:配置文件和服务器扩(缩)容操作。

    3)数据处理:一般会把原始采集的各类信息转变为时间序列的数据或结构化的数据,便于运维人员进行分析、判断与处理。智能运维系统一般通过三种方式:即物理集群、业务维度和跨单一维度来做聚合计算,如要计算某一网站的点击率,点击率=点击量/展示量,采用跨单一维度计算就很方便。从而为管理人员提供运营分析、使用效果的估算。

    建议运维人员多运用智能运维系统,不仅仅把它要当作是采集数据和报警的工具,还应当提高运维部署和运维的效率;让智能运维系统为运维工程师提供分析问题、解决问题的方法。

    (2)异常自动检测与处理

    传统监控系统对异常的检测手段主要有两种:一是通过设定恒定阈值,比如服务器的CPU使用率=10%就报警;二是同环比。比如PV环比下降>10%就报警,或是产品响应时间同比上涨>20%就报警。传统监控方式的优点是简单、易懂;缺点是需要大量的工程师人力投入,监控配置工作量大、维护成本高,变更发布频繁。很多情况下传统监控方式对阈值的敏感度不够高,解决不了特定的问题。比如:在面对波峰突降与波谷突增、缓慢偏离阈值的设定;不断漂移的阈值范围,传统监控一般不易捕捉到这类变化的状态信息。

5.webp.jpg

图:异常自动检测模块


    智能运维系统内置的异常自动检测模块可以提前对报警的数据进行分类,它采用了一种可判断数据是否具有周期性趋势的分类器来解决数据的周期性问题。如果数据具有很强的周期性特征,它就使用动态阈值设定法即采用动态时间窗口的阈值设定法来解决周期性数据的异常判断;如果数据分析后没有周期性特征,那么它就使用恒定阈值了。全自动的异常检测系统难免会出现误报、漏报等情况,这就要求异常检测模块支持运维工程师的标注与反馈,可同时支持人为调整和系统自动参数学习(机器学习)调整,系统可自动根据工程师的标注或报警量的多少,进行参数训练,把异常检测参数调整到合理的范围。

    异常处理的办法一般有三个:

    1)时间序列数据分析,时间序列分析着重研究数据序列的互相依赖关系,实际上它是对离散指标的随机过程的统计分析。例如,记录了某地区第一个月,第二个月,……,第N个月的降雨量,利用时间序列分析方法,可以对未来各月的雨量进行预报;

    2)没有历史数据怎么办?可采用局部回归方法;能很快速地适应变化,找到突升突降的状态变化;

    3)缓慢偏离的情形:将采集数据的频率延长,然后对比之前的数据,从中找出变化较大的值。

    (3)数据可视化

    运维的本质是数据可视化,数据可视化是辅助问题分析的良方。运维数据的可视化主要为解决以下问题:

    1)快速看到想要的信息;

    2)辅助快速分析问题、解决问题;

    3)运维的本质是数据的可视化。

    要做数据的可视化,首先需要建立数据的关联:产品服务层级的关联关系、服务模块之间的关联关系、运维事件与指标数据关联关系;其次需要建立指标数据与事件之间的关联:同模块数据,部署同机房不同模块的数据,同指标维度的数据;同浏览器的数据;同版本号的数据,一切皆有关联。最后,对“数据立方体”操作切面:先选作一维数据做展示,再对二维以上的数据分析和数据可视化;然后对数据做上卷(向上聚合)和下钻(更细的粒度)处理;最后通过旋转,把维度切换出来。

    数据可视化可以由热力图、事件流图、服务视图等多种方式实现,在具体应用中可以按照需求选择最优的显示方式。


    2、完整的智能运维平台的功能结构

    一个完整的智能化运维平台,要完成对设备的日常维护,至少需要具备以下三方面的功能,分别是事前预警、事中恢复和事后分析。

6.webp.jpg

图:事前预警


    事前预警,智能化运维平台能够对应用及应用依赖的应用服务器、数据库、虚拟化环境、主机及网络等设施进行监控及故障预测,在这些监控资源发生故障之前,运维人员应该能在任意时间、任意地点接收到预警信息,同时智能运维平台也应提前对可能出现的风险做出智能化处理,在无人工干预或最少人工干预下把故障扼杀在摇篮中。

7.webp.jpg

图:事中恢复


    事中恢复,一个智能化运维平台很难覆盖全部监控资源,也很难覆盖全部可能出现的风险,所以故障发生后,智能化运维平台应该能够帮助运维人员快速定位问题,确保在最短的时间内帮助运维人员恢复业务,减少故障所带来的负面影响,这就是智能化运维平台所应具有的事中恢复功能。

8.webp.jpg

图:事后分析


    事后分析,智能化运维平台能够记录故障发生时,故障资源及其相关联资源状态信息,并利用这些信息进行分析、决策,然后将决策结果录入到决策系统当中,为事前预警提供决策支持,避免故障的二次发生。


    3、目前人工智能在运维领域的应用

    人工智能在运维领域尚处于初级发展阶段,目前应用得比较多的是智能化运维平台。

    该平台实质上是对现有的自动化运维平台的一个升级,利用大数据、云计算和现代互联网技术,通过对系统运行状态的实时监控,实现自动化运行状态校验以及安全加固检查,以完成从人工运维向智能运维的转变。在使用过程中,智能化运维平台能实时监测系统的工作情况,一旦侦测到任何异常,会即时发送报警信息,同时通过建模综合分析给出最优的可执行解决方案以供参考。智能化运维平台的使用大大减少了传统模式所需要的人力资源,极大提高了系统的运维效率。

9.webp.jpg


    最近很火的摩拜单车推出的“魔方”系统以及搜狗公司正在打造的“维秘”系统也都不同程度的把人工智能引入了产品的运维当中,使日常管理和维护工作能够高效进行。


    4、面对人工智能的风口企业应该怎么做

    前面提到,就目前来说智能运维还处于发展的初级阶段,各方面都不太成熟,需要通过不断地尝试与试错去进行优化。对于企业来说,应该理性一点,现阶段可以从如下几个方面进行摸索和实验,以达到运维效果的提升:

    (1)改变运维模式,提升事件处置效率。

    改变面向监控事件加ITIL管理流程的传统运维方式,通过大数据分析事件关联、对监控节点进行拓扑分析,建立以态势感知为驱动的新型运维引擎。

    (2) 盘活静态应急预案。

    拿银行业来说,目前绝大多数银行还是静态的预案管理方式,比如按应用系统来制定应急预案,预案和实际的故障场景匹配度不高,又难于维护。可以通过AIOps平台,把预案电子化,依托机器学习针对具体的故障场景做智能推送,并且和自动化调度平台衔接,在出现问题的时候真正发挥作用。

    (3)提升运维人员自服务体验。

    运用运维知识库和规则,对监控事件进行降噪、合并、丰富等处理,提升运维工具的使用友好度,降低一线运维人员的专业技术门槛。智能推送应急预案,并通过不断地对数据样本的学习,提高推送的准确度。从依靠少数技术骨干转变为知识库驱动,进一步降低运维的人员成本和风险。

    (4)让运维经验在行业内流通。

    技术是有相关联的,人工智能和大数据密不可分。智能运维的提升需要大量的样本数据来训练,一个比较好的做法是建立行业运维经验社区,大家都来贡献和互享。对于银行业来说,敏感的业务交易数据要实现流通比较困难,但是抽象化之后的运维经验数据、规则和模型,我认为是可以在银行之间流通的,并且具有巨大的价值和意义。

 

    5、人工智能运维未来的展望

    随着技术的不断提升,我相信人工智能在运维方面的应用也会越来越强大和广泛,立足于未来的智能化运维,应具备如下几个特点:

11.webp.jpg

图:立足于未来的智能运维

 

    (1)能够实现全方位覆盖

    如何应对服务出现故障之前解决故障,让服务的可用性得到提高,那么就需要运维变被动应对为主动预防;在用户端(APP、浏览器等)、云端(机房、服务器、自身服务、第三方服务等)、管道(链路、运营商)等任何维度进行数据采集并进行异常自动检测,无死角地找到问题所在。

    (2)监控系统更加智能

    能分析运用已有数据,并把服务状态、问题影响分析等可视化,通过自动学习并理解故障的趋势和模式,以达到自动发现服务或依赖环境的变更的效果。

    让系统理解故障的趋势或模式,从历史数据上学习帮助人解决问题;自动、发现应用或环境的变更,在故障发生之前就可以处理并解决故障,从而达成产品或服务的超高可用性目标。

    (3)能够远程管理操作

    采用远程巡检的方式,可在短期内对多地数据中心完成巡检工作,以提高效率、减少维护成本。对检查过程中发现的隐患,可尝试通过智能运维平台的故障处理工具进行修复;如需要现场进行处理的,通过服务平台触发问题升级版,并发送短信或者邮件给现场维护人员处理。

    未来的智能监控应该是这样的,运维工程师经过完善的监控部署,实现全方位的异常自动检测覆盖,同时,在系统刚出现故障征兆,有损之前就进行处理并解决,确保产品或服务的高可用性、高稳定性,实现完整的智能化运维解决方案。


    小结


    随着企业信息化技术完善,日益增长的运维人力成本、运维标准的管理诉求、运维服务效率低下、故障发现不及时、处理不到位、事后无诊断在现该阶段运维的通病,人工智能运维未来取代传统运维是必然趋势。 

    在新的趋势下,未来运维人员的工作内容会发生质的改变。人工智能到来之前,运维人员从事的工作是上线人肉操作,但是智能运维到来之后,运维人员可以更多地投入到有价值和创造性的工作中,比如智能运维引擎的研发,比如架构设计、开发以及新技术的评估和引入以更好地支持企业的业务创新等等,以此来帮助企业取得更好的发展。所以人工智运维不是取代,而是运维工作的升级,毕竟强大的不是人工智能,而是开发这些人工智能的人。



该贴被huang.wang编辑于2017-6-1 13:19:44


我超级酷,但是如果你回复我的话我可以不酷那么一小会儿。


——来自logo.png


赞(0)    操作        顶端 
koei123
注册用户
等级:上校
经验:3850
发帖:13
精华:0
注册:2011-7-21
状态:离线
发送短消息息给koei123 加好友    发送短消息息给koei123 发消息
发表于: IP:您无权察看 2018-10-15 18:26:34 | [全部帖] [楼主帖] 2  楼

这个感觉,小编应该可以写得更好~~哈



赞(0)    操作        顶端 
总帖数
2
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论