一种信息化平台监控采集系统的制作方法

文档序号:33776248发布日期:2023-04-18 23:08阅读:38来源:国知局
一种信息化平台监控采集系统的制作方法

本发明涉及容器性能采集监控,具体地说是一种信息化平台监控采集系统。


背景技术:

1、kubernetes,简称k8s,可用于管理云平台中多个主机上的容器化的应用。通过部署容器方式实现应用部署,每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会相互影响,能区分计算资源。相对于虚拟机,容器能快速部署,由于容器与底层设施、机器文件系统解耦的,所以它能在不同云、不同版本操作系统间进行迁移。

2、监控是k8s集群运维管理中非常重要的工作,及时并全面的收集集群内部的运行数据,是观察集群运行状态、了解集群运行趋势、并根据一定规则进行告警通知的基础。但是,对于容器数量较多的集群,现有的监控方式容易出现网关压力过大、监控数据丢失的问题。

3、故如何实现对k8s集群容器的精细化管理,方便排查问题出处并及时处理问题是目前亟待解决的技术问题。


技术实现思路

1、本发明的技术任务是提供一种信息化平台监控采集系统,来解决如何实现对k8s集群容器的精细化管理,方便排查问题出处并及时处理问题的问题。

2、本发明的技术任务是按以下方式实现的,一种信息化平台监控采集系统,该系统包括数据收集提取单元和监控告警单元,数据收集提取单元包括数据收集层及数据提取层,监控告警单元包括数据展示层、告警规则配置层、告警发生层和告警显示层;

3、其中,数据收集层用于收集主机数据、系统数据及容器数据,将收集到的数据进行规范化处理,并进行存储;

4、数据提取层用于通过部署时编写好的yaml文件内的告警规则语言,将数据收集层获取到的数据进行规格化和过滤处理,提取需要的数据到监控告警模块,prometheus把收集到的数据通过exporter保存统一格式的数据存储到prometheus自带的时序数据库,用于grafana调用;

5、数据展示层使一个web界面,用于将数据收集层获取到的数据进行统一展示,展示的方式包括曲线图、柱状图及饼状态,通过将数据图形化,可以帮助运维人员了解一段时间内主机或网络的运行状态和运行趋势,并作为运维人员排查问题或解决问题的依据;

6、告警规则配置层用于配置prometheus的yml配置文件prometheus.yml中所有设定资源的内置告警规则,并推送告警信息;

7、告警事件发生层用于将告警事件进行实时记录以及通知用户;

8、用户展示层是一个web展示界面,用于将监控统计结果及告警故障结果进行统一展示。

9、作为优选,所述数据收集层收集数据的方式具体如下:

10、①、根据实际业务及资源情况需求,搭建好kubernetes集群,把集群作为监控目标;

11、②、在集群内安装采集组件exporter、cadvisor或telegraf,实现对集群性能数据的获取,集群性能数据包括cpu、内存、磁盘及网络的资源数据信息;

12、③、通过exporter采集不同维度的监控指标,并通过prometheus支持的数据格式暴露出来,prometheus定期pull数据并用grafana展示;

13、④、通过cadvisor采集容器及pod相关的性能指标数据,并通过暴露的metrics接口用prometheus抓取;

14、⑤、通过prometheus-node-exporter采集主机的性能指标数据,并通过暴露的metrics接口用prometheus抓取。

15、更优地,所述prometheus搭建安装过程具体如下:

16、(1)、把prometheus镜像打包好并且放到集群镜像仓库中,用于后续prometheus的安装;

17、(2)、在搭建好的kubernetes集群中创建名字为monitoring的命名空间,用于存放prometheus运行的容器;

18、(3)、给monitoring分配集群的读取权限,用于prometheus通过kubernetes的api获取集群的资源相关信息;

19、(4)、在monitoring创建configmap用于存储prometheus容器的配置以及kubernetes集群中动态发现pod和运行中的服务的配置;

20、(5)、创建deployment模式的prometheus,通过yaml文件安装prometheus;

21、(6)、连接prometheus,通过yaml文件把prometheus内部端口映射成外部端口,用于kubernetes集群自动连接到prometheus,即prometheus部署成功。

22、更优地,prometheus的工作过程具体如下:

23、(1)、prometheus server定期从配置好的exporters中拉metrics;

24、(2)、prometheus server在本地存储收集到的metrics,并运行已定义好的alert.rules,记录新的时间序列或者向grafana推送警报;

25、(3)、grafana根据配置文件,对接收到的警报进行处理,发出告警;

26、(4)、在图形界面中,可视化采集数据。

27、作为优选,所述数据展示层采用grafana工具,grafana工具部署过程具体如下:

28、(1)、把grafana镜像打包好并且放到集群镜像仓库中,用于后续grafana的安装;

29、(2)、通过yaml文件安装grafana;

30、(3)、连接grafana,通过yaml文件把grafana内部端口映射成外部端口,用于kubernetes集群自动连接到grafana;

31、(4)、使用管理员账号登录grafana,并且配置prometheus的数据源;

32、(5)、编辑好需要图表类型的json文件,导入到grafana,用于调用各个图表的样式,显示各个数据类型的图表;

33、(6)、连接grafana,即可看到相关默认模式的监控数据,即grafana部署成功。

34、作为优选,所述告警规则配置层包括告警规则配置模块、接收模块、发出模块和消息通知模块;

35、其中,告警规则配置模块用于配置prometheus的yml配置文件prometheus.yml中所有设定资源的内置告警规则;

36、接收模块用于在数据收集提取单元租户侧集群上抓取容器的瞬时指标数据触发告警规则时,接收数据收集提取单元发送的告警信息,并将告警信息推送至警报管理组件alertmanager;

37、发出模块用于将警报管理组件alertmanager中的告警信息向消息通知模块发送;

38、消息通知模块用于根据预先设置的消息发送渠道的账号密码、主题以及主题的订阅终端,将告警信息发送至相应的订阅终端。

39、更优地,所述告警规则配置模块加载配置后,根据k8s动态发现机制访问数据收集提取单元地址和指标抓取规则,周期性的抓取各数据收集提取单元的瞬时指标,prometheus根据告警规则,周期性的计算告警规则表达式是否达到指标阈值:

40、当告警规则表达式满足条件时,prometheus向alertmanager推送告警信息;

41、其中,告警信息包括容器的uuid、容器名称、所在节点、设定监控指标的阈值及监控指标当前的瞬时值。

42、更优地,所述消息通过之模块的消息发送渠道包括邮箱、短信、钉钉及微信。

43、本发明的信息化平台监控采集系统具有以下优点:

44、(一)本发明对k8s集群器资源进行监控并进行告警,可以实现监控集群服务器容器的cpu/内存等,并在容器组被重新调度后,可以不间断的对容器组资源进行监控,可以对不同副本情况设置下的应用服务进行监控,并获取到多个容器组的原始及聚合监控数据,然后将监控到的数据实时以告警方式发送至用户,并以不同方式展示这些监控数据;从而实现对k8s集群容器的精细化管理,方便排查问题出处并及时处理问题;

45、(二)本发明对k8s容器资源,使用监控采集组件exporter进行数据采集,并分配集群的读取权限,以便可以通过kubernetes的api获取集群的资源相关信息;

46、(三)本发明实现了对k8s集群容器的精细化管理,方便排查问题出处并及时处理问题,同时有利于理解容器的系统行为,实现资源使用情况的监控。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1