职场文秘网

首页 > 心得体会 > 学习材料 / 正文

基于Ansible自动化运维的信息系统故障预测技术分析

2023-01-13 17:55:07

王宝安,余 会

(枣庄职业学院,山东 枣庄 277800)

当前,我国大部分企业信息化系统主要采用传统的Windows系统和Linus服务系统,但是随着企业规模的不断扩大,企业信息系统运维难度不断提升,仅仅通过管理人员依靠人工模式对信息系统进行运维管理,难以满足企业不断增长的业务需求,且信息系统大部分为批量化处理需求,比如批量命令运行、批量系统配置等,这些都会增加运维管理难度。因此,有必要设计开发一种基于Ansible的自动化运维系统,从而实现对企业信息系统故障的自动化预测。

1.1 Ansible基本框架

Ansible是一种包括多个模块而构成的框架,Ansible自身不具有执行能力和部署能力,Ansible的各个模块执行能力和部署能力决定其能够面向服务器集群,具有批量系统配置、批量程序设置以及批量运行命令等功能。Ansible是设计较为简单的自动化运维工具,具有开源性不断迭代的特点,支持多节点发布任务,且能够实现远程自动化执行[1]。Ansible工具能够跨平台自动化运维,主要包含软件自动化部署、自动化配置、自动化管控以及系统热升级等功能,其主要模块包括Command模块、Shell模块、Cron模块、Yum模块以及Serbice模块等,且Ansible功能模块在不断增加。在Ansible迭代升级的背景下,设计开发者逐渐加入了许多新的模块,使其功能更加丰富。Ansible的主要架构包括:(1)连接插件Connection Plugines。这一插件主要功能为实现被监控端的通信。(2)主机目录Bost Inventory。这一插件主要功能为制定操作主机,配置文件中定义需要监控的主机。(3)Service模块、Corn功能模块等。(4)能够通过插件实现对日志的记录。(5)剧本Playbook。Playbook在执行多个任务时,能够实现在一个节点运行多个任务。

1.2 Ansible运行流程

Ansible和Ansible—Platbook的运行流程为:Use →Playbook→Ansible→Play1/CustcmModles、Play2/CoreModels、Play3/Plugins→HostInventory→SSH Kerberos LDAP → Hosts/Networking。运行流程如图1所示。

图1 运行流程

在用户启动Ansible或Ansible—Playbooks时,用户能够在服务器显示终端输入Ansible的Ad—Hoc命令集,比如-V,--VERBOSE为需要输出更为详细的执行命令;-m NAME,--module-name=NAME表示指定执行使用的模块。Ansible中常见的命令集较多,需要用户熟练掌握相关命令。在输入命令集后,Ansible会按照实现编码完成的规则将Playbooks进行逐一拆解,之后按照命令集将play转化为Ansible可以识别的任务命令,使得任务命令称为Task;Task的实现取决于Ansible模块和插件;不同的模块与不同的插件在任务执行过程时具有不同功能;按照Invertory中的定义主机列表,利用SSH将任务集和临时命令文件传输到远程客户端中执行,执行结果能够自动化返回;在结果能够永久存储的情况下,系统会自动保存命令。如果为临时性结果,系统会自动将制定后的临时文件删除[2]。

因为Ansible具有较多的命令,用户使用难度较大,需要用户熟练地掌握Ansible各种命令形式。为了提高系统运行管理效率,需要对Ansible进行二次开发,按照需求开发基于Ansible的新自动化运维系统,从而降低Ansible运维系统运行难度。Hosts为不具有扩展名的系统文件,通过对Hosts的管理和分组,对其进行合理配置;Hosts状态能够反映出Ansible的服务器种类、服务器数量以及服务器协议等多种信息;在应用Ansible时能够同时操作一个分组中的多个Hosts主机,小组之间利用文件配置构成连接;为了完成对Hosts主机的批量运行命令操作,需要在Hosts主机中安装通信软件,通常情况下Windows系统安装Winrm软件;Linus系统安装SSH软件;在确定运行后,系统会将脚本传输到Hosts的目录中,之后自动运行脚本;在对系统进行测试的过程中,能够明确Hosts的脚本是否运行成功。在脚本运行成功的情况下,系统会自动返回Success,说明该系统通过测试。在对Hosts进行分组管理时,能够对Hosts的类别进行添加或删除操作,脚本能够体现出Hosts的运行情况[3]。

