[go: up one dir, main page]

CN112711512A - 一种Prometheus监控方法、装置及设备 - Google Patents

一种Prometheus监控方法、装置及设备 Download PDF

Info

Publication number
CN112711512A
CN112711512A CN202011601855.1A CN202011601855A CN112711512A CN 112711512 A CN112711512 A CN 112711512A CN 202011601855 A CN202011601855 A CN 202011601855A CN 112711512 A CN112711512 A CN 112711512A
Authority
CN
China
Prior art keywords
monitoring
prometheus
target
data
alarm
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
Application number
CN202011601855.1A
Other languages
English (en)
Inventor
逄立业
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN202011601855.1A priority Critical patent/CN112711512A/zh
Publication of CN112711512A publication Critical patent/CN112711512A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种Prometheus监控方法、装置及设备,该方法包括:与服务发现注册中心进行交互,获取监控目标;对监控目标进行Prometheus监控,获取监控目标对应的监控数据;将监控数据存储到M3DB数据库;本发明利用M3DB数据库对Prometheus的监控数据进行分布式集中存储,使得Prometheus的监控数据存储能够满足大规模监控的读写的并发需求,保证了Prometheus在大规模场景下的高可用性;并且通过与服务发现注册中心进行交互,获取监控目标,利用服务发现注册中心作为代理人,使得Prometheus仅需向代理人询问便可得到监控目标,减少了监控目标的静态配置过程,提升了用户体验。

Description

