智能运维——《应用智能运维实践(试读版)》

本文涉及的产品
云拨测,每月3000次拨测额度
简介: 智能化是未来企业IT运维的主要趋势。本章综述了通过算法替代人工发现、定位、处理风险,为IT运维提供决策支持的相关技术和产品的演进脉络,介绍了IT运维分析、事件关联分析、自动化运维、人工智能运维和开发运维一体化几个具有普遍认知的相关理念的发展历史及实际应用价值,总结了智能运维技术和产品的发展对企业应用运维管理的推动作用。

点击免费下载《应用智能运维实践(试读版)》https://developer.aliyun.com/topic/download?id=1193


本章内容简介


智能化是未来企业IT运维的主要趋势。本章综述了通过算法替代人工发现、定位、处理风险,为IT运维提供决策支持的相关技术和产品的演进脉络,介绍了IT运维分析、事件关联分析、自动化运维、人工智能运维和开发运维一体化几个具有普遍认知的相关理念的发展历史及实际应用价值,总结了智能运维技术和产品的发展对企业应用运维管理的推动作用。

 

2.1  初识智能运维

近几年,人工智能技术发展很快,通常理解的智能运维是把人工智能技术应用在IT运维领域,替代人工进行风险管理决策。从通过机器实现自动化流程、替代人工并解放运维人员的根本需求出发,能替代人脑进行运维决策、人手管理配置的算法和工具都可以称为智能运维系统。2000年,早期机器学习算法出现,用来代替人脑识别指标的变化模式,预测未来的趋势。IT运维管理通过程序实现软件、硬件的自动管理,这已经是智能运维的初级阶段。未来,智能运维技术借助概率计算、深度神经网络、因果推理分析等高级人工智能算法,将进一步提升系统自主分析决策能力,实现自治程度更高的智能运维。


 

 

2.2  智能运维,赋予企业运维更强悍的大脑

数字化新术、新需求的涌现促使企业拥有的应用规模和应用复杂度快速膨胀,使得企业应用运维不堪重负。由于应用性能问题导致企业用户流失和经济损失的案例逐渐增加。传统IT运维的被动响应式风险处理机制已难以应对这些问题。实现主动预防的风险处理机制已逐渐成为构建面向未来的智能运维平台的关键。

为应对未来将面临的智能、互联时代的运维挑战,通过机器智能手段处理机器数据、解决机器系统的复杂度膨胀问题,是目前唯一可行的解决方案。搭建智能运维平台,构建高效、智能的应用性能风险主动防御体系,可以让企业变被动为主动,防患于未然。

《纽约时报》一篇文章曾报道,微软研究人员Harry Shum发现:当网站的响应时间比竞争对手慢250ms以上时,用户更倾向于关闭网站。这说明应用软件的用户体验下降或宕机将直接导致用户流失,当前企业经营运转比以往更依赖应用软件。除此之外,近年来新技术、新需求的涌现促使企业拥有的应用规模和复杂度快速膨胀,企业原有的IT运维逐渐无力招架,应用性能异常导致的用户流失和经济损失的问题更加突出。

目前,尽管已有很多企业认识到应用性能问题的严重性,并已加大投入来构建、完善应用性能管理平台,然而,传统应用性能管理主要以实时监控、被动告警方式通知运维人员处理风险。这种方式虽然能降低损失,但无论运维人员反应多么迅速,其仍需要耗费少则几小时,多则几天时间来排查解决故障,因此这种方式无法避免对企业运营造成的影响。阿里云、WhatsAppAdobe Creative CloudFacebook等频繁发生的事故时刻提醒我们问题的严重性。因此,被动处理方式的APM已不能满足企业快速数字化转型的需要,主动分析定位潜在问题、预防应用性能风险已成为未来APM的趋势。如何做到主动防御,提前发现并规避风险呢?

