1.1 智能运维的概念
“AIOps(智能运维)是机器学习(ML)和数据科学在IT运营问题中的应用。AIOps平台结合了大数据和ML功能,以增强和部分替代所有主要的IT运营功能,包括可用性和性能监控、事件关联和分析以及IT服务管理和自动化。
AIOps平台会消耗并分析IT部门不断增长的数据量、多样性和速度,并以有用的方式进行呈现。”
——Gartner 2016
智能运维顾名思义是智能+运维。智能运维的概念是全球知名的IT研究与顾问咨询公司Gartner在2016年提出的。当初提出时的英文全称为Algorithmic IT Operations,意指基于算法的IT运维。随着人工智能技术的发展,近两年该英文全称逐渐演化为Artificial Intelligence for IT operations,突出了人工智能算法在IT运维中的应用。现在,这两种英文全称都能在不同文档中见到,同时并存。
AIOps中的AI指的是人工智能,包含统计学、机器学习和深度学习等知识,在第2章将着重对其进行阐述。
运维的字面之意为运行和维护。广义上,维持任一事物持续正常运转的工作都可以称为运维,如车辆定期保养、给书本包上书皮纸、定期清理抽油烟机的油渍,甚至人们的一日三餐等。而专指维持IT系统正常运行的工作则为狭义上的运维。
行业内,运维是指从拿到开发的代码包开始,进行资源环境准备、环境搭建、应用发布,以及一系列的运维支撑保障工作,从技术栈层面大致可分以下3类。
1)IDC(Internet Data Center,数据中心,又称机房)运维:提供稳定的网络、存储和服务器服务,围绕操作系统及以下的运维支撑工作,通常包括信息统计、主机监控、硬件维护、系统和网络维护等工作。
2)系统管理员(System Administrator, SA):负责操作系统以上、代码以下的运维管理工作,部分公司由于中间件的运维支撑与应用关联紧密,很多时候SA只负责操作系统和数据库两个内容。
3)应用运维:核心职能是确保进程和服务可用,同时响应研发、运营人员的诉求,维护新版本的稳定运行,以及提供数据和服务给运营人员。应用运维在各行业里都非常重要。
相对于运维,很多人经常分不清运维和运营的区别,认为两者是一回事,两个名词被混用的现象经常能见到。相对于AIOps,另外还有一个名词DevOps(开发运维),两者同为借助自动化方法提高运维效率,而这些方法有时难以区分是否为人工智能方法,人们对这两者的认识更为模糊。接下来,将通过说明运维与运营的区别、智能运维和开发运维的区别两个角度来介绍AIOps的概念。