一种基于电网内网的智能运维管理平台的制作方法

未命名 09-17 阅读:73 评论:0


1.本发明是基于运用node-exporter和mysql-exporter工具,使用java语言开发的一种运用于电网内网服务、服务器以其他硬件设备的监控、展示以及自动化运维平台,具体为一种基于电网内网的智能运维管理平台。


背景技术:

2.目前开源的node-exporter和mysql-exporter是分别针对服务器和数据库mysql的指标抓取agent,但是这两款程序无法管理我们的服务器和数据库。在电网内网的环境下也无法集中化部署,同时,业务上一些设备异常告警和节点下线也无法同服务器和数据库等组件的告警集中展示。该技术可以通过node-exporter和mysql-exporter将底层的服务器和数据库告警写入本地数据库,并且能将业务上已经入库的设备异常告警信息获取汇总一起,集中展示。同时也展示基础服务的一些关键指标,便于现场运维人员能一个界面获知所有业务的相关业务信息,基础服务信息,基础设备信息。针对已经出现的故障场景,通过java程序能达到界面一键运维的目的。


技术实现要素:

3.为解决上述技术问题,本发明提出了一种基于电网内网的智能运维管理平台,集成了数据的抓取、展示、入库以及异常运维等较全的功能,并将业务的告警和基础服务的告警融入到一起,更加方便使用者使用。
4.为实现上述目的,本发明采取的技术方案是:
5.一种基于电网内网的智能运维管理平台,其特征在于:包括有主控制器、node采集模块、mysql采集模块、redis模块、mq模块以及设备告警信息模块,所述node采集模块安装在部署服务的服务器内且连接主控制器,所述mysql采集模块安装在部署mysql服务的服务器内且连接主控制器,所述redis模块通过jedis连接主控制器,通过15s发送ping指令,服务器响应pong来获取redis模块的存活状态,所述主控制器上设置有emq订阅接口,所述mq模块和设备告警信息模块分别通过emq订阅接口,所述mq模块的服务状态为主动提供数据,所述设备告警信息模块的设备告警信息由emq提供,还包括web界面展示,所述web界面展示连接在主控制器上,所述主控制器向web界面展示提供展示的数据,
6.所述主控制器分别获取node采集模块、mysql采集模块、redis模块、mq模块以及设备告警信息模块的基本数据,然后采用json方式加工,然后通过hikaricp将加工之后的基本数据存至本地数据库,或存至指定的其他数据库中;
7.对系统、数据库、emq以及设备告警信息分别对应设置四张主表,用于存储基础巡检的设备、服务或者系统台账,系统台账通过手动添加,并可手动设置告警阈值;
8.巡检信息设置有四张巡检表,针对设备、服务或者服务器有对应表以及字段存储基础巡检数据,设备告警信息则由对应mysql行触发器去判断基本数据是否为异常的设备告警信息,并存至设备告警信息表中;
9.触发器针对每张主表的分类阈值去判断,大于或者等于阈值信息则被行触发器存入设备告警信息表,按照存储要求,保存一段时间的历史数据,根据jdbctemplate技术,跟quartz的定时任务,检查当前时间是否按照预设频率进行下一个周期,当到了新的一个周期时,就创建一个新的设备告警信息表,后续的数据则保存到新表中,
10.根据mysql采集模块的落地数据,依照预设的频率加载当前信息至前端web界面展示,此处保留设置,当数据量过大,频率较高,则采用redis模块去热加载部分数据,防止mysql模块过大的数据io。
11.作为本发明的优选技术方案:所述node采集模块运行于部署服务的服务器内,并通过单进程运行方式去定时获取到服务器cpu、内存以及磁盘信息。
12.作为本发明的优选技术方案:所述node采集模块会定时获取服务器的基础信息,并在本地服务器开放一个端口,通过普通http服务输送到主控制器中。
13.作为本发明的优选技术方案:所述mysql采集模块运行于部署mysql服务的服务器,通过单进程运行方式去绑定一个端口,并通过mysql客户端接入mysql服务,执行定制的sql去获取mysql运行状态数据,即获取服务基础数据,并通过普通的http服务输送到主控制器中。
14.作为本发明的优选技术方案:当单台服务器运行多实例mysql服务时,启用多进程,多端口的exporter服务,每一个进程每一个端口对应一个mysql服务。
15.作为本发明的优选技术方案:所述设备告警信息模块的设备告警信息由emq提供,并通过普通的http服务输送到主控制器中。
16.作为本发明的优选技术方案:当设备告警信息模块的设备信息数据量较大时,通过emq中转设备信息数据,并通过在主控制器上增加emq订阅接口,即可将设备信息数据接入主控制器中。
17.作为本发明的优选技术方案:所述web界面展示采用typescript语言编写,样式预编译器使用的是sass,开发使用的是vuejs框架,构建使用的是vite/esbuild构建工具。
18.作为本发明的优选技术方案:所述主控制器在运行hikaricp工具中,可以配置定时执行任务和对应处理脚本,所述定时执行任务包括轮询自动触发任务和web界面手动触发任务。
19.作为本发明的优选技术方案:所述预设频率为1:月、2:季度、3:半年、4:年。
20.与现有技术相比,本发明的有益效果为:
21.1、本发明集成了数据的抓取、展示、入库、异常运维等较全的功能在同一平台上,通过平台可直接观看与操作;
22.2、本发明将业务的告警和基础服务的告警融入到一起,使用者在操作时会更加方便、快捷。
23.3、本发明将运维管理界面化,集中了多种功能,观察和使用都会更加方便快捷。
附图说明
24.图1本发明原理框架图;
25.图2是本发明中主控制器内主程序的代码图;
26.图3是本发明的登录界面图;
27.图4是本发明中的四张主表图;
28.图5是本发明中组件的表格图;
29.图6是本发明中数据库选择图;
30.图7是本发明中系统选择图;
31.图8是本发明中摄像设备控制程序的代码图1;
32.图9是本发明中摄像设备控制程序的代码图2。
具体实施方式
33.下面结合附图与具体实施方式对本发明作进一步详细描述:
34.如图1-7所示:本发明提出了一种基于电网内网的智能运维管理平台,包括有主控制器、node采集模块、mysql采集模块、redis模块、mq模块以及设备告警信息模块,所述node采集模块安装在部署服务的服务器内且连接主控制器,所述mysql采集模块安装在部署mysql服务的服务器内且连接主控制器,所述redis模块通过jedis连接主控制器,通过15s发送ping指令,服务器响应pong来获取redis模块的存活状态,所述主控制器上设置有emq订阅接口,所述mq模块和设备告警信息模块分别通过emq订阅接口,所述mq模块的服务状态为主动提供数据,所述设备告警信息模块的设备告警信息由emq提供,还包括web界面展示,所述web界面展示连接在主控制器上,所述主控制器向web界面展示提供展示的数据,
35.所述主控制器分别获取node采集模块、mysql采集模块、redis模块、mq模块以及设备告警信息模块的基本数据,然后采用json方式加工,然后通过hikaricp将加工之后的基本数据存至本地数据库,或存至指定的其他数据库中;
36.对系统、数据库、emq以及设备告警信息分别对应设置四张主表,用于存储基础巡检的设备、服务或者系统台账,系统台账通过手动添加,并可手动设置告警阈值;
37.巡检信息设置有四张巡检表,针对设备、服务或者服务器有对应表以及字段存储基础巡检数据,设备告警信息则由对应mysql行触发器去判断基本数据是否为异常的设备告警信息,并存至设备告警信息表中;
38.触发器针对每张主表的分类阈值去判断,大于或者等于阈值信息则被行触发器存入设备告警信息表,按照存储要求,保存一段时间的历史数据,根据jdbctemplate技术,跟quartz的定时任务,检查当前时间是否按照预设频率进行下一个周期,当到了新的一个周期时,就创建一个新的设备告警信息表,后续的数据则保存到新表中,
39.根据mysql采集模块的落地数据,依照预设的频率加载当前信息至前端web界面展示,此处保留设置,当数据量过大,频率较高,则采用redis模块去热加载部分数据,防止mysql模块过大的数据io。
40.node-采集模块包括node-exporter,该模块运行于部署服务的服务器,通过单进程运行方式去定时获取到服务器cpu,内存,磁盘等信息。该模块会定时获取服务器基础信息,并在本地服务器开放一个端口,通过普通http服务向外提供服务器基础数据。该模块访问系统文件,以及部分文件句柄,对系统的性能损耗影响较小,可忽略不计。一台服务器仅运行一个进程,内存消耗10k左右。
41.mysql采集模块包括mysql-exporter,该模块运行于部署mysql服务的服务器,同node-exporter程序一样,通过单进程,绑定一个端口,通过mysql客户端接入mysql服务,执
行定制的sql去获取mysql运行状态数据,通过普通的http服务向外提供mysql基础数据。定制的sql仅获取服务基础数据,对mysql服务性能影响较小,约莫0.5%的性能损耗,内存消耗约莫16k。对于单台服务器运行多实例mysql服务,即采取启用多进程,多端口的exporter服务,每一个进程每一个端口对应一个mysql服务。
42.redis模块的信息采集为被动提供采集数据到主控制器,主要是由主控制器通过jedis连接,通过15s发送ping指令,服务器响应pong来获取redis服务的存活状态。
43.mq模块服务的状态为主动提供采集数据到主控制器,emq目前主流版本原生自带websockets,主控制器通过emq的websockets即可获取emq流量信息,服务的存活状态,消息的丢失率等信息。
44.设备告警信息模块的设备告警信息由emq服务提供,当前设备信息数据量较大,源生架构本身即可通过emq中转设备数据,通过主控制器增加emq的订阅接口,即可将设备信息接入主控制器。
45.如图8和图9所示,摄像设备是通过获取设备的坐标,跟目标点的坐标的计算偏移角度,计算两个向量的2d视角。只要角度偏移情况超出了允许的范围,本发明就需要产生告警消息,提示摄像设备的偏移查出了阈值。
46.获取摄像设备的角度:
47.a)根据摄像设备当前的坐标位置,跟目标点的坐标的差值,计算出转动角度。
48.b)获取角度的方式,在xyz坐标系中,xz组成的平面中,根据x方向坐标,跟z方向坐标计算角度anglex;再由y方向跟z方向坐标计算角度angley;通过anglex与angley可以得到一个向量。
49.如图7所示,主控制器内的主程序采用java语言编写,基本功能分为四个区域,一是基本数据接入,二是数据的交互,存至本地的mysql数据库,三是向web界面提供展示的数据,四是针对预定的告警执行相关任务。
50.数据的交互:
51.各模块的基本数据均由主控制器获取,获取后采用json方式加工,存至本地数据库,亦可存至指定的其他数据库,数据库schema为dsa5200_monitor,针对系统、数据库、emq以及设备信息分别设计四张主表,存储基础巡检的设备,服务或者系统台账,此系统台账通过手动添加,并可手动设置告警阈值。另外巡检信息亦设计四张巡检表,针对设备,服务或者服务器有对应表以及字段存储基础巡检数据。异常告警信息则由对应mysql行触发器去判断基础数据是否为异常的设备告警信息,并存至设备告警信息表。
52.触发器针对每张主表的分类阈值去判断,大于或者等于阈值信息则被行触发器存入设备告警信息表。按照存储要求,保存一段时间的历史数据;根据jdbctemplate技术,跟quartz的定时任务,检查当前时间是否按照频率(1:月、2:季度、3:半年、4:年)进行下一个周期,当到了新的一个周期,就创建一个新的设备告警信息表,后续的数据保存到新的设备告警信息表中。从而实现数据的水平拆分,减少单表的数据量。
53.数据的获取类似数据的落地,根据mysql的落地数据,依照预设的频率加载当前信息至前端界面展示。此处保留设置,当数据量过大,频率较高,我们可以采用redis去热加载部分数据,以防止mysql过大的数据io。
54.管理任务:
55.主控制器通过性能较强的连接池技术
‑‑
hikaricp,将各个系统的检测数据快速的保存到mysql数据库中。在运行工具中,可以配置定时执行任务、对应处理的脚本技术;定时任务可以通过quartz技术,进行配置定时任务。通过jschutils工具类,根据提供的ip、端口、用户名和密码,跟服务器的底层进行交互,可以拼接、执行命令语句。定时任务采用两种,一种是轮询自动触发任务,一种是web界面手动触发。两者都是预置的任务,比如定时或者手动清理服务日志,服务的手动重启,mysqlbinlog的自动清理手动触发清理等等。
56.web界面展示:
57.主要采用typescript语言编写,样式预编译器使用的是sass,开发使用的是vuejs框架,构建使用的是vite/esbuild构建工具。图表展示使用的是zrender技术;通过http请求从服务端拿到告警信息的数据、系统选择的数据、数据库选择的数据组件的从而进行渲染到页面。对页面进行选择后,把选择项通过请求的方式传递到服务端。前端拿到数据后,渲染到浏览器,采用的设计模式是mvvm模式,从服务端拿到数据后,对数据进行绑定,届时进行渲染,渲染的同时监测浏览器性能的变化,从而进行优化。
58.本发明集成了数据的抓取、展示、入库、异常运维等较全的功能在同一平台上,通过平台可直接观看与操作;
59.本发明将业务的告警和基础服务的告警融入到一起,使用者在操作时会更加方便、快捷。
60.本发明将运维管理界面化,集中了多种功能,观察和使用都会更加方便快捷。
61.以上所述,仅是本发明的较佳实施例而已,并非是对本发明作任何其他形式的限制,而依据本发明的技术实质所作的任何修改或等同变化,仍属于本发明所要求保护的范围。