红木神经科学研究院创始人、美国工程院院士杰夫·霍金斯认为:智能的本质是“预测”。只有能够预测未来趋势和可能发生的事件,才能争取提前规避问题的时间,这是变被动为主动的关键。因此,APM只有具备了对未来应用性能变化趋势及风险的“预测能力”,才能主动发现并规避风险,将企业运维人员从繁冗的应用性能管理工作中真正解脱出来。

分析海量历史运维数据是在应用健康状态良好的情况下提前发现风险的主要途径。从数据中找到应用存在的潜在问题与风险,可主动预防应用性能风险。现阶段,APM预测分析能力对用户的价值主要体现在以下几个方面:预测未来应用性能的变化趋势;实现更精准的容量规划;预测、分析应用性能瓶颈;预测、分析潜在的稳定性风险。

当前市场上具备运维数据分析能力的APM产品主要是面向企业应用的传统APM产品(如CA APM)和面向互联网应用的新型APM产品(如NewRelicDynatraceNetuitive等)。在新发布的产品中,CA APM重点强调主动性能管理能力,通过预测应用未来的负载变化趋势,指导用户优化应用资源配置;NewRelicDynatrace强调分析的实时性,提供围绕在线用户、应用事务、用户体验相关的数据统计分析功能,以易于理解的方式将当前围绕应用健康状态的分析结果展示给用户;Netuitive则重点打造面向未来的预测分析能力,利用机器学习回归算法,通过分析历史监控指标数据来给出未来一段时间的指标曲线波动情况。除此以外,Netuitive还能够通过独特的行为学习技术,学习指定时间范围内的监控指标波动状态,发现指标之间的关联关系,预测未来可能发生的异常,并提前生成主动告警。

随着信息技术的快速发展,企业运营对数字信息系统的依赖加大,IT运维的重要性和成本快速增加。同时,新一代信息技术和创新业务流程也在推动系统复杂化,人工运维已经难堪重负,智能运维被寄予厚望。近几年来,无论是学术界还是产业界,对智能运维领域技术和应用的关注度都在快速提升。ExtraHop2016年面向大中型企业的调查报告中指出,60%的企业有计划整合竖井式的分布异构运维数据源,实现统一运维数据存储分析平台[1]Gartner预测,到2022年,40%的企业将会部署智能运维平台,实现运维智能化。

2.3  演进过程

IT运维初级阶段,企业就有动力通过以算法和自动化流程驱动的“智能运维”来代替人工。当时,信息系统主要以企业内部自用的企业资源管理、计算机服务设计等系统为主,系统服务范围小,运维成本和压力相对较小。企业没有足够的动力来做IT运维智能化的事情。智能运维发展加速的一个重要的催化剂是,如Google这样的互联网公司迫于运维压力,开始尝试利用统计学方法分析运维数据中的模式,预测未来趋势。从2010年开始,云计算和大数据技术的快速发展也推动了企业利用大数据与算法提升IT运维能力的需求,智能运维发展真正进入了快车道。时至今日,在智能运维的演进过程中,主要的里程碑有IT运维分析、事件关联分析、自动化运维、人工智能运维、开发运维一体化。

2.3.1  IT运维分析

IT运维分析(IT Operations AnalyticsITOA)指实现基于海量IT运营数据的演绎、归纳推理,并支撑IT运营数据采集、存储、展现的相关技术及服务。其利用数学算法或创新方法,从海量IT监控管理系统采集的原始数据中挖掘有用的信息。ITOA是通过分析海量、低价值密度的IT系统的可用性和性能数据,发现复杂的数据模式,从而辅助优化企业IT运营过程的系统,其需要具备的核心能力如下。

1风险根源定位分析:通过融合分析来自基础设施、应用、用户的监控数据,定位产生风险或对系统健康造成潜在威胁的根源所在。

2性能可用性预测分析:基于历史数据预测未来系统性能和可用性的变化趋势,以及关联分析对系统可能产生的影响。

