CN112084098A - 资源监控***及工作方法 - Google Patents
资源监控***及工作方法 Download PDFInfo
- Publication number
- CN112084098A CN112084098A CN202011132356.2A CN202011132356A CN112084098A CN 112084098 A CN112084098 A CN 112084098A CN 202011132356 A CN202011132356 A CN 202011132356A CN 112084098 A CN112084098 A CN 112084098A
- Authority
- CN
- China
- Prior art keywords
- monitoring
- data
- cluster
- node
- index data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3034—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种资源监控***及工作方法,该资源监控***包括:数据采集模块,用于采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块;数据处理模块,用于接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;数据存储模块,用于存储数据处理模块接收到的监控指标数据。Prometheus是一款开源的监控告警***且自带时序数据库,基于Golang编写,性能强大;通过多种类型exporter进行监控指标采集,支持物理/虚拟节点、网络节点、容器集群、中间件/数据库、应用等多种混合资源的监控。
Description
技术领域
本发明涉及电子信息监控技术领域,尤其涉及一种资源监控***及工作方法。
背景技术
传统IT监控***或产品只能监控单一资源或几种资源,例如网络监控、服务器监控、虚拟机监控、中间件监控、数据库监控、应用监控等。容器是最近几年刚刚发展起来的虚拟化技术,市场上针对容器的监控方案有限,能监控传统***的产品无法监控容器,而原生容器的监控方案,如cAdvisor,heapster,metrics-server等,又无法脱离容器。当前企业***大多是容器与云平台虚拟机混合部署、开源与闭源组件混合使用,却并没有一种统一的产品或方法能同时支持上述混合资源的监控。
发明内容
本发明实施例提供一种资源监控***,用以支持混合资源的监控,该***包括:
数据采集模块,用于采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块;所述数据采集模块包括:多类型指标采集器exporter和PushGateway集群;
数据处理模块,用于接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;
数据存储模块,用于存储数据处理模块接收到的监控指标数据;所述数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。
本发明实施例还提供一种资源监控***的工作方法,用以支持混合资源的监控,该工作方法包括:
数据采集模块采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块;其中,数据采集模块包括:多类型指标采集器exporter和PushGateway集群;
数据处理模块接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;
数据存储模块存储数据处理模块接收到的监控指标数据;其中,数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述资源监控***的工作方法。
本发明实施例也提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述资源监控***的工作方法的计算机程序。
本发明实施例中,通过设置数据采集模块,采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块,数据采集模块包括:多类型指标采集器exporter和PushGateway集群;通过设置数据处理模块,用于接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;通过设置数据存储模块,存储数据处理模块接收到的监控指标数据,数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。Prometheus是一款开源的监控告警***且自带时序数据库,基于Golang编写,性能强大;通过多种类型exporter(指标采集器)进行监控指标采集,支持物理/虚拟节点、网络节点、容器集群、中间件/数据库、应用等多种资源,从而满足混合资源的监控需求,支持混合资源的监控。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中资源监控***的结构示意图。
图2为本发明具体实施例中数据处理模块102的结构示意图。
图3为本发明具体应用实施中的资源监控***的部署框架示意图。
图4为本发明具体应用实施中的监控数据的采集、处理和存储的流程示意图。
图5为本发明实施例中资源监控***的工作方法示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种资源监控***,用以支持混合资源的监控,如图1所示,该资源监控***包括:
数据采集模块101,用于采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块;其中,数据采集模块包括:多类型指标采集器exporter和PushGateway集群;
数据处理模块102,用于接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;
数据存储模块103,用于存储数据处理模块接收到的监控指标数据;其中,数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。
本发明实施例中,通过设置数据采集模块,采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块,数据采集模块包括:多类型指标采集器exporter和PushGateway集群;通过设置数据处理模块,用于接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;通过设置数据存储模块,存储数据处理模块接收到的监控指标数据,数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。Prometheus是一款开源的监控告警***且自带时序数据库,基于Golang编写,性能强大;通过多种类型exporter(指标采集器)进行监控指标采集,支持物理/虚拟节点、网络节点、容器集群、中间件/数据库、应用等多种资源从而满足混合资源的监控需求,支持混合资源的监控。
其中,Prometheus是一款开源的监控告警***且自带时序数据库,基于Golang编写,性能强大,通过多种类型exporter(称为指标采集器)支持物理/虚拟节点、网络节点、容器集群、中间件/数据库、应用监控指标采集。对于官方不能满足的指标采集对象,可以通过其提供的多种语言客户端二次开发编写exporter采集器,满足混合资源监控需求。
多种类型exporter负责对监控对象进行监控指标的实际采集,通过二次开发,能够扩展exporter的采集对象的范围。
PushGateway是Prometheus生态中一个重要工具,采用Pull模式,在监控业务数据的时候,将不同数据汇总,由Prometheus统一收集。
具体实施时,数据处理模块102,如图2所示,包括:
Prometheus Server集群201,用于接收监控指标数据,对监控指标数据进行汇聚和过滤的预处理后,将满足预设的告警规则的监控指标数据,形成告警信息发送至Prometheus的告警模块Alertmanager;
Consul集群202,用于为监控目标进行服务注册与发现,以使得PrometheusServer集群根据在Consul中注册的监控目标,为其建立HTTP通道以Pull方式远程接收到监控指标数据。
Prometheus的告警模块Alertmanager203,用于接收告警信息,进行告警存储、去重和抑制,触发hook(钩子函数)操作实现对相应资源的告警。
其中,Prometheus Server集群,包括多台Prometheus Server(监控中心),每三台Prometheus Server为一组监控中心,每组监控中心标记为Worker节点,同时在上层部署Primary节点,Primary节点下面接Worker节点,形成Primary-Worker的金字塔模式。
原生Prometheus的单台Server支持大约1000万/秒的指标处理速度,当超过该量级时,通常使用多台Server形成Primary-Worker的金字塔模式方案进行横向扩展,但对于每个Worker仍然是单节点部署,容易出现单点故障。因而,本发明实施例在Primary-Worker模式基础上,增加了Keepalived对每个Worker进行多副本部署,同时解决了Server端规模和高可用的问题。
其中,Keepalived是交换机制软件,是一个类似于layer3,4&5交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。Keepalived是自动完成,不需人工干涉。主要提供loadbalancing(负载均衡)和high-availability(高可用)功能,负载均衡实现需要依赖Linux的虚拟服务内核模块(ipvs),而高可用是通过VRRP协议实现多台机器之间的故障转移服务。
HAProxy是一个使用C语言编写的自由及开放源代码软件,能够提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理,支持虚拟主机。
Consul集群是三节点的Consul组成的集群。Consul是一种提供服务发现的工具,是分布式的、高可用的、能够横向扩展的,用于为Prometheus提供服务发现的功能,即自动发现监控目标的方式,通过将监控目标(称为Target)的地址、端口、Label信息存入Consul,Prometheus Server会自动从Consul中获取这些信息,并为每个Target建立HTTP通道进行Pull采集。Consul自带集群方案,无需额外工具。
由于exporter只能通过Pull方式采集并传输监控指标数据,而PushGateway用于满足无法直接通过Pull方式采集到的指标。具体实施例中,PushGateway集群,具体用于:
接收exporter无法采集数据的混合资源通过Push方式自推送的监控指标数据;
利用Pull方式将监控指标数据传送给Prometheus Server集群。
具体实施时,PushGateway集群,采用三节点部署,每个节点上部署一个Keepalived负责启动PushGateway的进程,以及一个Haproxy负责负载均衡转发;其中,第一个节点为Master节点,其余两个为Backup节点,且处于冷备模式。
具体实施例中,数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。其中,本地TSDB数据库是Prometheus自带的时序数据库,用于即时存储数据。对于监控指标数据来说,其最大的特点是具有时间属性,每个指标的采样点都带有一个唯一的时间戳,因此也被称为时序数据。时序数据的特点是一次性写入多次读取、数据流平稳、查询方式以时间为纬度。所以与关系型数据库采用B+树不同,时序数据库通常采用LSM树,其特点是存储容量大、数据压缩比高(节约存储)、具备高吞吐量高并发等特性。传统的监控软件通常使用的都是关系型数据库,如Oracle或MySQL,而Prometheus采用时序数据库,即本地TSDB数据库,使得Prometheus能够具备更大规模监控能力、更强的数据采集和处理性能。
具体实施例中,一组监控中心中的三台Prometheus Server,通过使用GPFS建立共享存储用于TSDB存储,以便Backup(数据备份软件)继续接管监控数据的存储。其中,GPFS(General Parallel File System)是IBM公司第一个共享文件***,起源于IBM SP***上使用的虚拟共享磁盘技术(VSD)。作为这项技术的核心,GPFS是一个并行的磁盘文件***,它保证在资源组内的所有节点可以并行访问整个文件***;而且针对此文件***的服务操作,可以同时安全地在使用此文件***的多个节点上实现。GPFS允许客户共享文件,而这些文件可能分布在不同节点的不同硬盘上:它提供了许多标准的UNIX文件***接口,允许应用不需修改或者重新编辑就可以在其上运行。
具体实施例中,远端存储Elasticsearch集群,具体用于:
通过PrometheusBeats将监控指标数据写入Elasticsearch集群中,作为备份存储的冷数据。
其中,PrometheusBeats是实现了RemoteWrite规范的存储Adaptor,用于将发来的监控数据写入Elasticsearch中。PrometheusBeats采用三节点部署,每个节点上部署一个Keepalived负责启动PrometheusBeats的进程,以及一个Haproxy负责负载均衡转发。其中,第一个节点为Master节点,其余两个为Backup节点,且处于冷备模式。
其中,ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
具体实施例中,为了增加数据过滤和处理的功能,在每个PrometheusBeats和Elasticseasrch之间还增加了一层Logstash。其中,Logstash是一款开源的数据收集引擎,具备实时管道处理能力。简单来说,logstash作为数据源与数据存储分析工具之间的桥梁,结合ElasticSearch以及Kibana,能够极大方便数据的处理与分析。通过200多个插件,logstash可以接受几乎各种各样的数据。包括日志、网络请求、关系型数据库、传感器或物联网等等。
原生Prometheus的数据存储使用本地TSDB时序数据库,该时序数据库也是单节点部署(通常和Server在同一节点,也可以使用NFS/NAS等方案远程挂载),容易出现单点故障。本发明实施例通过使用满足其RemoteWrite标准的Adaptor,外接Elasticsearch集群作为其远端存储,形成“短期热数据使用本地TSDB,长期冷数据及备份使用Elasticsearch集群”的存储方案,解决Prometheus的存储问题。
通过本发明具体实施例中的二次开发exporter和高可用扩展方案,可解决企业大规模分布式集群下的混合资源监控需求,从而能够实现对大规模分布式集群下的混合资源的监控。由于本发明具体实施例中提供的资源监控***的高可用性、稳定性、可扩展性,可满足企业超大规模分布式集群架构下,多种混合资源,如服务器、网络设备、操作***、中间件、应用程序、容器集群的统一和集中监控需求。同时由于其所有的模块采用的都是开源组件产品,无任何商业软件,可为企业节约大量成本。
下面给出一具体实例说明本发明实施例如何构建资源监控***,并利用资源监控***进行混合资源的监控。
如图3所示,为本具体实例的部署框架。其中:
中间的PrometheusServer,即监控中心,主要负责向监控对象发起Pull请求采集指标,并对指标进行汇聚、过滤、计算是否满足告警规则,其自带的TSDB即时序数据库负责本地数据存储。PrometheusServer采用三节点部署,每个节点上再部署一个Keepalived提供VIP。其中第一个节点是Master节点,其余两个为Backup节点,且处于冷备模式(不开启),当Master宕机时,VIP飘到第二个Backup节点,且该Backup节点升级为Master,由Keepalived负责启动Server进程,完成Server的高可用功能。三台Server使用GPFS建立共享存储用于TSDB存储,以便Backup(数据备份软件)继续接管监控数据的存储。当Server达到瓶颈需要扩展时,一次扩展三台为一组,并将此一组监控中心标记为Worker节点,同时在上层部署Primary节点,Primary节点下面接Worker,形成Primary-Worker的金字塔模式。
左下方的指标采集器XX_exporter负责对监控对象实际采集指标,通过二次开发XX_exporter扩展采集对象范围。左上方的PushGateway用于满足无法直接通过Pull方式采集到的指标,而改由采集对象自行将指标通过Push方式推送到PushGateway,随后再由PrometheusServer用Pull取走。PushGateway也采用三节点部署,除部署Keepalived提供高可用功能之外,每个节点上还部署了Haproxy做负载均衡转发,用于流量平摊。
上方的服务发现功能,使用三节点Consul组成集群。服务发现是Prometheus自动发现监控目标的方式,通过将监控目标(称为Target)的地址、端口、Label信息存入Consul,PrometheusServer会自动从Consul中获取这些信息,并为每个Target建立HTTP通道进行Pull采集。Consul自带集群方案,无需额外工具。
下方是Prometheus的远端存储集群Elasticsearch,其中监控数据必须通过PrometheusBeats写入ElasticseasrchCluster。PrometheusBeats是实现了RemoteWrite规范的存储Adaptor,用于将发来的监控数据写入Elasticsearch,同时为了增加数据过滤和处理的功能,在每个PrometheusBeats和Elasticseasrch之间还增加了一层Logstash。PrometheusBeats采用三节点部署,通过Haproxy+Keepalived实现高可用和负载均衡。Elasticsearch本身即是多节点集群,理论上可无限横向扩展,作为冷数据的备份存储方案。
右上方是Alertmanager,是Prometheus的告警模块。PrometheusServer将满足预定义Rule(规则)的告警信息发送到Alertmanager,由其进行告警存储,并可以触发hook操作实现发送邮件、短信或微信通知。Alertmanager自身支持三节点集群部署,并提供告警的去重、抑制。
右下方是Prometheus支持的各类客户端,包括其自带的WebUI、Grafana图形客户端、以及各种语言的ClientSDK,便于开发者基于Prometheus进行二次开发和扩展。
其中,Prometheus Server、PushGateway、Elasticsearch、Alertmanager等组件部署完成后,后期当容量不足时,这些组件可分别进行横向扩展。具体维护过程中,还需要定期清理TSDB、Alertmanager和Elasticsearch中存储的监控数据和告警数据。
进一步地,Prometheus Server除Keepalived高可用方案之外,还可以应用Thanos支持高可用配置。远端存储除Elasticsearch集群之外,还有几种方案,例如可通过Tiprometheus Adaptor存储到TiKV。
利用上述部署框架,进行监控数据的采集、处理和存储的流程如图4所示,包括:
S1、将监控目标在服务注册中心Consul进行注册(即注册XX_exporter地址),标明IP、端口、自定义Label;
S2、由部署于监控目标的XX_exporter采集本地监控指标,XX_exporter启动HTTPserver,等待Prometheus Server定时收集;
S3、PrometheusServer从Consul获取监控目标地址(即XX_exporter地址),定期向XX_exporter发起HTTP请求,将采集到的指标进行汇聚、过滤、计算是否满足告警规则,并将监控指标数据首先写入本地TSDB,同时根据配置的远端存储Adaptor地址,另写一份监控指标数据到远端存储集群Elasticsearch进行存储;
S4、对于满足了告警规则的数据,形成固定格式的告警信息,发送到Alertmanager,由Alertmanager完成告警存储、去重、抑制,并根据配置好的hook规则,触发发送短信、邮件、微信等告警方式通知用户;
S5、用户可以使用Grafana查看监控性能数据曲线,了解监控详情。
通过设置Prometheus Server的Primary-Worker金字塔模式+Keepalived高可用模式,兼顾扩展性、稳定性、可用性和性能要求,满足企业超大规模分布式集群需求。通过设置Prometheus的本地TSDB热数据存储+Elasticsearch集群冷数据备份远端存储方案,满足监控数据的长期存储、数据高可用保障。通过二次开发XX_exporter扩展指标采集范围,以及通过Pull方式采集指标+PushGateway进行Push指标,满足多种混合资源(如服务器、操作***、应用程序、容器)的统一、集中监控,兼顾各种企业网络环境(有些***藏在防火墙后,Server无法访问,也就无法进行Pull采集,此时可以通过设置代理节点作为PushGateway进行集中上送)和应用环境(应用程序中将指标主动Push出来到PushGateway)。
上述具体应用的实施仅为举例,其余实施方式不再一一赘述。
基于同一发明构思,本发明实施例还提供一种资源监控***的工作方法,由于资源监控***的工作方法所解决问题的原理与资源监控***相似,因此资源监控***的工作方法的实施可以参见资源监控***的实施,重复之处不再赘述,该工作方法如图5所示,包括:
步骤501:数据采集模块采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块;其中,数据采集模块包括:多类型指标采集器exporter和PushGateway集群;
步骤502:数据处理模块接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;
步骤503:数据存储模块存储数据处理模块接收到的监控指标数据;其中,数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。
具体实施例中,步骤502具体实现过程,包括:
Consul集群为监控目标进行服务注册与发现,以使得Prometheus Server集群根据在Consul中注册的监控目标,为其建立HTTP通道以Pull方式远程接收到监控指标数据;
Prometheus Server集群接收监控指标数据,对监控指标数据进行汇聚和过滤的预处理后,将满足预设的告警规则的监控指标数据,形成告警信息发送至Prometheus的告警模块Alertmanager;
Prometheus的告警模块Alertmanager接收告警信息,进行告警存储、去重和抑制,触发hook操作实现对相应资源的告警。
具体实施时,PushGateway集群,接收exporter无法采集数据的混合资源通过Push方式自推送的监控指标数据;利用Pull方式将监控指标数据传送给Prometheus Server集群。
具体实施例中,远端存储Elasticsearch集群进行存储时,通过PrometheusBeats将监控指标数据写入Elasticsearch集群中,作为备份存储的冷数据。其中,PrometheusBeats是实现了RemoteWrite规范的存储Adaptor;
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述资源监控***的工作方法。
本发明实施例还提供一种计算机可读存储介质,存储有执行上述资源监控***的工作方法的计算机程序。
综上所述,本发明实施例提供的资源监控***及工作方法具有如下优点:
通过设置数据采集模块,采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块,数据采集模块包括:多类型指标采集器exporter和PushGateway集群;通过设置数据处理模块,用于接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;通过设置数据存储模块,存储数据处理模块接收到的监控指标数据,数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。由于Prometheus是一款开源的监控告警***且自带时序数据库,基于Golang编写,性能强大;通过多种类型exporter(指标采集器)支持物理/虚拟节点、网络节点、容器集群、中间件/数据库、应用等多种资源的监控指标采集,从而满足混合资源的监控需求,支持混合资源的监控。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种资源监控***,其特征在于,包括:
数据采集模块,用于采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块;所述数据采集模块包括:多类型指标采集器exporter和PushGateway集群;
数据处理模块,用于接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;
数据存储模块,用于存储数据处理模块接收到的监控指标数据;所述数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。
2.如权利要求1所述的资源监控***,其特征在于,所述数据处理模块包括:
Prometheus Server集群,用于接收监控指标数据,对监控指标数据进行汇聚和过滤的预处理后,将满足预设的告警规则的监控指标数据,形成告警信息发送至Prometheus的告警模块Alertmanager;
Consul集群,用于为监控目标进行服务注册与发现,以使得Prometheus Server集群根据在Consul中注册的监控目标,为其建立HTTP通道以Pull方式远程接收到监控指标数据;
Prometheus的告警模块Alertmanager,用于接收告警信息,进行告警存储、去重和抑制,触发hook操作实现对相应资源的告警。
3.如权利要求2所述的资源监控***,其特征在于,所述PushGateway集群,具体用于:
接收exporter无法采集数据的混合资源通过Push方式自推送的监控指标数据;
利用Pull方式将监控指标数据传送给Prometheus Server集群。
4.如权利要求2所述的资源监控***,其特征在于,所述Prometheus Server集群,包括多台Prometheus Server,每三台Prometheus Server为一组监控中心,每组监控中心标记为Worker节点,同时在上层部署Primary节点,Primary节点下面接Worker节点,形成Primary-Worker的金字塔模式。
5.如权利要求4所述的资源监控***,其特征在于,所述每组监控中心采用三节点部署,每个节点上部署一个Keepalived提供VIP,由Keepalived负责启动Prometheus Server的进程;
其中,第一个节点为Master节点,其余两个为Backup节点,且处于冷备模式。
6.如权利要求1所述的资源监控***,其特征在于,所述PushGateway集群,采用三节点部署,每个节点上部署一个Keepalived负责启动PushGateway的进程,以及一个Haproxy负责负载均衡转发;
其中,第一个节点为Master节点,其余两个为Backup节点,且处于冷备模式。
7.如权利要求1所述资源监控***,其特征在于,所述远端存储Elasticsearch集群,具体用于:
通过PrometheusBeats将监控指标数据写入Elasticsearch集群中,作为备份存储的冷数据;
其中,PrometheusBeats是实现了RemoteWrite规范的存储Adaptor;
PrometheusBeats采用三节点部署,每个节点上部署一个Keepalived负责启动PrometheusBeats的进程,以及一个Haproxy负责负载均衡转发;
其中,第一个节点为Master节点,其余两个为Backup节点,且处于冷备模式。
8.一种权利要求1-7中任一所述资源监控***的工作方法,其特征在于,包括:
数据采集模块采集混合资源的监控指标数据,将采集的监控指标数据发送给数据处理模块;其中,数据采集模块包括:多类型指标采集器exporter和PushGateway集群;
数据处理模块接收数据采集模块发送的监控指标数据,利用Prometheus对满足预定告警规则的监控指标数据,形成告警信息,触发相应资源的告警;
数据存储模块存储数据处理模块接收到的监控指标数据;其中,数据存储模块包括:本地TSDB数据库和远端存储Elasticsearch集群。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求8所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求8所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011132356.2A CN112084098A (zh) | 2020-10-21 | 2020-10-21 | 资源监控***及工作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011132356.2A CN112084098A (zh) | 2020-10-21 | 2020-10-21 | 资源监控***及工作方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112084098A true CN112084098A (zh) | 2020-12-15 |
Family
ID=73730904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011132356.2A Pending CN112084098A (zh) | 2020-10-21 | 2020-10-21 | 资源监控***及工作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112084098A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559296A (zh) * | 2020-12-23 | 2021-03-26 | 南方电网深圳数字电网研究院有限公司 | 基于prometheus的虚拟机监控方法和工具、电子设备、存储介质 |
CN112631860A (zh) * | 2020-12-21 | 2021-04-09 | 常州微亿智造科技有限公司 | 工业物联网数据传输Worker服务监控方法及装置 |
CN112835766A (zh) * | 2021-02-10 | 2021-05-25 | 杭州橙鹰数据技术有限公司 | 应用监控方法及装置 |
CN112948127A (zh) * | 2021-03-30 | 2021-06-11 | 北京滴普科技有限公司 | 云平台容器平均负载监视方法、终端设备及可读存储介质 |
CN112994935A (zh) * | 2021-02-04 | 2021-06-18 | 烽火通信科技股份有限公司 | prometheus管控方法、装置、设备及存储介质 |
CN113037549A (zh) * | 2021-03-04 | 2021-06-25 | 浪潮云信息技术股份公司 | 一种运维环境告警方法 |
CN113037547A (zh) * | 2021-03-03 | 2021-06-25 | 浪潮云信息技术股份公司 | 一种资源性能采集监控与告警*** |
CN113055490A (zh) * | 2021-03-24 | 2021-06-29 | 杭州群核信息技术有限公司 | 数据的存储方法及装置 |
CN113342373A (zh) * | 2021-05-31 | 2021-09-03 | 杭州沃趣科技股份有限公司 | 一种用于Prometheus通用采集器的实现方法和*** |
CN113542068A (zh) * | 2021-07-15 | 2021-10-22 | 中国银行股份有限公司 | 一种Redis多实例的监控***及方法 |
CN114153518A (zh) * | 2021-10-25 | 2022-03-08 | 国网江苏省电力有限公司信息通信分公司 | 一种云原生MySQL集群自主扩容缩容的方法 |
CN114860510A (zh) * | 2022-07-08 | 2022-08-05 | 飞狐信息技术(天津)有限公司 | 微服务***的数据监控方法和*** |
CN115499431A (zh) * | 2022-07-29 | 2022-12-20 | 天翼云科技有限公司 | 一种公有云多资源池运维监控*** |
CN115827393A (zh) * | 2023-02-21 | 2023-03-21 | 德特赛维技术有限公司 | 一种服务器集群监控及告警*** |
CN116561076A (zh) * | 2023-05-10 | 2023-08-08 | 合芯科技(苏州)有限公司 | 分布式文件***的监控方法、装置、计算机设备及介质 |
CN116737498A (zh) * | 2023-06-15 | 2023-09-12 | 中科驭数(北京)科技有限公司 | 遥测数据采集方法、***、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968482A (zh) * | 2019-12-18 | 2020-04-07 | 上海良鑫网络科技有限公司 | 企业服务及应用智能监控*** |
CN111049705A (zh) * | 2019-12-23 | 2020-04-21 | 深圳前海微众银行股份有限公司 | 一种监控分布式存储***的方法及装置 |
CN111064781A (zh) * | 2019-12-10 | 2020-04-24 | 北京金山云网络技术有限公司 | 多容器集群监控数据的采集方法、装置及电子设备 |
CN111147596A (zh) * | 2019-12-30 | 2020-05-12 | ***通信集团江苏有限公司 | Prometheus集群部署方法、装置、设备及介质 |
CN111459750A (zh) * | 2020-03-18 | 2020-07-28 | 平安科技(深圳)有限公司 | 基于非扁平网络的私有云监控方法、装置、计算机设备及存储介质 |
CN111752795A (zh) * | 2020-06-18 | 2020-10-09 | 多加网络科技(北京)有限公司 | 一种全流程监控报警平台及其方法 |
-
2020
- 2020-10-21 CN CN202011132356.2A patent/CN112084098A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111064781A (zh) * | 2019-12-10 | 2020-04-24 | 北京金山云网络技术有限公司 | 多容器集群监控数据的采集方法、装置及电子设备 |
CN110968482A (zh) * | 2019-12-18 | 2020-04-07 | 上海良鑫网络科技有限公司 | 企业服务及应用智能监控*** |
CN111049705A (zh) * | 2019-12-23 | 2020-04-21 | 深圳前海微众银行股份有限公司 | 一种监控分布式存储***的方法及装置 |
CN111147596A (zh) * | 2019-12-30 | 2020-05-12 | ***通信集团江苏有限公司 | Prometheus集群部署方法、装置、设备及介质 |
CN111459750A (zh) * | 2020-03-18 | 2020-07-28 | 平安科技(深圳)有限公司 | 基于非扁平网络的私有云监控方法、装置、计算机设备及存储介质 |
CN111752795A (zh) * | 2020-06-18 | 2020-10-09 | 多加网络科技(北京)有限公司 | 一种全流程监控报警平台及其方法 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631860A (zh) * | 2020-12-21 | 2021-04-09 | 常州微亿智造科技有限公司 | 工业物联网数据传输Worker服务监控方法及装置 |
CN112559296A (zh) * | 2020-12-23 | 2021-03-26 | 南方电网深圳数字电网研究院有限公司 | 基于prometheus的虚拟机监控方法和工具、电子设备、存储介质 |
CN112994935A (zh) * | 2021-02-04 | 2021-06-18 | 烽火通信科技股份有限公司 | prometheus管控方法、装置、设备及存储介质 |
CN112835766A (zh) * | 2021-02-10 | 2021-05-25 | 杭州橙鹰数据技术有限公司 | 应用监控方法及装置 |
CN113037547A (zh) * | 2021-03-03 | 2021-06-25 | 浪潮云信息技术股份公司 | 一种资源性能采集监控与告警*** |
CN113037549A (zh) * | 2021-03-04 | 2021-06-25 | 浪潮云信息技术股份公司 | 一种运维环境告警方法 |
CN113055490B (zh) * | 2021-03-24 | 2022-10-11 | 杭州群核信息技术有限公司 | 数据的存储方法及装置 |
CN113055490A (zh) * | 2021-03-24 | 2021-06-29 | 杭州群核信息技术有限公司 | 数据的存储方法及装置 |
CN112948127A (zh) * | 2021-03-30 | 2021-06-11 | 北京滴普科技有限公司 | 云平台容器平均负载监视方法、终端设备及可读存储介质 |
CN112948127B (zh) * | 2021-03-30 | 2023-11-10 | 北京滴普科技有限公司 | 云平台容器平均负载监视方法、终端设备及可读存储介质 |
CN113342373A (zh) * | 2021-05-31 | 2021-09-03 | 杭州沃趣科技股份有限公司 | 一种用于Prometheus通用采集器的实现方法和*** |
CN113342373B (zh) * | 2021-05-31 | 2022-04-22 | 杭州沃趣科技股份有限公司 | 一种用于Prometheus通用采集器的实现方法和*** |
CN113542068A (zh) * | 2021-07-15 | 2021-10-22 | 中国银行股份有限公司 | 一种Redis多实例的监控***及方法 |
CN114153518A (zh) * | 2021-10-25 | 2022-03-08 | 国网江苏省电力有限公司信息通信分公司 | 一种云原生MySQL集群自主扩容缩容的方法 |
CN114860510A (zh) * | 2022-07-08 | 2022-08-05 | 飞狐信息技术(天津)有限公司 | 微服务***的数据监控方法和*** |
CN115499431A (zh) * | 2022-07-29 | 2022-12-20 | 天翼云科技有限公司 | 一种公有云多资源池运维监控*** |
CN115827393A (zh) * | 2023-02-21 | 2023-03-21 | 德特赛维技术有限公司 | 一种服务器集群监控及告警*** |
CN115827393B (zh) * | 2023-02-21 | 2023-10-20 | 德特赛维技术有限公司 | 一种服务器集群监控及告警*** |
CN116561076A (zh) * | 2023-05-10 | 2023-08-08 | 合芯科技(苏州)有限公司 | 分布式文件***的监控方法、装置、计算机设备及介质 |
CN116737498A (zh) * | 2023-06-15 | 2023-09-12 | 中科驭数(北京)科技有限公司 | 遥测数据采集方法、***、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112084098A (zh) | 资源监控***及工作方法 | |
US10896104B2 (en) | Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, using ping monitoring of target virtual machines | |
US11249815B2 (en) | Maintaining two-site configuration for workload availability between sites at unlimited distances for products and services | |
CN105959151B (zh) | 一种高可用的流式处理***及方法 | |
CN106453564B (zh) | 弹性云分布式海量请求处理的方法、装置及*** | |
US10084858B2 (en) | Managing continuous priority workload availability and general workload availability between sites at unlimited distances for products and services | |
US10353918B2 (en) | High availability and disaster recovery in large-scale data warehouse | |
US10474694B2 (en) | Zero-data loss recovery for active-active sites configurations | |
US10560544B2 (en) | Data caching in a collaborative file sharing system | |
US10338958B1 (en) | Stream adapter for batch-oriented processing frameworks | |
US9047126B2 (en) | Continuous availability between sites at unlimited distances | |
CN115640110B (zh) | 分布式云计算***调度方法和装置 | |
CN108845865A (zh) | 一种监控服务部署方法、***和存储介质 | |
CN114567633B (zh) | 一种支撑多栈数据库全生命周期的云平台***及管理方法 | |
CN106547790B (zh) | 一种关系型数据库服务*** | |
CN113127526A (zh) | 一种基于Kubernetes的分布式数据存储和检索*** | |
CN110334079A (zh) | 一种数据迁移方法及装置 | |
CN107180034A (zh) | MySQL数据库的集群*** | |
Singh | Cluster-level logging of containers with containers: Logging challenges of container-based cloud deployments | |
CN111858260A (zh) | 信息显示方法、装置、设备及介质 | |
CN115801811B (zh) | 一种云边协同方法及装置 | |
Chen et al. | Research of distributed file system based on massive resources and application in the network teaching system | |
Jiao et al. | Task Scheduling System Based on Consensus Algorithm in P2P Network | |
CN117194015A (zh) | 采集任务分配方法、装置及存储介质 | |
Yang et al. | A Scheme of High Available System for Alarm Image Transfer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |