一种基于命令的网络设备自动化运维工具

2021-12-02 08:19魏小梅苗晶晶
科学技术创新 2021年32期
关键词:网络设备命令运维

魏小梅 傅 林 苗晶晶

(国网安徽省电力公司宿州供电公司,安徽 宿州 234000)

随着电网信息化程度不断提高和信息化新技术的发展及应用,电网行业对网络设备、主机设备、安全设备的巡检、配置管理等运维管理工作有了更高的要求。目前,宿州公司主要是通过人工手段对所有的设备进行定期巡检,造成人力资源的浪费,同时人工巡检难以及时准确地发现网络中潜在安全隐患和网络设备配置更改情况,不能满足对信息网络运行维护精益化管理要求。通过开发自动化运维管理工具达成以下目标:一是实现设备信息自动监测采集,使运维人员对公司整体设备运行情况快速感知;二是通过运维工具提供的配置参数模板对设备进行定时自动化巡检运维,及时发现各类设备及网络中存储问题和风险;三是提供海量运维日志的保存、整理及自动化分析功能,通过日志分析,进一步保障网络设备、主机设备、安全设备等稳定健康运行,提升用户体验感。本项目研究成果可应用于实现省市两级信息通信部门,项目可以在科技项目或者信息化项目中进行推广应用,也可以在信息安全或专项安全检查中使用。

1 工具原理及功能

本工具是一种基于命令的网络设备自动化运维工具,工具原理如下:

1.1 巡检标准制定

制定巡检项目类型,包括枚举类型、数值类型和查看类型,数值类型的巡检项目可设置项目告警线,通过告警上、下线判断是否发生告警,枚举类型的巡检项目通过匹配枚举值来判断指标是否正常,查看类型的巡检项目通过显示巡检值查看指标是否正常。

巡检项目及对应的巡检类型如下:

项目名称 项目类型CPU 指标项 数值类型内存指标项 数值类型端口流量指标项 数值类型风扇指标项 枚举类型端口配置指标项 查看类型硬件配置指标项 查看类型日志配置指标项 查看类型Vlan 配置指标项 查看类型Arp 配置指标项 查看类型CDP 配置指标项 查看类型

1.2 面向不同网络设备的巡检项目执行命令模板定义维护

本项目提出一种基于命令序列的网络设备巡检方法,通过建立命令模板并执行调用任务,从而对网络设备进行自动化巡检,本项目内置不同类别的命令模板,同时支持华为、思科、华三等多个厂家不同型号的网络设备,可通过参数适配不同类型的网络设备,获取具体巡检任务执行命令并通过SSH 通道完成响应的操作。巡检任务包括命令序列定义及巡检任务执行两部分:

步骤1:命令序列定义

巡检项目操作命令序列如下:

连接命令:通过ssh 方式连接网络设备;

输入密码:通过命令自动进行网络设备密码输入;

进入特权模式:切换网络设备模式,进入特权模式;

进入配置模式:切换网络设备模式,进入配置模式;

显示CPU 运行情况:显示当前网络设备的CPU 使用情况;

退出命令:退出网络设备控制命令行。

网络设备获取项目值命令序列由网络设备类型参数、各个基本命令定义及显示任务序列三部分组成,其中各个基本命令定义包括命令的执行内容、需要使用的公共参数以及命令执行结果的处理方式。

步骤2:巡检任务执行

基于已定义的命令序列模板,本工具根据网络设备配置信息和巡检项目的操作命令,执行巡检任务并获取巡检结果;

对项目的值用正则表达式匹配截取出系统中需要的巡检值;

根据项目类型来判断项目是否正常;保存巡检结果到数据库。

1.3 自动化巡检工具

自动化巡检工具执行步骤如下:

定期扫描巡检任务配置信息,如果筛选匹配当前时间需要执行的巡检任务,通过定时器进行触发并执行巡检任务,时间不匹配的任务不执行。

系统根据巡检任务关联的网络设备及对应的巡检项目,自动生成巡检命令集,然后通过ssh 的方式登录网络设备执行巡检命令。