3问题识别与派发:围绕当前问题,从历史记录中查找解决方案和适合解决问题的团队或人,提高处理问题的效率。

4影响范围推理分析:当发现多个风险可能对系统造成影响时,基于从数据中发现的模式推理找出可能影响更大、优先级更高的风险,指导相关人员及时、高效处理这些问题,降低损失。

5多源数据融合互补:对IT基础设施和应用采集的数据进行关联、融合,补全网络、应用、服务拓扑结构,完善探查管理类工具信息视图。

6动态风险告警阈值管理:自动发现监控指标的正常运行范围,在用户负载变化或系统配置变更后,能够自动从历史数据中发现规律,调整异常告警区间限定阈值范围。

对于ITOA技术,GartnerData Growth Demands a Single, Architected ITOperations Analytics Platform报告[2]中总结了六种:日志分析技术;非结构化文本数据索引、查询和推理技术;拓扑分析技术;多维数据库查询分析技术;复杂运维事件处理技术;数据统计分析、模式发现与识别技术。具备这些技术的ITOA才能满足基础设施和应用层的监控需求,实现由多源异构探针采集的时间序列指标、日志、代码链路、网络包和用户数字轨迹数据的聚合、关联和分析。目前,市场上的ITOA产品提供商主要有SplunkElasticDynatraceRealSight APM等。

2.3.2  事件关联分析

