摘要:随着企业的持续发展和信息化建设的不断推进,无纸化办公模式已深入到人们的各类工作中,越来越多的应用系统在不断投入使用并发挥着不可替代的作用。因此,应用系统的运行稳定关系到企业的生产效率和效益,企业对应用系统运行的要求也越来越高,使得IT运维工作变得更加任重道远。由于传统的运维方式存在一定的局限性,已不能满足企业发展要求,需要更加科学、高效、实用的运维工具来保障应用系统安全、稳定、高效的运行。本文就自动化运维工具在中小型供电企业中的应用展开论述。
关键字:IT运维;自动化;应用;适用性
1.自动化运维工具在电力企业中的应用现状
近年来,为了适应企业信息化迅速发展的趋势,各中小型供电企业为保障应用系统的可用率、运行率,纷纷采用了各式各样的自动化运维工具,就目前供电局采用的运维监控工具来看,与传统的运维管理模式相比,虽在一定程度上提高了应用系统运行和维护的效率,但在使用上过于复杂繁琐,监控事项过于单一,监控范围覆盖较小,故障预警机制还不完善,告警内容笼统,存在误报、延报等问题,对应用系统的监控管理存在一定的局限性,且还存在过度依赖人力资源的情况,已不能适应满足当代企业对应用系统的运行要求。如今需要一套更适合本地化需求的工具来解决运维需求问题。
2.构架设计与关键技术
从本地企业应用系统的管理现状出发,分析总结IT运维工作的重、难点,及现有运维工具存在的局限问题,提出自动化运维工具架构设计及关键技术。
2.1架构设计
自动化运维工具以可视化操作视图的方式,对服务器、中间件、数据库、业务系统进行运维监控和运维作业管理。其中,运维监控包括:实时监控、设备运行趋势监控;运维作业管理包括:表单自定义生成及运维审批流程管理、故障上报及流程管理、告警处理及流程管理、可视化展现、运维知识库管理等功能。
2.1.1运维监控
(1)实时监控
在各应用系统运行平台上安装客户端采集器,并将相关资产信息录入系统。采集器通过响应管理控制台命令,读取服务器(CPU、内存、硬盘)使用率、系统日志;连接数据库情况及读取数据库连接数量;访问业务系统页面及响应时间,进行筛选分析后将值返回给管理控制台,最终实现对资源、设备运行情况的实时监控。
(2)设备运行趋势监控
设备运行趋势图将一定时间间隔(一天、一个月、一年)客户端采集到的服务器运行数据进行处理后绘制成图形,更直观的展现出设备资源的变化趋势。
2.1.2运维作业管理
(1)表单自定义生成及运维审批流程管理
根据本地企业运维巡检需求,通过拖拽方式和单元格设置,针对不同系统、不同设备灵活地设计出符合需求的巡检表单模板。客户端采集器根据巡检项采集当前相应数据填充到对应位置,从而自动生成巡检表单。并通过系统设置巡检审批流程及定义审批人员角色,提交审核。
(2)故障上报及流程管理
定义告警优先级策略及告警信息内容标准,将优先级最高的告警定义为故障。客户端采集器将采集到的信息与定义的告警信息进行比对,若匹配上后将对其进行有效数据的采集处理,以确保收到的告警内容具有规范性及可读性。最后通过短信发送设备,将故障信息发送到用户手机并呈现到管理控制台,运维人员发现后及时完成故障处理,并回填处理意见,最终形成故障报告,按照流程设置完成上报审核。
(3)告警处理及流程管理
针对不同应用系统运行平台配置不同的告警阈值,或者根据系统日志定义告警类型。当运行数据达到告警阈值线或匹配上预先自定义的告警事件时将产生告警,并通过短信发送设备,将告警信息发送到用户手机。用户及时分析告警内容,处理告警事件,并对告警处理情况进行回填。
(4)可视化展现
自动化运维工具通过可视化方式向用户直观地呈现出各设备及系统当前的运行情况,将原本孤立的数据以直观及量化的方式展现,并形成统一完整、准确清晰的视图,支撑日常运维管理工作。
(5)运维知识库管理
将每一次故障处理方法进行收集整理形成运维知识库,当发生同类型告警事件时,向运维人员推送对应的处理方法,以供参考,从而缩短故障分析处理时间,及时恢复业务,减少损失,提高运维工作效率。将原本抽象的运维经验进行具体化,实现运维经验、技能的共享。
2.2关键技术
2.2.1技术架构
自动化运维工具分为管理控制台及客户端数据采集器两部分,管理控制台采用Spring MVC + Hibernate框架,通过编辑 Python、Shell 脚本参数来远程调用脚本程序,将后台数据进行筛选处理后展现到前台,为用户提供可视化操作视图。客户端数据采集器采用Socket TCP 、UDP 协议,将客户端部署在服务器上,通过响应管理控制台命令,进行有效数据采集,为管理控制台提供数据来源信息。通过两者的有效结合实现自动化运维。
2.2.2数据采集
数据采集分为客户端采集和非客户端采集两种模式,客户端采集模式是将采集器部署在服务器终端上,让服务器终端与管理控制台服务器进行通讯,通过响应管理控制台命令采集服务器资源性能数据。非客户端采集模式是管理控制台按照特定程序命令,根据录入系统的资产信息,读取数据库的连接状态及业务系统访问情况等结果类数据。
2.2.3工具部署
自动化运维工具采用JAVA语言程序编写,支持在多种操作系统平台上安装部署,分为管理控制台部署和客户端采集器部署。管理控制台是基于web应用,通过启动tomcat来运行,而客户端采集器是基于托盘形式,通过启动托盘来运行。
3.应用及实践
本文提出的自动化运维工具在某中小型供电企业得到了应用,管理范围覆盖服务器、数据库和中间件、应用系统等软硬件设备。该自动化运维工具主要实现了设备状态实时监控及可视化展现、设备运行趋势分析、运维表单生成、故障及告警处置、知识库构建等功能。
3.1实时监控及可视化展现
可视化视图展现设备运行状况有助于运维人员实时监控设备健康状态,尽早发现设备潜在问题,降低故障发生几率,在问题出现的时候能够快速定位。该功能的实现改变了以往人工巡检的方式,大大减少了运维人员的工作量,避免简单工作重复进行。同时,通过智能分析各软硬件设备的运行状态,支撑日常运维管理工作,为系统的可用率、运行率、系统性能做出有效保障。
图1 某供电企业实时监控实例
3.2设备运行趋势分析
通过设备运行趋势图,对服务器(CPU、内存、硬盘)使用率、业务系统访问量波动情况进行分析,可预知设备运行规律与趋势,提前发现性能瓶颈或BUG,及时进行优化调整,辅助设备扩容、采购决策,做好日常预防性维护工作。将以往的故障处置模式由被动响应变为主动服务,降低了故障发生的几率,缩短问题响应及处理时间,切切实实提高了系统运行率和可用率。
图 2 某供电企业设备运行趋势图实例
3.3运维表单生成
针对不同系统及设备创建不同的巡检表单模板,满足多元化巡检项目需求,将巡检数据自动填充到相应位置,从而自动生成巡检表单。改变了以往手动填写巡检数据的方式,节省了大部分重复劳动时间,避免了人力资源的不必要浪费,将更多的人力资源转移到新产品、新技术的开发应用上,提高工作效率和IT运维服务质量,同时确保了巡检记录数据的真实性和准确性。
图3 某供电企业运维表单自动生成实例
3.4故障及告警处置
业务系统或设备出现异常情况,系统会第一时间将告警内容展现出来并通过短信发送设备,发送到用户手机,及时提醒运维人员进行处理,解决了运维人员巡检不到位和监控盲区的情况,缩短了故障告警响应及业务中断时间。故障告警处理完毕后形成故障报告,按照审批流程完成上报审核,使运维作业管理更具规范性。将传统的纸质故障报告填写、批示、签署转为电子文档,将各环节的单独处理工作串联起来,省去打印、传阅审批的步骤,避免纸张的浪费及保管的缺失、更方便于后期的查看。
3.5知识库
将每一次故障告警处理方法记录下来,归纳形成运维知识库,当发生同类型告警事件时,向运维人员推送同类型事件处理方法。一方面,缩短了故障告警分析处理时间及业务中断时间,减少了损失;另一方面,避免经验不足或者专业知识技能缺乏的运维人员误操作,引发更大的故障风险。此外,还实现了运维经验和知识技能的共享。
图4某供电企业运维知识库应用实例
4.结语
该自动化运维工具在供电局试运行近一年,总体运行情况良好,成效显著,不仅解决了以往监控管理上的局限问题,还规范了运维作业管理,解决了IT运维中的许多实际问题,实现了IT运维的标准化、自动化,提高了运维管理效率和服务质量。在当前企业信息化快速发展的新形势下及系统运行高要求的背景下,该自动化运维工具的推广使用十分必要。
参考文献
[1]闫龙川,刘军.企业信息系统自动化运维工具研究与应用[J].供用电,2015(08).35-38.
[2]杨震乾,毛正雄,王欢.自动化运维工具在电力企业信息系统管理中的作用[J].电子技术与软件工程,2018(16).