巡检任务执行完成后,将巡检结果存储结果到数据库中,系统提供巡检结果分析功能及巡检报告导出功能。

如图1 所示系统分为展示层、应用层、数据层、服务层。

图1 工具总体架构图

展示层主要对工具管理端页面功能进行显示,展示层采用流行的前端渐进式响应框架如VUE+H5 进行开发,通过扁平化风格界面设计搭建清爽易用好用的工具管理端。本项目的界面展示端融合强大的可视化图表分析工具,构建自动可视化分析展示页面,提供各类报表导出功能,主要展示功能包括实时曲线和历史分析曲线分析等。

应用层主要提供工具的应用服务支撑,执行业务逻辑层,提供巡检方案制定、巡检报告自动生成、设备配置自动备份、检修工单管理、设备巡视结果展示等基础服务。

数据层主要进行数据存储,本项目使用MySql 数据库进行数据持久化存储,同时提供数据处理服务及数据接口服务。

服务层是后台服务通过SSH 连接到网络设备,发送巡检命令集,采集到巡检结果,存储数据到数据库。

本工具运行原理图如图2 所示,其主要包括五大部分:工具管理控制台、检测引擎、任务执行器、巡检结果分析、数据库持久化。

图2 工具运行原理图

控制台模块提供了管理端交互界面,用户登录系统管理端界面,建立标准化的巡检方案模板,并配置自动化巡检任务。

检测引擎模块和执行器模块是自动化巡检主要功能模块。检测引擎负责接收用户自动化检测请求,同时读取巡检任务配置信息,通过执行器进行定时巡检任务的执行,对不同型号的网络设备安全策略配置进行采集,设备主机执行完命令后,执行器取回巡检结果,系统提供巡检结果自动分析功能,通过分析生成巡检日报,日报显示的字段主要包括网络设备的巡检结果的状态、巡检时间和当天的巡检概况包括巡检次数、正常次数和异常次数,并且可以查看所有巡检异常的项目,帮助运维人员清楚的知道网络设备每天的运行概况。

巡检结果分析模块主要利用可视化工具进行各类网络设备的巡检情况的展示,图形上展示网络设备检修概况,通过可视化界面,快速查看网络设备的当前的运行概况。

数据库模块采用MySql 数据库技术对配置数据、系统数据、巡检任务数据、巡检结果数据等进行存储,为自动化运维工具提供运行支撑。

2 工具技术路线

2.1 网络设备自动化巡检运维是通过建立标准化的巡检命令模板,根据标准的巡检命令模板来执行巡检任务,对网络设备进行定期巡检,获取巡检结果并将结果持久化存储到数据库。

2.2 系统总体功能架构包含五个模块:巡检方案制定、巡检报告自动生成、设备配置自动备份、检修工单管理、设备巡视结果展示。

2.3 本系统逻辑架构分为展示层、应用层、数据层、服务层,界面展现采用Vue+H5 的方式,业务逻辑采用MVC 架构、SpringCloud 技术搭建微服务应用,数据库采用MySql 数据库,中间件采用Tomcat。

本工具可以由web 方式或客户端工具部署。

3 结论

本工具成果推广应用后,可实现对网络设备、主机设备、安全设备等运行情况自动化、实时性的在线监测、自动巡检,避免人工检查,提高监测效率,降低公司人力成本。

全面实现对网络中各类设备的巡检、感知与监控,满足对信息网络运行维护自动化、精细化管理的需要,保障设备安全、可靠、稳定运行,项目成果可推广到其他市县公司,具有很大的社会效益。

猜你喜欢
网络设备命令运维
网络设备的安装与调试课程思政整体设计
管理Windows10的PowerShell命令行使用记录
疫情就是命令 防控就是责任
基于GPS的电力运维轨迹定位系统
IT运维管理系统的设计及应用
解析Windows10的内部命令
优化网络设备维护提高数据通信传输质量
宝箱4
电子政务甲方运维管理的全生命周期