原文:《论IT运维自动化的重要性》

概念
简单的说,IT运维自动化是指基于流程化的框架,将事件与IT流程相关联,一旦被监控系统发生性能超标或宕机,会触发相关事件以及事先定义好的流程,可自动启动故障响应和恢复机制。自动化工作平台还可帮助IT运维人员完成日常的重复性工作(如备份、杀毒等),提高IT运维效率。同时,IT运维的自动化还要求能够预测故障、在故障发生前能够报警,让IT运维人员把故障消除在发生前,将所产生损失减到最低。

背景
随着信息时代的持续发展,IT运维已经成为IT服务内涵中重要的组成部分。面对越来越复杂的业务,面对越来越多样化的用户需求,不断扩展的IT应用需要越来越合理的模式来保障IT服务能灵活便捷、安全稳定地持续保障,这种模式中的保障因素就是IT运维(其他因素是更加优越的IT架构等)。从初期的几台服务器发展到庞大的数据中心,单靠人工已经无法满足在技术、业务、管理等方面的要求,那么标准化、自动化、架构优化、过程优化、等降低IT服务成本的因素越来越被人们所重视。其中,自动化最开始作为代替人工操作为出发点的诉求被广泛研究和应用。
IT运维从诞生发展至今,自动化作为其重要属性之一已经不仅仅只是代替人工操作,更重要的是深层探知和全局分析,关注的是在当前条件下如何实现性能与服务最优化,同时保障投资收益最大化。自动化对IT运维的影响,已经不仅仅是人与设备之间的关系,已经发展到了面向客户服务驱动IT运维决策的层面,IT运维团队的构成,也从各级技术人员占大多数发展到业务人员甚至用户占大多数的局面。
因此,IT运维自动化是一组将静态的设备结构转化为根据IT服务需求动态弹性响应的策略,目的就是实现IT运维的质量,降低成本。可以说自动化一定是IT运维最高层面的重要属性之一,但不是全部。

存在问题
目前许多企业的IT运维已经实现从人工运维到计算机管理,但在同客户的交流中发现其中很多企业的IT运维管理还只是处在“半自动化”的运维状态。因为这种IT运维仍然是等到IT故障出现后再由运维人员采取相应的补救措施。这些传统式被动、孤立、半自动式的IT运维管理模式经常让IT部门疲惫不堪,主要表现在以下三个方面:
(1)IT 运维人员被动、效率低
在IT运维过程中,只有当事件已经发生并已造成业务影响时才能发现和着手处理,这种被动“救火”不但使IT运维人员终日忙碌,也使IT运维本身质量很难提高,导致IT部门和业务部门对IT运维的服务满意度都不高。目前绝大多数的企业IT运维人员日常大部分时间和精力是处理一些简单重复的问题,而且由于故障预警机制不完善,往往是故障发生后或报警后才会进行处理,使到IT运维人员的工作经常是处于被动“救火”的状态,不但事倍功半而且常常会出现恶性连锁反应。

(2)缺乏一套高效的IT运维机制
目前许多企业在IT运维管理过程中缺少自动化的运维管理模式,也没有明确的角色定义和责任划分,使到问题出现后很难快速、准确地找到根本原因,无法及时地找到相应的人员进行修复和处理,或者是在问题找到后缺乏流程化的故障处理机制,而在处理问题时不但欠缺规范化的解决方案,也缺乏全面的跟踪记录。

(3)缺乏高效的IT运维技术工具
随着信息化建设的深入,企业IT系统日趋复杂,林林总总的网络设备、服务器、储存设备、中间件、业务系统等让IT运维人员难以从容应对,即使加班加点地维护、部署、管理也经常会因设备出现故障而导致业务的中断,严重影响企业的正常运转。出现这些问题部分原因是企业缺乏事件监控和诊断工具等IT运维技术工具,因为在没有高效的技术工具的支持下故障事件很难得到主动、快速处理。