在主动风险预测和预防性维护技术未成熟之前,企业运维风险管理工作主要以工单、风险告警等事件驱动工作方式为主。在运维过程中,事件关联分析(Event Correlation and AnalysisECA[3]则主要用来关联多种监控系统事件,协同不同团队角色人员的工作。具体地说,ECA能够帮助IT运维人员消除重复上报工单事件或告警;根据不同人员角色和业务运维需要来过滤、查询相关事件;根据历史数据或预定义规则关联事件,找出告警事件的根源问题或查找事件间的相关性和影响关系。这种处理方式在一定程度上能减少人工过滤无效事件的工作量,并辅助查找对应事件最合适的处理角色,这也是通过算法实现指定类型风险处理的智能运维的一种简单、有效的方案。市场上主要的ECA产品提供商有Argent SoftwareAugur SystemsBMC SoftwareCA

2.3.3  自动化运维

如果说智能运维技术发展的主线是为了解放运维人员,ITOAECA通过数据驱动辅助决策来解放IT运维人员的大脑,那么,自动化运维(Automated System OperationsASO[4]技术则主要是为了解放运维人员的手和脚。在日常运维中,当面临大量服务器、应用,需要有限的运维人员维护管理时,自动化运维工具和产品能够帮助运维人员设置自动化脚本,批量安装操作系统,部署中间件和应用,配置变更管理。GartnerASO定义为“不需要人工干预,直接操控物理设备就能控制计算机安装配置硬件和软件的过程”。

借助ASO工具,IT运维人员可以在控制台通过定义自动化脚本准备应用的运行环境,安装部署应用,准备集群节点,控制弹性分组。结合脚本语言编程,运维人员可以将更复杂的控制流程自动化。结合ITOAECA的风险告警,以及根源定位分析事件触发,可以实现特定场景下对特定风险的自愈控制。比较常用的ASO工具包括ChefPuppetAnsibleSaltstack

2.3.4  人工智能运维

第一个提出AIOps概念的是著名的IT咨询公司Gartner[5],其给出的定义是算法运维(Algorithmic IT Operations),其中的AI并不是现在大家理解的人工智能。20174月,在印度孟买的新闻会上,GartnerAIOps解释为“AIOps平台由可以完成数据采集、存储、分析和可视化的多层架构系统组成,具备与第三方应用通过不与厂商绑定的API接口对接数据的能力,能够和IT运维管理(ITOM)类工具进行数据交互和能力对接”。Gartner完全站在IT运维数据分析的角度给出了AIOps的基本能力边界,和人工智能没有一点儿关系。然而,由于人工智能技术是大热点,业界更愿意将AI理解为更时髦的人工智能算法,AIOps也就只能顺应潮流,被定义为人工智能运维。从目前机器学习、人工智能技术的应用现状和发展趋势来看,IT运维领域的目标数据以机器数据为主,机器行为相比于人的行为规律性较强,状态数据采集简单,质量相对可控。使用算法运维替代人工运维更容易落地,真正的人工智能运维已经不再遥不可及。

从需求和技术发展的趋势看,企业内多源数据融合和集中式运维与运营数据支撑是大势所趋,但由于采集方式和数据类型多样、数据存储分散、智能分析场景众多,实现难度较大,需要从核心场景出发,按需规划,分阶段递进实现。Gartner给出的AIOps平台的核心能力包括以下几项。

1能够从多种数据源采集数据,不与厂商绑定。

2支持对接、处理实时数据和批量历史数据。

3提供对融合数据的检索、统计。

4提供海量实时、历史数据的存储。

5支持使用机器学习算法来分析、处理数据。

6能够基于分析结果规划下一步的处理动作。

总结企业应用的运维场景,可知常见的人工智能运维场景如下。

1基本和高级统计分析:单变量和多变量分析的组合,包括对跨 IT 实体捕获的指标使用相关性、聚类、分类和外推分析,以及从监控数据源中对数据进行整理。

2自动模式发现和预测:使用上述一种或多种类型的历史或流数据,得出数学或结构模式,描述可以从数据集本身推断但不会立即存在于数据集本身的新相关性;然后,这些模式可用于及时预测具有不同概率的事件。

3应用异常检测:使用前一个组件发现的模式,首先确定构成正常系统的行为,然后识别偏离该正常系统的行为。

4根本原因确定:向下修剪由自动模式发现和预测组件建立的相关网络,以隔离那些代表真正因果关系的依赖关系链接,从而提供有效干预的方法。

5规定性建议:对问题进行整理,将它们分类为已知类别;然后,挖掘以前解决方案的记录,分析这些解决方案是否适用,并优先提供这些解决方案,以便尽早使用补救措施;最终,使用闭环方法,并在使用后对其有效性进行表决。

6拓扑:对于AIOps检测到的具有相关性和可操作性的模式,必须围绕引入的数据放置上下文,该上下文就是拓扑;如果没有拓扑的上下文和事实上的约束,检测到的模式虽然有效,但可能毫无帮助且会分散注意力;拓扑中的数据派生模式将减少模式的数量,建立相关性并说明隐藏的依赖关系;使用拓扑作为因果关系确定的一部分可以大大提高其准确性和有效性;使用图形和瓶颈分析捕获事件发生的位置及其上下游的依赖关系,可以提供关于将补救工作重点集中到何处的见解。

一些企业,尤其是拥有庞大数据中心和复杂应用的互联网公司,已经将此技术应用于特定场景,比如用户异常行为检测、云端应用弹性控制、容量规划、入侵检测、数据中心PUE能效管理、硬盘损坏预测等。有些企业甚至开始尝试通过融合开发、运维、运营数据来打造一体化智能化平台,关联运营KPI和运维SLO,同时为企业各部门提供全景数据视图和智能决策支持。非IT运维部门,如业务规划部、销售部、产品部和数字营销部都有自己的应用系统和数据,也希望借助其他途径获取更丰富的数据以了解目标用户、市场和使用场景。数据量的激增也使得大数据采集、存储和智能分析成为必备技术。因此,为了满足企业内更广泛的需求,AIOps平台对接的数据源的种类在增加,能力边界也在扩大。例如,传统APM产品提供商Dynatrace已经在践行AIOps的基础上提出了软件智能(Software Intelligence)平台的概念,推出了数字业务分析(Digital Business Analytics)服务,能够为企业数字运营部门提供实时的用户数字体验监控、转化率变化分析、企业营收与应用性能关联分析和用户画像分类等服务。

2.3.5  开发运维一体化

现在企业更加依赖数字信息系统与最终用户交互,企业应用互联网化已经是大势所趋。对于互联网应用的开发与运维,开发运维一体化(DevOps)是回避不了的一个话题。根据Wikipedia[6]的解释,DevOps这个说法第一次出现在2009年比利时Ghent举办的一次由敏捷实践者、项目经理和咨询顾问参与的称为DevOpsDays的会议上。虽然截至目前,学术界和产业界对DevOps的概念还未达成共识,但从企业信息化系统应用开发、运维的实际需求出发,DevOps通常被理解为包含工具、过程和人的一系列最佳实践,融合了应用软件开发期管理(Dev)和运行期维护(Ops),旨在缩短应用全生命周期的开发过程,提升运行期应用的可靠性、可用性和性能。

业界将DevOps概念应用在软件系统运维过程中的实践最早可以追溯到Google提出SRE概念时。当互联网应用新功能上线周期越来越短、代码更新越来越频繁时,Google不得不想办法在满足频繁发布代码需求的同时,保障上线代码的可靠性与性能能够支撑大规模用户同时在线访问,以及提供高质量的最终用户体验。践行DevOps与实现软件自动化发布或制定产品研发工作计划无关,DevOps的初衷是通过提高软件开发与运维体系的衔接水平,将软件价值加速交付给企业的最终用户。要提供价值,企业必须在生产中运行应用程序以测试应用程序,并使用自动化流程管理工具来指导接下来交付的内容。

当企业践行DevOps,建设基于DevOps的应用开发、运维全生命周期管理体系时,应用智能运维系统只是其中支撑应用运行期管理环节的工具。为了支撑DevOps落地,应用智能运维系统不仅需要支撑应用运维人员实现运行期的状态监控、风险管理、用户数字体验保障,而且需要对接开发人员,实现在开发期定义应用业务监控关键KPI指标、分析运行期代码质量和支撑性能工程等过程,并且在新功能上线、代码更新时,支持A/B测试、灰度发布、蓝绿发布等应用场景。在具备面向运维提供代码级白盒监控的能力和风险主动感知的能力的同时,DevOps体系下的应用智能运维系统也需要无缝衔接开发,在代码有故障且运维人员无法处理时,需要快速找到责任人,向开发人员分享相关实时数据。如果应用上线后代码性能不达标,运行一段时间后,应用智能运维系统需要生成分析报告,指导后续性能优化和容量规划。

本章小结

智能运维是企业进一步提高运维效率、提升应用可用性和性能保障能力的关键。本章系统介绍了运维智能化过程中出现的IT运维分析、事件关联分析等一系列相关技术和产品,从背景起源、主要特点和应用场景方面概述了技术背景,相对完整地勾勒了智能运维的发展脉络,为后续介绍应用智能运维相关的技术和建设实践方法奠定了基础。



相关文章
|
23天前
|
机器学习/深度学习 运维 监控
智能监控系统在运维中的应用与优势
传统的运维管理方式在面对日益复杂的IT系统时显得力不从心,智能监控系统的出现为运维工作带来了新的机遇。本文将探讨智能监控系统在运维中的应用与优势,介绍其工作原理以及如何有效地利用智能监控系统提升运维效率和质量。
38 2
|
23天前
|
运维 监控
现代运维中的自动化技术应用与挑战
现代运维工作中,自动化技术的应用已成为提高效率、降低成本的重要手段。本文探讨了自动化技术在运维领域的应用现状和挑战,包括自动化工具的选择、实施过程中的注意事项以及未来发展趋势。通过深入分析,帮助读者更好地理解和应用自动化技术,提升运维工作效率。
12 2
|
30天前
|
运维 监控 持续交付
构建高效自动化运维体系:策略与实践
在数字化时代,企业IT基础设施的管理和维护变得日益复杂。为了提高效率、降低错误率并快速响应市场变化,构建一个高效的自动化运维体系至关重要。本文将探讨自动化运维的核心策略,并通过实际案例分析展示如何将这些策略应用于日常管理中,以实现IT运维的优化。
17 0
|
9天前
|
运维 Kubernetes Devops
构建高效自动化运维体系:DevOps与容器技术融合实践
【4月更文挑战第15天】 在当今快速发展的信息技术时代,传统的IT运维模式已难以满足业务敏捷性的需求。本文旨在探讨如何通过整合DevOps理念和容器技术来构建一个高效的自动化运维体系。文章将详细阐述DevOps的核心原则、容器技术的基础知识,以及两者结合的优势。此外,文中还将分享一系列实践经验,包括持续集成/持续部署(CI/CD)流程的搭建、微服务架构的应用,以及监控和日志管理策略的优化,以期帮助企业实现快速、可靠且安全的软件交付过程。
|
10天前
|
人工智能 运维 监控
构建高效自动化运维体系的实践与思考
【4月更文挑战第14天】在数字化转型的浪潮中,自动化运维作为提升系统稳定性和效率的关键手段,受到了企业的广泛关注。本文将深入探讨如何构建一个高效的自动化运维体系,涵盖从基础设施的搭建到流程的优化等多个方面。通过分析当前自动化运维的挑战及解决方案,文章旨在为读者提供一套实用的策略框架,帮助企业实现运维工作的高效化、标准化和智能化。
|
16天前
|
运维 监控 Kubernetes
构建高效自动化运维体系的实践与思考
【4月更文挑战第8天】在数字化时代,IT基础设施的复杂性日益增加,传统的手工运维模式已经难以满足快速响应和高效率的需求。本文将探讨如何通过自动化工具和策略构建一个高效的自动化运维体系,旨在提高系统的稳定性、减少人为错误以及优化资源分配。文章首先分析了自动化运维的必要性,接着介绍了实现自动化的关键技术和工具,并通过案例分析展示自动化运维体系的实际效果。最后,对自动化运维的未来发展趋势进行了展望。
|
18天前
|
机器学习/深度学习 传感器 运维
提升数据中心效能:智能运维策略与实践
【4月更文挑战第6天】在数字化时代,数据中心作为企业信息架构的核心,其稳定性和效率直接影响到业务连续性和客户满意度。随着技术的进步,传统的数据中心运维模式已经不能满足现代高效、智能化的需求。本文将探讨如何通过智能运维(AIOps)策略,结合大数据分析和机器学习技术,实现数据中心的自动化管理、故障预测及快速响应,以提升整体效能并降低运营成本。
|
28天前
|
运维 监控 数据可视化
现代化运维管理系统的关键特性及实践应用
随着信息技术的迅猛发展,现代企业对于运维管理系统的需求日益增长。本文将探讨现代化运维管理系统的关键特性,以及在实际应用中的重要性和优势所在,帮助企业更好地理解和应用现代化运维管理系统。
15 2
|
28天前
|
机器学习/深度学习 存储 人工智能
未来智能运维的发展趋势与挑战
随着信息技术的迅猛发展,智能运维作为关键的技术领域正日益受到重视。本文探讨了未来智能运维的发展趋势和所面临的挑战,从人工智能、自动化运维、数据分析等方面展望了未来智能运维的发展方向,同时也指出了在实践中需要克服的困难和挑战。
50 1
|
28天前
|
机器学习/深度学习 人工智能 运维
未来智能运维:人工智能在云计算运维中的应用
随着云计算技术的不断发展,传统的运维方式已经无法满足日益复杂的系统需求。本文探讨了人工智能在云计算运维中的应用,介绍了未来智能运维的发展趋势和挑战。
16 3