Gartner定义的AIOps平台拥有11项能力,这些能力算是对智能化运维的概念描述:
包括历史数据管理(Historical data management)
流数据管理(Streaming data management)
日志数据提取(Log data ingestion)
网络数据提取(Wire data ingestion)
算法数据提取(Metric data ingestion)、文本和NLP文档提取(Document text ingestion)
自动化模型的发现和预测(Automated pattern discovery and prediction)
异常检测(Anomaly detection)
根因分析(Root cause determination)
按需交付(On-premises delivery)和软件服务交付(Software as a service)等。
智能化运维(Alops)概念:
Gartner在2016年时便提出了AIOps的概念,AIOps即人工智能与运维的结合,并预测到2020年,AIOps 的采用率将会达到 50%。
简单来说,AIOps 就是基于已有的运维数据(日志、监控信息、应用信息等)并通过机器学习的方式来进一步解决自动化运维没办法解决的问题。
软件的一些“算法逻辑”不代表真正的AIOps,判断是否是真正AIOps的关键点在于:是否能自动从数据学习中总结规律,并利用规律对当前的环境给予决策建议。
总结一下就是:
2. 智能运维需要与监控、服务台、自动化系统联动,智能运维需要从各个监控系统中抽取数据、面向用户提供服务、并有执行智能运维产生决策模型的自动化系统。
AIOps的应用:
通过对运维数据的计算和分析支持智能监控、智能的故障分析和处理,智能IT知识图谱等。
AIOps的价值:
传统运维面对海量的运维数据,要快速止损和进行决策,人工专家的分析判断往往需要花费数小时或更大。
而AIOps在于通过机器学习来进行运维数据的挖掘,能帮助人甚至代替人进行更有效和快速的决策。
智能运维在企业的落地,能够提升业务系统的SLA,提升用户的体验,减小故障处理的时间等,带来业务的价值;并最终实现真正意义上的无人值守运维。
AIOps应用领域:
目前各大传统客户围绕AIOps的探讨和建设主要是如下内容:
发现问题:基于机器学习的异常检测;
例如,目前监控数据的异常阈值往往是静态的,无法有效规避变更时间、特殊节假日、业务正常的高低峰等,简单阈值、同环比算法的覆盖面有限,很容易漏警和误警。
基于历史数据或进行样本标记的KPI异常检测,能第一时间发现问题,检测模型能覆盖大多数曲线类型,能较好适应业务生命周期中的变化。
根因分析:基于机器学习的故障树挖掘,定位故障发生的根源以及其原因;例如,首先实现故障精准定位,在多指标情况下的业务异常(多指标检测的异常),出现异常的原因具体是哪个指标导致的;然后根据故障树挖掘和知识图谱,实现故障的精准根因分析与定位。
预测未来:基于机器学习模型的指标预测;例如,基于多种回归和统计方法,实现对不同级别粒度的业务数据的预测,包括业务指标预测、容量预测等,如双11业务对组件容量和资源容量的容量预测等。
IT辅助决策支持:深入运营场景,实现业务运营的IT辅助决策应用;如营收预测、舆情分析与预测等场景。
算法层面则可以跟学术界进行合作或在社区中获取,在早期训练数据集和反馈数据量比较少的情况下,采用无监督学习,具体实现是用模式识别(pattern recognition)的技术来判断指标是否关联。关联性是通过时间序列曲线相似度(similarity distance)来衡量的。
机器学习算法库提供计算时间序列曲线相似度的各种算法,比如:欧几里德距离(Euclidean Distance)、曼哈顿距离(Manhattan Distance)、明科斯基距离(Minkowski Distance)等。
在有足够数据集以后,算法演化成有:监督学习、随机森林(Random Forrest)、GBDT(Gradient Boosted Decision Tree) 、神经网络(Neutal Network)等。
AIOps对基础设施的要求:
AIOps从技术层面来讲,需要数据、算法模型两个最为核心的要素,数据的支撑需要一套整体的运维大数据体系,而算法模型的支撑则需要一套整体的挖掘框架体系,以及执行决策的自动化系统。
运维大数据:
需要有集成多类数据源、一站式低门槛的数据开发、统一的多样化数据存储和查询等功能。
数据挖掘:
全流程、可视化数据建模,支持多种机器学习框架、交互式建模IDE、可视化样本标记等功能。
自动化系统:
需要集成企业CMDB、作业执行、编排引擎、自定义场景等功能。更为核心的是这些功能模块之间应该有效交互,不能仅仅是独立的各个模块,需要有一套平台架构来去支撑各个个性化的场景,尤其是打破数据烟囱、功能烟囱,这样才能实现有效的智能运维生命周期落地:
数据采集→数据建模→机器学习挖掘→自动化执行→反馈
AIOps落地前提条件探索:
从整体上来讲,AIOps的引入和使用需要具备一定的条件,但并不需要企业把所有东西准备好才能动工。
例如很多企业觉得应该准备好数据完整性和人才才能开始应用AIOps,但是,数据的完整性取决于探索之后才知道怎样的数据才是完整的;AIOps人才更为关键的在于了解智能运维场景;算法也只有根据实际情况不断调优才能有更好的应用效果。
只要有痛点,和通过智能运维带来价值,AIOps就可以先引入,并逐步带动企业智能化运维的发展。
总结来讲,AIOps落地的前提条件应该分为三个方面:
但是三个条件都不是指必须完全准备好才能开始实践:
基础设施平台:
可以从自动化能力,以及数据一体化能力进行起步建设,而不是一开始就建设一套于运维人员简单易用的模型设计框架;
算法:
目前已经有很多运维领域通用的算法,可以采用跟学术界、社区以及腾讯这些有实际落地经验的算法提供方进行合作,算法引入后需要不断调试优化才能有一个更为准确的百分比;企业也可以自建算法人才,但是算法本身属于科学领域,于企业而言,可以从性价比上综合来考虑;
人员组织:
人员组织的准备,更为关注的应该是跨技术领域的综合性运维人才,他们更懂运维场景,以及智能运维能实际解决哪些问题点,不能为了智能而智能。
智能化运维就是AIops,它依仗的是智能算法,是基于大数据之上的,和大家常说的自动化运维其实可以说是两个概念!
从发展路线来说应该是:人工运维–自动化运维–智能化运维!
自动化运维,说简单点就是把那些传统上需要人来手工进行的操作自动化,主要是通过脚本实现。但其实还是人为判断故障原因,手动执行故障恢复脚本,或特定场景化的一系列自动化动作。这种自动化运维依赖人的策略和经验,人占主导地位,而系统只是代替人去具体执行。
而智能化运维则是人工智能占主导地位,AI托管了运维的全流程。运维的流程可以分成两部分,发现问题和处理问题。
监控工具触发的告警或事件信息发送至智能运维平台来处理,智能运维平台利用压缩策略、AI算法、知识图谱等手段对告警及事件进行处理,最终确定引发故障的根因告警问题。
人工智能将此问题再推至自动化恢复工具,触发特定场景下编排的脚本,自动将故障进行恢复,反馈恢复结果,通知运维人员,最终在事后可对故障进行复盘及知识入库,达成自动化运维的完成闭环。好的智能运维能真正的实现“咖啡运维”:喝着咖啡做运维,翘着二郎腿就把运维工作做好。
这种aiops运维平台,是目前的一个趋势,但它依仗的智能算法,是基于大数据之上的,结合自己的运维的框架、策略,才能有一个好的效果。
智能运维提升了IT 系统的运维管理效率,降低运维管理难度,最大的问题是需要像人脑一样分析复杂的业务,然后判断故障原因,过去的技术无法替代人力,而且现在AI技术已经非常成熟了,AIOps 成了解决这些问题的最佳方案。
我们公司在运维行业10年多,积累了大量的经验,也推出了睿象云智能运维平台,把ai和运维大数据结合,搭建了更加智能、全面的跨云监控和事件管理平台。以我们的智能告警系统为例,支持包括Zabbix、Nagios等100+ 种工具告警接入汇集,人工智能降噪,告警分派必达,还有告警分析,大大提高效率,解放运维人!感兴趣的话,可以点击下方链接体验~
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/215842.html