本文以电力企业的信息化系统建设为例,设计开发一种能够应用于电力企业系统故障预测的系统。

3.1 基础数据分析

因为电力企业内部电力设备较多,比如变压器、发动机以及压缩机等,不同品牌的电力设备的参数、使用时间、型号等都可以作为系统的基础数据,数据需要电力企业结合实际情况进行管理,同时需要电力企业通过数据服务器将数据进行同步处理,使得数据能够统一存储到调度中心,之后实现统一化的数据管理与分析。电力企业的设备在运行过程中会产生大量数据,且数据较为复杂,更新速度较快,对于系统数据存储空间要求较高。以Ansible为基础的自动化运维信息细化系统产生的数据也是过程数据的重要组成部分,能够体现批量操作的时间、操作频率、操作类别以及作用等,数据具有极高的使用价值,能够为电力系统的故障预测提供科学的数据支持[4]。

3.2 基于Ansible的故障预测系统结构分析

为了全面提高对电力系统故障预测的准确性,需要提高Ansible自动化运维信息系统的运行效率和稳定性,所以需要结合电力系统的实际情况开发设计相应的子系统,使其能够满足电力系统故障预测需求。

本次所开发的Ansible故障预测系统结构主要包括主站系统和子站系统,具有明显的功能差异。子站系统主要功能是对电力系统运行数据的初次采集,并将所采集的数据传输到主站系统中;主站系统在获取对应的数据后,会自动运行数据清洗、数据筛选、数据分列以及数据排序等功能操作,通过对电力系统运行数据的分析,则能够对电力系统故障进行预测,将其输送到Ansible自动化运维信息系统中。以某电力企业主要应用的Scada/EMSD电网自动化调度系统为例,该调度系统能够实时调度大量的电力网络信息,以Scada/EMSD电网自动化调度系统为基础,能够确保电力系统稳定运行,提高电网调度合理性,是电力企业系统运行质量的重要保障。在Scada/EMSD电网自动化调度系统中,本文设计开发了防火墙防护系统,将子系统配置在安全监控区域内,系统数据具有实时传输功能。该系统能够有效拒绝所有监控和组网操作,从而提高系统运行安全性。本次系统设计以Windows操作系统为子系统的运行环境。该操作系统较为稳定,能够有效抵御病毒和网络攻击[5]。为了提高系统安全性,本设计增加密码系统,密码包括0~9数字、小写字母、大写字母以及特殊字符,共计94个字符组成素材库,密码长度需要设置在8~16位范围内。设置密码能够提高系统运行的安全性。

3.3 系统预测流程分析