一种Prometheus监控方法、装置及设备
技术领域
本发明涉及监控技术领域,特别涉及一种Prometheus监控方法、装置及设备。
背景技术
Prometheus是一种开源的监控系统,是Google BorgMon(一种监控系统)的开源版本。伴随着容器及Kubernetes(简称K8s,用于管理云平台中多个主机上的容器化的应用)技术的兴起,Prometheus越来越受到大家的关注。
随着Kubernetes集群规模的不断扩张,Prometheus在高并发场景的瓶颈越发突出,Prometheus本身的本地存储的模式已然不能完全满足大规模监控的读写的并发需求。因此,如何能够使Prometheus的监控数据存储能够满足大规模监控的读写的并发需求,保证Prometheus在大规模场景下的高可用性,是现今急需解决问题。
发明内容
本发明的目的是提供一种Prometheus监控方法、装置及设备,以使Prometheus的监控数据存储能够满足大规模监控的读写的并发需求,保证Prometheus在大规模场景下的高可用性。
为解决上述技术问题,本发明提供一种Prometheus监控方法,包括:
与服务发现注册中心进行交互,获取监控目标;
对所述监控目标进行Prometheus监控,获取所述监控目标对应的监控数据;
将所述监控数据存储到M3DB数据库。
可选的,所述服务发现注册中心包括K8s服务器时,所述与服务发现注册中心进行交互,获取监控目标,包括:
与所述K8s服务器进行交互,获取监控容器和监控服务对象;其中,所述监控目标包括所述监控容器和监控服务对象。
可选的,所述服务发现注册中心包括OpenStack服务器时,所述与服务发现注册中心进行交互,获取监控目标,包括:
从所述OpenStack服务器的应用程序接口中查找监控云主机;其中,所述监控目标包括所述监控云主机。
可选的,该方法还包括:
根据获取的Grafana面板工具中各预设面板的数据采集指令;
从所述M3DB数据库中获取所述数据采集指令对应的目标监控数据,以利用所述Grafana面板工具的仪表板中的所述预设面板展示所述目标监控数据。
可选的,所述将所述监控数据存储到M3DB集群,包括:
利用nginx工具,将所述监控数据存储到所述M3DB数据库。
可选的,该方法还包括:
根据所述监控数据,生成告警信息;
对所述告警信息进行分组,获取每组所述告警信息各自对应的一个告警通知,并将所述告警通知发送到报警系统。
可选的,所述根据所述监控数据,获取告警信息,包括:
Prometheus告警服务器根据从所述M3DB数据库中获取的所述监控数据,生成所述告警信息。
可选的,所述对所述告警信息进行分组,获取每组所述告警信息各自对应的一个告警通知,包括:
按照所述告警信息对应的服务的所在集群或告警名称,对所述告警信息进行分组,获取每组所述告警信息各自对应的一个告警通知。
本发明还提供了一种Prometheus监控装置,包括:
目标获取模块,用于与服务发现注册中心进行交互,获取监控目标;
数据获取模块,用于对所述监控目标进行Prometheus监控,获取所述监控目标对应的监控数据;
存储模块,用于将所述监控数据存储到M3DB数据库。
本发明还提供了一种Prometheus监控设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述所述的Prometheus监控方法的步骤。
本发明所提供的一种Prometheus监控方法,包括:与服务发现注册中心进行交互,获取监控目标;对监控目标进行Prometheus监控,获取监控目标对应的监控数据;将监控数据存储到M3DB数据库;
可见,本发明利用M3DB数据库对Prometheus的监控数据进行分布式集中存储,使得Prometheus的监控数据存储能够满足大规模监控的读写的并发需求,保证了Prometheus在大规模场景下的高可用性;并且通过与服务发现注册中心进行交互,获取监控目标,利用服务发现注册中心作为代理人,使得Prometheus仅需向代理人询问便可得到监控目标,减少了监控目标的静态配置过程,提升了用户体验。此外,本发明还提供了一种Prometheus监控装置及设备,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的一种Prometheus监控方法的流程图;
图2为本发明实施例所提供的另一种Prometheus监控方法的架构示意图;
图3为本发明实施例所提供的另一种Prometheus监控方法的架构示意图;
图4为本发明实施例所提供的另一种Prometheus监控方法的Grafana面板工具的仪表板的展示图;
图5为本发明实施例所提供的一种Prometheus监控装置的结构框图;
图6为本发明实施例所提供的一种Prometheus监控设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例所提供的一种Prometheus监控方法的流程图。该方法可以包括:
步骤101:与服务发现注册中心进行交互,获取监控目标。
可以理解的是,本步骤中Prometheus服务器(即Prometheus监控系统中的服务器)中的处理器可以与服务发现注册中心进行交互,获取需要监控的目标(即监控目标),如K8s这类容器管理平台中需要监控的容器和服务对象、OpenStack(一个开源的云计算管理平台项目)平台中需要监控的云主机以及微服务架构的应用程序中需要监控的应用服务实例等。也就是说,服务发现注册中心可以作为代理人这一角色,使得Prometheus仅需向代理人询问便可得到监控目标,减少了监控目标的静态配置过程。
具体的,对于本实施例中的服务发现注册中心的具体选择,可以由设计人员根据实用场景和用户需求自行设置,如在K8s平台的应用场景下,K8s服务器掌握并管理着所有的容器以及服务信息,那此时Prometheus服务器只需要与K8s服务器交互就可以找到所有需要监控的容器(即监控容器)以及服务对象(即监控服务对象);也就是说,服务发现注册中心包括K8s服务器时,本步骤中Prometheus服务器的处理器可以与K8s服务器进行交互,获取监控容器和监控服务对象;其中,监控目标包括监控容器和监控服务对象。
在OpenStack的私有云平台的应用场景下,由于这些云平台自身掌握着所有资源的信息,此时这些云平台自身就扮演了代理人的角色,Prometheus服务器只需要通过使用OpenStack服务器中OpenStack平台提供的API(应用程序接口)就可以找到所有需要监控的云主机(即监控云主机);也就是说,服务发现注册中心包括OpenStack服务器时,本步骤中Prometheus服务器的处理器可以从OpenStack服务器的应用程序接口中查找监控云主机;其中,监控目标包括监控云主机。
Prometheus还可以直接与一些开源的服务发现工具进行集成,例如在微服务架构的应用程序中,经常会使用到服务发现注册软件(如Consul软件),Promethues也可以与其集成从而动态的发现需要监控的应用服务实例(即监控服务);也就是说,服务发现注册中心包括服务发现注册软件时,本步骤中Prometheus服务器的处理器可以利用服务发现注册软件获取监控服务;其中,监控目标包括监控服务。只要Prometheus服务器的处理器可以通过与服务发现注册中心进行交互,获取监控目标,本实施例并不限定服务发现注册中心的具体选择。
需要说明的是,本实施例中Prometheus服务器的处理器可以通过与服务发现注册中心进行交互的动态方式,获取监控目标;处理器也可以根据静态配置(如static_configs)的监控目标信息和与服务发现注册中心的交互,获取监控目标;除了与这些平台级的公有云、私有云、容器云以及专门的服务发现注册软件集成以外,Prometheus还可以支持基于DNS(Domain Name System,域名系统)以及文件的方式动态发现监控目标,即处理器还可以采用DNS访问和文件解析的方式,获取监控目标,本实施例对此不做任何限制。
步骤102:对监控目标进行Prometheus监控,获取监控目标对应的监控数据。
可以理解的是,本步骤的目的可以为Prometheus服务器的处理器通过对监控目标进行Prometheus监控,获取相应的监控数据。对于本实施例中处理器对监控目标进行Prometheus监控的具体方式,如可以采用与现有技术中Prometheus监控系统对监控目标的监控方法形同或相似的方式实现,本实施例对此不做任何限制。
步骤103:将监控数据存储到M3DB数据库。
其中,本步骤中的M3DB数据库可以为一种开源的分布式时序数据库,M3DB数据库每秒可以聚合5亿个指标,并在全球范围内(使用M3DB数据库)每秒持续存储2000万个度量指标,批量写入将每个指标持久保存到区域中的三个副本。M3DB数据库还允许工程师编写度量策略,告诉其以更短或更长的保留时间(如两天、一个月、六个月、一年、三年和五年等)以特定的粒度(如一秒、十秒、一分钟和十分钟等)。这允许工程师和数据科学家使用与定义的存储策略匹配的度量标签,在精细和粗粒度范围内智能地存储不同保留的时间序列。
可以理解的是,本步骤中Prometheus服务器的处理器通过将监控数据存储到M3DB数据库,可以利用M3DB数据库对Prometheus的监控数据进行持久化的分布式集中存储,使得Prometheus的监控数据存储能够满足大规模监控的读写的并发需求,保证了Prometheus在大规模场景下的高可用性。
具体的,本实施例并不限定Prometheus服务器的处理器将监控数据存储到M3DB数据库的具体方式,如图2和图3所示,Prometheus服务器的处理器可以利用nginx(一种负载均衡和代理工具)工具,将监控数据存储到M3DB数据库。
进一步的,为了实现prometheus的监控数据的可视化,本实施例所提供的Prometheus监控方法还可以包括:根据获取的Grafana(一种开源的面板类工具)面板工具中各预设面板的数据采集指令;从M3DB数据库中获取数据采集指令对应的目标监控数据,以利用Grafana面板工具的仪表板中的预设面板展示目标监控数据。也就是说,本实施例中可以利用web化管理的Grafana面板工具的仪表板(Dashboard)来组织和管理监控数据的可视化图表。Grafana面板工具的Dashboard可以如图4所示,在一个Dashboard中一个最基本的可视化单元为一个Panel(面板),Panel通过如趋势图或热力图的形式展示可视化的数据(即目标监控数据);并且在Dashboard中每一个Panel是一个完全独立的部分,通过Panel的Query Editor(查询编辑器)可以为每一个Panel设置查询的数据源以及数据查询方式,例如,以Prometheus作为数据源(Data Source),那在Query Editor中,可以使用PromQL(Prometheus内置的数据查询语言)进行数据查询,而Panel则会负责从特定的Prometheus中查询出相应的数据,并且将其可视化。由于每个Panel是完全独立的,因此在一个Dashboard中,往往可能会包含来自多个Data Source的数据。
对应的,本实施例所提供的方法还可以包括:根据获取的行管理指令,对Grafana面板工具中各预设面板进行调整;如图4所示,在Dashboard页面中可以定义一个Row(行),来组织和管理一组相关的Panel(即预设面板),使得用户可以通过操作生成行管理指令,控制处理器对预设面板进行调整(如删除或增加)。
具体的,本实施例中Prometheus服务器的处理器可以根据获取的Grafana面板工具中各预设面板(即Panel)的数据采集指令;利用nginx工具,从M3DB数据库中获取数据采集指令对应的目标监控数据,以利用Grafana面板工具的仪表板中的预设面板展示目标监控数据;即Prometheus服务器可以利用Grafana面板工具展示需要展示的监控数据(即目标监控数据)。本实施例所提供的方法还可以包括Grafana服务器利用nginx工具,从M3DB数据库中获取各预设面板对应的目标监控数据,利用Grafana面板工具的仪表板中的预设面板展示目标监控数据;即单独的用于展示监控数据的Grafana服务器,可以直接从M3DB数据库获取目标监控数据,并在仪表板中展示。
进一步的,本实施例所提供的方法还可以包括根据监控数据,生成告警通知的步骤,以在监控到符合告警规则的监控数据时,通过告警通知及时提醒用户进行存在问题的情况,从而对问题进行快速定位。
对应的,由于在一般规模或者大规模场景下(如图2所示),prometheus的监控节点(即prometheu服务器)的工作负载没有达到一定的负荷,计算生成监控数据对应的告警通知和发送告警通知不会带来很大开销,可以达到对报警实时性的需求;也就是说,本实施例中Prometheus服务器可以根据监控数据,生成告警通知。而在超大规模场景下(如图3所示),prometheus的监控节点(即prometheu服务器)的负载已经趋于或者接近饱和,对于报警规则的计算会因为处理器(如CPU)资源紧张,无法快速计算结果,会导致报警发送的延迟,可能造成报警延迟导致灾难故障,这时候可以在prometheus增加一个专门负责监控数据对应的告警通知的计算发送的告警节点(即prometheu告警服务器),可以快速计算告警通知,从来实现快速预警和监控的实时性;也就是说,本实施例中prometheu告警服务器可以根据从M3DB数据库中获取的监控数据,生成告警通知。
具体的,prometheu服务器或prometheu告警服务器可以根据符合告警规则的监控数据,生成告警信息;将告警信息对应的告警通知发送到报警系统(如开源的报警系统Alertmanager),实现对监控目标的监控告警。
进一步的,为了避免一次性触发大量的告警通知,使得用户难以对问题进行快速定位的情况;例如当集群中有数百个正在运行的服务实例,并且为每一个服务实例设置了告警规则,假如此时发生了网络故障,可能导致大量的服务实例无法连接到数据库,结果就会有大量的告警通知被发送到报警系统;而作为用户,可能只希望能够在一个告警通知中就能查看哪些服务实例收受到影响。本实施例中prometheu服务器或prometheu告警服务器可以对告警信息进行分组,获取每组告警信息各自对应的一个告警通知,并将告警通知发送到报警系统;例如按照告警信息的告警名称或对应的服务的所在集群,对告警信息进行分组,获取每组告警信息各自对应的一个告警通知。
或者,如Alertmanager的报警系统的服务器(如Alertmanager服务器)可以对prometheu服务器或prometheu告警服务器发送的告警通知进行分组,获取每组告警通知各自对应的一个报警内容,并发送到相应的报警通道,以通过报警通道告知用户报警内容。也就是说,报警系统可以利用分组机制按照服务所在集群或者告警名称对告警通知进行分组,而将多个告警通知聚在一起成为一个报警内容。如报警系统为Alertmanager时,可以Alertmanager的配置文件中配置告警分组、告警时间和告警的接受方式等。
对应的,Alertmanager服务器还可以停止发送报警内容所引发的其他报警内容,以实现报警抑制的功能,避免用户接收到大量与实际问题无关的报警内容。例如当集群不可访问时触发了一次报警内容的发送,通过配置Alertmanager可以停止与该集群有关的其它所有报警内容的发送。
进一步的,Alertmanager服务器还可以判断接收的到的告警通知是否符合静默规则;若是,则忽略符合静默规则的告警通知;若否,则获取并发送告警通知对应的报警内容。从而利用一个简单的静默机制可以快速根据标签对告警通知进行静默处理,避免无用的报警内容的生成和发送。
本实施例中,本发明实施例利用M3DB数据库对Prometheus的监控数据进行分布式集中存储,使得Prometheus的监控数据存储能够满足大规模监控的读写的并发需求,保证了Prometheus在大规模场景下的高可用性;并且通过与服务发现注册中心进行交互,获取监控目标,利用服务发现注册中心作为代理人,使得Prometheus仅需向代理人询问便可得到监控目标,减少了监控目标的静态配置过程,提升了用户体验。
请参考图5,图5为本发明实施例所提供的一种Prometheus监控装置的结构框图。
目标获取模块10,用于与服务发现注册中心进行交互,获取监控目标;
数据获取模块20,用于对监控目标进行Prometheus监控,获取监控目标对应的监控数据;
存储模块30,用于将监控数据存储到M3DB数据库。
可选的,服务发现注册中心包括K8s服务器时,目标获取模块10可以包括:
第一获取子模块,用于与K8s服务器进行交互,获取监控容器和监控服务对象;其中,监控目标包括监控容器和监控服务对象。
可选的,服务发现注册中心包括OpenStack服务器时,目标获取模块10可以包括:
第二获取子模块,从OpenStack服务器的应用程序接口中查找监控云主机;其中,监控目标包括监控云主机。
可选的,该装置还可以包括:
指令获取模块,用于根据获取的Grafana面板工具中各预设面板的数据采集指令;
展示模块,用于从M3DB数据库中获取数据采集指令对应的目标监控数据,以利用Grafana面板工具的仪表板中的预设面板展示目标监控数据。
可选的,存储模块30可以具体用于利用nginx工具,将监控数据存储到M3DB数据库。
可选的,该装置还可以包括:
生成模块,用于根据监控数据,生成告警信息;
告警模块,用于对告警信息进行分组,获取每组告警信息各自对应的一个告警通知,并将告警通知发送到报警系统。
可选的,生成模块可以具体用于根据从M3DB数据库中获取的监控数据,生成告警信息。
可选的,告警模块可以具体用于按照告警信息对应的服务的所在集群或告警名称,对告警信息进行分组,获取每组告警信息各自对应的一个告警通知。
本实施例中,本发明实施例利用M3DB数据库对Prometheus的监控数据进行分布式集中存储,使得Prometheus的监控数据存储能够满足大规模监控的读写的并发需求,保证了Prometheus在大规模场景下的高可用性;并且通过目标获取模块10与服务发现注册中心进行交互,获取监控目标,利用服务发现注册中心作为代理人,使得Prometheus仅需向代理人询问便可得到监控目标,减少了监控目标的静态配置过程,提升了用户体验。
请参考图6,图6为本发明实施例所提供的一种Prometheus监控设备的结构示意图。该设备1可以包括:
存储器11,用于存储计算机程序;处理器12,用于执行该计算机程序时实现如上述实施例所提供的Prometheus监控方法的步骤。
设备1可以包括存储器11、处理器12和总线13。
其中,存储器11至少包括一种类型的可读存储介质,该可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是设备1的内部存储单元。存储器11在另一些实施例中也可以是设备1的外部存储设备,例如Prometheus服务器上配备的插接式硬盘,智能存储卡(Smart MediaCard,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括设备1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于设备1的应用软件及各类数据,例如:执行Prometheus监控方法的程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行Prometheus监控方法的程序的代码等。
该总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,设备还可以包括网络接口14,网络接口14可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该设备1与其他电子设备之间建立通信连接。
可选地,该设备1还可以包括用户接口15,用户接口15可以包括显示器(Display)、输入单元比如按键,可选的用户接口15还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在设备1中处理的信息以及用于显示可视化的用户界面。
图6仅示出了具有组件11-15的设备1,本领域技术人员可以理解的是,图6示出的结构并不构成对设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
此外,本申请实施例还公开了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如上述实施例所提供的Prometheus监控方法的步骤。
其中,该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
以上对本发明所提供的一种Prometheus监控方法、装置及设备进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (10)

1.一种Prometheus监控方法,其特征在于,包括:
与服务发现注册中心进行交互,获取监控目标;
对所述监控目标进行Prometheus监控,获取所述监控目标对应的监控数据;
将所述监控数据存储到M3DB数据库。
2.根据权利要求2所述的Prometheus监控的数据存储方法,其特征在于,所述服务发现注册中心包括K8s服务器时,所述与服务发现注册中心进行交互,获取监控目标,包括:
与所述K8s服务器进行交互,获取监控容器和监控服务对象;其中,所述监控目标包括所述监控容器和监控服务对象。
3.根据权利要求2所述的Prometheus监控的数据存储方法,其特征在于,所述服务发现注册中心包括OpenStack服务器时,所述与服务发现注册中心进行交互,获取监控目标,包括:
从所述OpenStack服务器的应用程序接口中查找监控云主机;其中,所述监控目标包括所述监控云主机。
4.根据权利要求1所述的Prometheus监控方法,其特征在于,还包括:
根据获取的Grafana面板工具中各预设面板的数据采集指令;
从所述M3DB数据库中获取所述数据采集指令对应的目标监控数据,以利用所述Grafana面板工具的仪表板中的所述预设面板展示所述目标监控数据。
5.根据权利要求1所述的Prometheus监控方法,其特征在于,所述将所述监控数据存储到M3DB集群,包括:
利用nginx工具,将所述监控数据存储到所述M3DB数据库。
6.根据权利要求1至5任一项所述的Prometheus监控方法,其特征在于,还包括:
根据所述监控数据,生成告警信息;
对所述告警信息进行分组,获取每组所述告警信息各自对应的一个告警通知,并将所述告警通知发送到报警系统。
7.根据权利要求6所述的Prometheus监控方法,其特征在于,所述根据所述监控数据,获取告警信息,包括:
Prometheus告警服务器根据从所述M3DB数据库中获取的所述监控数据,生成所述告警信息。
8.根据权利要求6所述的Prometheus监控方法,其特征在于,所述对所述告警信息进行分组,获取每组所述告警信息各自对应的一个告警通知,包括:
按照所述告警信息对应的服务的所在集群或告警名称,对所述告警信息进行分组,获取每组所述告警信息各自对应的一个告警通知。
9.一种Prometheus监控装置,其特征在于,包括:
目标获取模块,用于与服务发现注册中心进行交互,获取监控目标;
数据获取模块,用于对所述监控目标进行Prometheus监控,获取所述监控目标对应的监控数据;
存储模块,用于将所述监控数据存储到M3DB数据库。
10.一种Prometheus监控设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至8任一项所述的Prometheus监控方法的步骤。
CN202011601855.1A 2020-12-29 2020-12-29 一种Prometheus监控方法、装置及设备 Pending CN112711512A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011601855.1A CN112711512A (zh) 2020-12-29 2020-12-29 一种Prometheus监控方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011601855.1A CN112711512A (zh) 2020-12-29 2020-12-29 一种Prometheus监控方法、装置及设备

Publications (1)

Publication Number Publication Date
CN112711512A true CN112711512A (zh) 2021-04-27

Family

ID=75546852

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011601855.1A Pending CN112711512A (zh) 2020-12-29 2020-12-29 一种Prometheus监控方法、装置及设备

Country Status (1)

Country Link
CN (1) CN112711512A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220420A (zh) * 2021-05-18 2021-08-06 北京百度网讯科技有限公司 服务监控方法、装置、设备、存储介质及计算机程序产品
CN114328107A (zh) * 2021-12-28 2022-04-12 北京易华录信息技术股份有限公司 光磁融合存储服务器集群的监控方法、系统及电子设备
CN114490241A (zh) * 2021-12-25 2022-05-13 苏州浪潮智能科技有限公司 一种芯片监控方法、系统、存储介质及设备
CN116737514A (zh) * 2023-08-15 2023-09-12 南京国睿信维软件有限公司 一种基于日志与探针解析自动化运维方法
CN117194149A (zh) * 2023-08-25 2023-12-08 中移互联网有限公司 监控方法、装置、系统、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130282808A1 (en) * 2012-04-20 2013-10-24 Yahoo! Inc. System and Method for Generating Contextual User-Profile Images
CN110262944A (zh) * 2019-06-21 2019-09-20 四川长虹电器股份有限公司 一种对K8s集群容器资源进行监控并进行告警的方法
CN110688281A (zh) * 2019-09-25 2020-01-14 凡普数字技术有限公司 监控系统中的告警方法、装置以及存储介质
CN111459763A (zh) * 2020-04-03 2020-07-28 中国建设银行股份有限公司 跨kubernetes集群监控系统及方法
CN112073252A (zh) * 2020-11-12 2020-12-11 北京优炫软件股份有限公司 一种云平台监控方法及系统、电子设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130282808A1 (en) * 2012-04-20 2013-10-24 Yahoo! Inc. System and Method for Generating Contextual User-Profile Images
CN110262944A (zh) * 2019-06-21 2019-09-20 四川长虹电器股份有限公司 一种对K8s集群容器资源进行监控并进行告警的方法
CN110688281A (zh) * 2019-09-25 2020-01-14 凡普数字技术有限公司 监控系统中的告警方法、装置以及存储介质
CN111459763A (zh) * 2020-04-03 2020-07-28 中国建设银行股份有限公司 跨kubernetes集群监控系统及方法
CN112073252A (zh) * 2020-11-12 2020-12-11 北京优炫软件股份有限公司 一种云平台监控方法及系统、电子设备和存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Prometheus中文文档", pages 2 - 3, Retrieved from the Internet <URL:https://prometheus.wang> *
"利用Prometheus 打 造 企 业 分 布 式 监 控 平 台 (3)-- 远 程 读 写 之 战 - 知 乎 (zhihu.com)", pages 1 - 6, Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/135368139> *
IYACONTROL: "利用Prometheus 打造企业分布式监控平台(3)--远程读写之战 - 知乎 (zhihu.com)", pages 1 - 6, Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/135368139> *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113220420A (zh) * 2021-05-18 2021-08-06 北京百度网讯科技有限公司 服务监控方法、装置、设备、存储介质及计算机程序产品
CN114490241A (zh) * 2021-12-25 2022-05-13 苏州浪潮智能科技有限公司 一种芯片监控方法、系统、存储介质及设备
CN114490241B (zh) * 2021-12-25 2023-09-15 苏州浪潮智能科技有限公司 一种芯片监控方法、系统、存储介质及设备
CN114328107A (zh) * 2021-12-28 2022-04-12 北京易华录信息技术股份有限公司 光磁融合存储服务器集群的监控方法、系统及电子设备
CN116737514A (zh) * 2023-08-15 2023-09-12 南京国睿信维软件有限公司 一种基于日志与探针解析自动化运维方法
CN116737514B (zh) * 2023-08-15 2023-12-22 南京国睿信维软件有限公司 一种基于日志与探针解析自动化运维方法
CN117194149A (zh) * 2023-08-25 2023-12-08 中移互联网有限公司 监控方法、装置、系统、电子设备和存储介质

Similar Documents

Publication Publication Date Title
CN112711512A (zh) 一种Prometheus监控方法、装置及设备
US11755452B2 (en) Log data collection method based on log data generated by container in application container environment, log data collection device, storage medium, and log data collection system
US8707275B2 (en) Simulation environment for distributed programs
US10146599B2 (en) System and method for a generic actor system container application
JP2020096357A (ja) コンテナオーケストレーションサービスを使用した動的ルーティング
CN107665228B (zh) 一种关联信息查询方法、终端及设备
CN112527848B (zh) 基于多数据源的报表数据查询方法、装置、系统及存储介质
CN108874558B (zh) 分布式事务的消息订阅方法、电子装置及可读存储介质
CN107133309B (zh) 流程实例的存储、查询方法及装置、存储介质及电子设备
US9495402B2 (en) Managing a table of a database
CN113094674A (zh) 页面展示方法、装置、电子设备及存储介质
CN112417051A (zh) 容器编排引擎资源管理方法及装置、可读介质及电子设备
CN103164525B (zh) Web应用发布方法和装置
CN109117252B (zh) 基于容器的任务处理的方法、系统及容器集群管理系统
WO2021032146A1 (zh) 元数据管理方法和装置、设备及存储介质
US20140012988A1 (en) Provisioning computer resources on a network
US10109094B2 (en) Interface to index and display geospatial data
CN111880948A (zh) 数据刷新方法、装置、电子设备及计算机可读存储介质
CN110975293A (zh) 建立资源引用关系表的方法、装置、服务器及介质
CN112328656B (zh) 基于中台架构的服务查询方法、装置、设备及存储介质
CN112491943A (zh) 数据请求方法、装置、存储介质和电子设备
CN113703895B (zh) 看板的轮播方法、系统、装置、设备和存储介质
US20180107723A1 (en) Content oriented analysis of dumps
CN109902067B (zh) 文件处理方法、装置、存储介质及计算机设备
CN113609428B (zh) 基于Git的原型设计文件在线查看方法、装置、设备及介质

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