迫在眉睫
尽管IT运维管理的技术在不断进步,但实际上很多IT运维人员并没有真正解脱出来,原因在于目前的技术虽然能够获取IT设备、服务器、网络流量,甚至数据库的警告信息,但成千上万条警告信息堆积在一起更本没法判断问题的根源在哪里。另外,目前许多企业的更新管理绝大多数工作都是手工操作的。即使一个简单的系统变更或更新往往都需要运维人员逐一登录每台设备进行手工变更,当设备数量达至成百上千时,其工作量之大可想而知。而这样的变更和检查操作在IT运维中往往每天都在进行,占用了大量的运维资源。因此,实现运维管理工作的自动化对企业来说已迫在眉睫。
现在随着IT运维管理工作的复杂度和难度的大大增加,仅靠过去几个“运维英雄”或“技术大拿”来包打天下已经行不通了,企业开始需要运用专业化、标准化和流程化的手段来实现运维工作的自动化管理。因为通过自动化监控系统能及时发现故障隐患,主动的告诉运维人员需要关注的资源,以达到防患于未然。例如,全天候自动检测与及时报警能实现IT运维的“全天候无人值守”,大大降低IT运维人员的工作负担。而且,通过自动化诊断能最大限度地减少维修时间,提高服务质量。因此, 对于越来越复杂的IT运维来说,将纯粹的人工操作变为一定程度的自动化管理是一个重要发展趋势。原因有三:

  • 首先,IT运维流程自动化能够提高流程的可控性,可以基于业务需求来制定个性化的流程,使企业领导有机会看见他们的业务流程,对企业流程有一个深刻的分析和理解,进而改造和优化流程。
  • 其次,IT运维流程的自动化能提高透明度。因为随着业务需求的变化可能会有多个版本出现,手工流程的不透明将会给流程定制和优化带来相当大的困难,而自动化流程可以使用户能够一目了然的看到整个流程的各个节点运转情况,自动化工具潜移默化地提升业务保障能力。
  • 再者,运维系统实行了自动化监控以后,通过工具自动监控对人的工作是一种减负,也是一种降低成本的表现。

工具
对于企业来说,要特别关注两类自动化工具:一是IT运维监控和诊断优化工具;二是运维流程自动化工具。这两类工具主要应用于:

  • 监控自动化,是指对重要的IT设备实施主动式监控,如路由器、交换机、防火墙,服务器,存储和备份设备等。
  • 配置变更检测自动化,是指IT设备配置参数一旦发生变化,将触发变更流程转给相关技术人员进行确认,通过自动检测协助IT运维人员发现和维护配置,避免配置错误引发的故障。
  • 维护事件提醒自动化,是指通过对IT设备和应用活动的实时监控,当发生异常事件时系统自动启动报警和响应机制,第一时间通知相关责任人。
  • 系统健康检测自动化,是指定期自动地对IT设备硬件和应用系统进行健康巡检。配合IT运维团队实施对系统的健康检查和监控。
  • 维护报告生成自动化,是指定期自动的对系统做日志的收集分析,记录系统运行状况,并通过阶段性的监控、分析和总结,定时提供IT运维的可用性、性能、系统资源利用状况分析报告。

建立管理步骤
(1)建立自动化运维管理平台
IT运维自动化管理建设的第一步是要先建立IT运维的自动化监控和管理平台。通过监控工具实现对用户操作规范的约束和对IT资源进行实时监控,包括服务器、数据库、中间件、存储备份、网络、安全、机房、业务应用和客户端等内容,通过自动监控管理平台实现故障或问题综合处理和集中管理。例如,在自定义周期内进行自动触发完成对IT运维的例行巡检,形成检查报告。包括自动运行维护,以完成对系统补丁的同步分发与升级、数据备份、病毒查杀等工作。

(2)建立故障事件自动触发流程,提高故障处理效率
所有IT设备在遇到问题时要会自动报警,无论是系统自动报警还是使用人员报的故障,应以红色标识显示在运维屏幕上。然后IT运维人员只需要按照相关知识库的数据,一步一步操作就可以。因此,企业需要事先建立自动工单式流程管理,当设备或软件发生异常或超出预警指标时会触发相关的事件,同时触发相关工单处理流程给相关IT运维人员。IT运维人员必须在指定时间内完成流程所规定的环节与工作,以提高IT运维响应问题的效率。

(3)建立规范的事件跟踪流程,强化运维执行力度
IT运维自动化管理建设时,首先需要建立故障和事件处理跟踪流程,利用表格工具等记录故障及其处理情况,以建立运维日志,并定期回顾从中辨识和发现问题的线索和根源。事实上许多实践也证明,建立每种事件的规范化处理和跟踪指南,可以减少IT运维操作的随意性和强化运维的执行力度,在很大程度上可降低故障发生的概率。同时,用户还应可以通过自助服务台、电话服务台等随时追踪该故障请求的处理状态。

(4)设立IT运维关键流程,引入优先处理原则
设立IT运维关键流程,引入优先处理原则是指要求CIO定义出IT运维的每个关键流程,不仅仅是定义流程是什么,还包括要指出每个关键流程对企业有什么影响和意义。同时,在设置自动化流程时还需要引入优先处理原则,例行的事按常规处理,特别事件要按优先级次序处理,也就是把事件细分为例行事件和例外关键事件。