技术特征:
1.一种基于电网内网的智能运维管理平台,其特征在于:包括有主控制器、node采集模块、mysql采集模块、redis模块、mq模块以及设备告警信息模块,所述node采集模块安装在部署服务的服务器内且连接主控制器,所述mysql采集模块安装在部署mysql服务的服务器内且连接主控制器,所述redis模块通过jedis连接主控制器,通过15s发送ping指令,服务器响应pong来获取redis模块的存活状态,所述主控制器上设置有emq订阅接口,所述mq模块和设备告警信息模块分别通过emq订阅接口,所述mq模块的服务状态为主动提供数据,所述设备告警信息模块的设备告警信息由emq提供,还包括web界面展示,所述web界面展示连接在主控制器上,所述主控制器向web界面展示提供展示的数据,所述主控制器分别获取node采集模块、mysql采集模块、redis模块、mq模块以及设备告警信息模块的基本数据,然后采用json方式加工,然后通过hikaricp将加工之后的基本数据存至本地数据库,或存至指定的其他数据库中;对系统、数据库、emq以及设备告警信息分别对应设置四张主表,用于存储基础巡检的设备、服务或者系统台账,系统台账通过手动添加,并可手动设置告警阈值;巡检信息设置有四张巡检表,针对设备、服务或者服务器有对应表以及字段存储基础巡检数据,设备告警信息则由对应mysql行触发器去判断基本数据是否为异常的设备告警信息,并存至设备告警信息表中;触发器针对每张主表的分类阈值去判断,大于或者等于阈值信息则被行触发器存入设备告警信息表,按照存储要求,保存一段时间的历史数据,根据jdbctemplate技术,跟quartz的定时任务,检查当前时间是否按照预设频率进行下一个周期,当到了新的一个周期时,就创建一个新的设备告警信息表,后续的数据则保存到新表中,根据mysql采集模块的落地数据,依照预设的频率加载当前信息至前端web界面展示,此处保留设置,当数据量过大,频率较高,则采用redis模块去热加载部分数据,防止mysql模块过大的数据io。2.根据权利要求1所述的一种基于电网内网的智能运维管理平台,其特征在于:所述node采集模块运行于部署服务的服务器内,并通过单进程运行方式去定时获取到服务器cpu、内存以及磁盘信息。3.根据权利要求2所述的一种基于电网内网的智能运维管理平台,其特征在于:所述node采集模块会定时获取服务器的基础信息,并在本地服务器开放一个端口,通过普通http服务输送到主控制器中。4.根据权利要求1所述的一种基于电网内网的智能运维管理平台,其特征在于:所述mysql采集模块运行于部署mysql服务的服务器,通过单进程运行方式去绑定一个端口,并通过mysql客户端接入mysql服务,执行定制的sql去获取mysql运行状态数据,即获取服务基础数据,并通过普通的http服务输送到主控制器中。5.根据权利要求4所述的一种基于电网内网的智能运维管理平台,其特征在于:当单台服务器运行多实例mysql服务时,启用多进程,多端口的exporter服务,每一个进程每一个端口对应一个mysql服务。6.根据权利要求1所述的一种基于电网内网的智能运维管理平台,其特征在于:所述设备告警信息模块的设备告警信息由emq提供,并通过普通的http服务输送到主控制器中。7.根据权利要求6所述的一种基于电网内网的智能运维管理平台,其特征在于:当设备
告警信息模块的设备信息数据量较大时,通过emq中转设备信息数据,并通过在主控制器上增加emq订阅接口,即可将设备信息数据接入主控制器中。8.根据权利要求1所述的一种基于电网内网的智能运维管理平台,其特征在于:所述web界面展示采用typescript语言编写,样式预编译器使用的是sass,开发使用的是vuejs框架,构建使用的是vite/esbuild构建工具。9.根据权利要求1所述的一种基于电网内网的智能运维管理平台,其特征在于:所述主控制器在运行hikaricp工具中,可以配置定时执行任务和对应处理脚本,所述定时执行任务包括轮询自动触发任务和web界面手动触发任务。10.根据权利要求1所述的一种基于电网内网的智能运维管理平台,其特征在于:所述预设频率为1:月、2:季度、3:半年、4:年。

技术总结
本发明提出了一种基于电网内网的智能运维管理平台,包括有主控制器、Node采集模块、MySQL采集模块、Redis模块、MQ模块以及设备告警信息模块,所述Node采集模块安装在部署服务的服务器内且连接主控制器,所述MySQL采集模块安装在部署MySQL服务的服务器内且连接主控制器,所述Redis模块通过jedis连接主控制器,所述主控制器上设置有emq订阅接口,所述MQ模块和设备告警信息模块分别通过emq订阅接口,所述Mq模块的服务状态为主动提供数据,所述设备告警信息模块的设备告警信息由emq提供,还包括Web界面展示,所述Web界面展示连接在主控制器上,本发明集成了数据的抓取、展示、入库以及异常运维等较全的功能,并将业务的告警和基础服务的告警融入到一起,更加方便使用者使用。用。用。


技术研发人员:王少华 陶富 施伟 王冠冠 张存海 叶亚飞 戴金林
受保护的技术使用者:齐丰科技股份有限公司
技术研发日:2023.06.20
技术公布日:2023/9/16
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