1.2.2 智能运维的发展历程
经过数十年的技术发展,如今部分企业已经进入智能运维阶段。2019年年底,Gartner预测到2023年,有40%的DevOps团队通过人工智能为IT运营(AIOps)平台功能扩展应用程序和基础架构监视工具,即有40%的团队从DevOps进入到AIOps。
1.智能运维发展的3个阶段
在综合各方观点的基础上,本书认为智能运维的发展分3个大阶段6个小阶段,分别是人工运维、自动化运维、智能运维3大阶段,其智能等级参考TM Forum自动驾驶网络从L0~L5逐级递增,如图1-3所示。
(1)人工运维阶段
该阶段分L0手工操作与维护、L1辅助运维两个小阶段。该阶段完全或大部分依靠运维专家的经验规则进行故障定位、根因分析和配置下发等管理任务的制定和执行。进入辅助运维的阶段,通过对重复性典型事件预先在系统中配置触发和调度策略,达到提高运维效率和减少人力成本的作用。
(2)自动化运维阶段
该阶段分L2部分自治、L3条件自治两个小阶段。在L2部分自治小阶段,业内提出了ITIL(Information Technology Infrastructure Library)、DevOps等理念,强调流程管理质量和打破开发、运维的边界。在这个阶段业内逐渐达成IT研发和运维一体化的共识,但仍未规模化使用DevOps工具,主要依靠在系统中定制编写自动化脚本,实现简单数据分析、可视化、参数配置等初始功能,类似早期BI(商业智能)系统。到L3条件自治小阶段,企业已经认可自动化运维的价值,开始停止自己开发脚本,转而使用市场上开源和付费的DevOps工具。从OpenStack时代,再到现在的容器时代,借用工具出现了很多自动化运维的高级模式,如网络可用性工程SRE(Site Reliability Engi-neer)、聊天机器人ChatOps等。前者是在保证用户满意度的前提下,平衡系统功能、服务及性能多方因素,是涵盖DevOps运维思想、组织架构和具体实践的完整体系。后者通过插件或脚本实时执行团队成员在会话中输入的每一行命令,将过去成员在各工具输入的命令前端化、透明化,以进一步提升自动化程度。
图1-3 运维发展各阶段示意图(以电信运营商为例)
(3)智能运维阶段
该阶段分L4高度自治(又称智能运维前期阶段)和L5完全自治(即无人运维阶段)两个阶段。当在某个领域自动化程度达到一定极限时,必然会被人们个性化需求推动着往智能化方向发展。
L3和L4两个阶段从功能定义上来看,两者必定会在长期共存的状态下进一步演化,预估会共存10~15年,即在此期间内自动化和智能化程度均会逐渐提高。在智能运维早期,AI从单点应用着手,如KPI单指标的异常检测和趋势预测,逐步实现在单点应用上的自主发现问题、诊断问题、解决问题和性能优化。并在各垂直领域中,将专家经验积累成知识库,形成可重复利用的结构化知识点。
在各单点应用逐渐智能化的前提下,将底层各维度数据打通,建立中间通用和专用能力层,灵活应用于上层服务。在每个应用中都能实现从数据自主采集、自主预处理到自优化,模型上实现自主选择、调参、优化及部署。人们的需求将通过语音、姿态、神情等特征进行控制和调度,系统也会自主发现、诊断和优化问题。
在时间维度上,由于各行业自动化和智能化发展速度参差不齐,即使自动化运维和DevOps概念已提出多年,但自动化运维工具在企业中的使用依然普及率不高,预计到2030年超过50%企业会普及使用DevOps工具。同理,即使从2016年开始,已有企业开始尝试在单点应用上借用AI技术,但要大多数企业能达到高度自治的水平,依然至少需要20~30年时间的探索和发展。而要实现无人运维需要研发和搭建以算力网络、数字孪生、千脑感知网络、边缘智能等技术为基础的“运维大脑”,在高度自治的智能运维阶段基础上,至少还需要20~40年时间。
随着人工智能技术的不断深入,运维管理中,人的角色越来越主动,对数据和工具的掌控力越来越灵活。运维人员收集原始数据后,经过数字孪生和可视化后,再进行打标、模型预训练、结构化知识的提取,最终将专家的经验和数据衍生为应用知识,进而实现工具的自动化和智能化升级,如图1-4所示。
图1-4 不同运维阶段中人、数据、工具3种角色功能和关系演化图
2.实现智能运维的必要条件
无论是从已经进入AIOps阶段的企业技术架构图(如图1-5所示)中,还是从Gartner的定义中,都可以清晰地看出:数据是智能运维的基础。准确地说,具备数据能力是一家企业进入智能运维的必要条件。
根据Gartner的定义,AIOps产品或平台主要包括以下5类技术要素。
● 数据源:来自各IT基础设施的底层记录数据。
● 大数据平台:用于处理、分析静态和动态实时数据。
● 计算与分析:数据预处理、数据标准化等清洗工作。
● 算法:用于计算和分析,以产生IT运维场景所需的结果。
● 机器学习:包括无监督、有监督和半监督学习。
数据是企业的核心资产,随着数据量、数据维度的爆发式增长,现有的监测分析工具在处理这类数据时压力很大,且现有的BI或数据分析工具只能满足简单的数据分析和可视化功能,如Tableau,其无法自动化地在企业跨越多种数据类型采集、洞察数据,进而给出决策。
目前所有的AIOps平台需能够提取静态数据(历史数据)和动态数据(实时、流式传输数据)。这些平台允许事件数据、用户数据、日志数据以及图形和文档数据的提取、索引和存储。
数据能力,具体包括数据采集、数据存储、数据治理、数据服务4项核心能力,即以数据中台/大数据平台/数据湖等形式存在的数据底座,至于这几种数据底座的名称之间的细微差别,读者可暂时理解为同一种事物。
图1-5 某企业AIOps技术架构图
每天数据量在1TB以上、底层平台超过5个以上的企业,建立一个可用的数据底座至少需要3年时间。而且这3年中需要一边建设数据底座一边将其与运维业务紧密结合,在试错中建设。构建统一监控平台,实现IT资源的统一管控。利用大数据的手段,采集、分析基础设施、网络、日志等IT监控数据,通过海量IT数据的实时处理分析,消除数据孤岛,实现统一的告警,提升运维管理效率。
上述提到的4项数据能力,在第3章、第4章将会重点阐述大数据采集、计算和处理的技术,在此只重点强调数据治理的难度和重要性。由于采集的数据集依然是按照业务逻辑从各平台取出后按表存储的,与后期各类运维场景使用的数据结构相差甚远,因此,需要在数据底座上针对每种运维场景(当然场景的数量是慢慢积累的),建立企业自身运维的数据标准,并通过自动化程序和配置采集程序来采集标准数据。在数据底座上建立一个个标准化的数据模型,每种运维场景需要的数据可以是一个数据模型中的数据,也可以是多个数据模型组合的数据。这种数据模型后期将在无人运维阶段,通过数据孪生技术从大数据平台中自动生成。数据将通过统一接口服务于智能运维。