本设计基于Ansible的电力系统故障预测包括一个主站模块和多个子站模块,子站模块能够对电力系统运行数据进行采集和初次分析,利用查询与流通功能将分析后的数据实时传递到主站模块;主站模块与子站模块之间采用TCP/IP通信协议,同时配备了备用的电话拨号传输方式,能够避免出现通信故障;主站在接收经过子站模块初次分析的数据后,需要完成对电力系统数据的二次分析和处理,并将无关数据进行清洗;采用带有IntelSGX功能的配置管理模块,分别对系统的预测进行测试,根据测试结果可以看出,带有IntelSGX功能的配置管理模块不同操作的预测平均时间能够减少0.186~0.232 s,占据总体耗时约5%~14%左右,能够降低系统运行时间,从而提高预测效率;数据在预处理区间,利用数据抽取、数据转换、数据清洗以及数据监控功能,则能够实现全面化的数据预处理目标;在数据抽取与数据抽取任务完成后,运行基于Ansible的自动化运维故障预测系统,在自动化运行故障系统所接收数据出现异常变化时,需要分析数据异常的具体原因,并对异常的数据进行及时处理,同时需要通过监控功能开展后续的数据预处理任务;针对发生故障频率较高的模块,企业需要将故障的具体原因进行全面记录,从而能够形成稳定的数据库,将其转化为Ansible故障预测系统的运行脚本;在将脚本加入信息化故障预测系统后,Ansible信息系统的故障数据库会不断丰富,从而能够降低故障预测错误率,提升故障预测结果准确性;通过对故障的预测与分析,能够有效缩短电力系统故障识别、诊断以及处理时间,且故障处理改变为提前预测,能够在电力系统故障发生前准确掌握,不仅能够降低系统故障运行维护难度,同时能够更为科学地处理Ansible系统故障[6]。此外,在测试过程中,运行服务器密码自动生成程序,可将其设定为8位、10位、12位、14位以及16位密码各运行50次,对生成密码所需的算法平均运输次数进行统计。根据测试结果可以看出,8~16位的密码算法平均生成次数未定在1.3左右,说明密码生成所需算法的次数基本相同,能够有效保护系统运行安全。

基于Ansible自动化运维的信息系统故障预测技术在电力企业信息系统管理中能够发挥出良好的运行效果。在后期运行过程中,经过数据积累所转化的脚本,能够丰富Ansible故障预测系统数据量,从而提升故障预测结果准确性,相比于传统的电力企业故障预测模式而言,能够做到提前发现、提前诊断以及提前处理,从而能够为电力企业信息化系统建设提供良好的支持。

通过上文的分析,将基于Ansible自动化运维的信息系统故障预测技术应用于电力企业中,能够准确、高效地识别出电力企业信息系统运行存在的多项故障问题,具有良好的效果。当前,部分企业在信息化系统故障管理方面,依然处于较为落后的状态,只能通过人工管理模式对其进行管控。这种故障管理模式较为被动,基本是在故障问题发生后才能识别,从而会对信息化系统运行造成很大影响。为此,研究人员需要采用科学的自动化故障预测技术,构建基于Ansible的自动化故障预测技术,将故障处理时间提前到故障发生前,从而能够在故障发生前对其进行控制与处理,降低故障发生率。

综上所述,本文全面阐述Ansible的基本架构以及运行流程,并对Ansible自动化运维系统搭建方式进行分析,同时以电力企业为例设计开发基于Ansible自动运维的故障预测技术,在实践应用中取得良好效果,希望能够对我国企业现代化信息系统建设起到一定的借鉴和帮助作用,不断提高信息化系统运行稳定性和安全性。

猜你喜欢 系统故障运维信息系统 建设工程招投标管理中智能化信息系统的运用建材发展导向(2022年6期)2022-04-18基于信息系统的计量标准管理科学与财富(2021年35期)2021-05-10基于项目化+翻转的物流信息系统课堂教学设计与实践现代信息科技(2021年21期)2021-05-07基于GPS的电力运维轨迹定位系统信息技术时代·上旬刊(2019年2期)2019-09-10IT运维管理系统的设计及应用科学导报·科学工程与电力(2019年33期)2019-09-10小电流接地系统故障定位技术研究科技与创新(2016年21期)2017-02-14110维保过程中几种常见问题的处理方式软件(2016年6期)2017-02-06高校校园有线广播系统故障多发的成因分析及解决建议价值工程(2016年36期)2017-01-11信息系统运行质量评估的研究与实现中国信息化·学术版(2013年1期)2013-05-28电子政务甲方运维管理的全生命周期信息化建设(2009年2期)2009-06-02

Tags: 信息系统   故障   自动化  

搜索
网站分类
标签列表