CN117667580A - Hadoop集群监控方法、装置、系统、电子设备及存储介质 - Google Patents

Hadoop集群监控方法、装置、系统、电子设备及存储介质 Download PDF

Info

Publication number
CN117667580A
CN117667580A CN202311606702.XA CN202311606702A CN117667580A CN 117667580 A CN117667580 A CN 117667580A CN 202311606702 A CN202311606702 A CN 202311606702A CN 117667580 A CN117667580 A CN 117667580A
Authority
CN
China
Prior art keywords
monitoring
instance
prometaus
target
monitoring target
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
CN202311606702.XA
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.)
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software 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 China Mobile Communications Group Co Ltd, China Mobile Suzhou Software Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202311606702.XA priority Critical patent/CN117667580A/zh
Publication of CN117667580A publication Critical patent/CN117667580A/zh
Pending legal-status Critical Current

Links

Abstract

本公开提出了一种Hadoop集群监控方法、装置、电子设备及存储介质。接收由至少一个监控终端中每个所述监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;所述第一监控目标指所述目标Hadoop集群中新出现的监控目标;基于所述第一Prometheus实例信息及所述第一监控目标信息,判断所述第一Prometheus实例是够能够监控所述第一监控目标;若判断结果为否,则向所述至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;接收所述第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配所述第一监控目标与所述第二Prometheus实例,以使所述第二Prometheus实例监控所述第一监控目标。

Description

Hadoop集群监控方法、装置、系统、电子设备及存储介质
技术领域
本公开涉及大数据技术领域,尤其涉及一种Hadoop集群监控方法、装置、电子设备及存储介质。
背景技术
相关技术中的用于大规模Hadoop集群的Prometheus监控系统,没有实现高可用和水平扩展方案,单个Prometheus性能有限,并不足以支撑大规模Hadoop集群监控指标采集。
发明内容
本公开提供一种Hadoop集群监控方法、装置、电子设备及存储介质,以解决相关技术中的问题。
本公开的第一方面实施例提出了一种Hadoop集群监控方法,应用于监控服务端,该方法包括:
接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;
及,
获取目标Hadoop集群的第一监控目标的第一监控目标信息;第一监控目标指目标Hadoop集群中新出现的监控目标;
基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是够能够监控第一监控目标;
若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;
接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标。
在一实施例中,判断第一Prometheus实例能够监控第一监控目标之后,本公开提供的方法还包括:
若判断结果为是,匹配第一监控目标与第一Prometheus实例,以使第一Prometheus实例监控第一监控目标。
在一实施例中,接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,包括:
接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息;
基于第二Prometheus实例信息,通过服务注册模块为第二Prometheus实例创建对应的监控目标目录;
基于监控目标信息,将第一监控目标注册到监控目标目录。
本公开的第二方面实施例提出了一种Hadoop集群监控方法,应用于监控终端,该方法包括:
接收由监控服务端发送的创建第二Prometheus实例的指令;
执行创建第二Prometheus实例的指令,创建第二Prometheus实例;
向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;第二Prometheus实例信息用于使监控服务端基于第二Prometheus实例信息,将第一监控目标与第二Prometheus实例相匹配;第一监控目标指目标Hadoop集群中新出现的监控目标;
基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标。
在一实施例中,基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标,包括:
从服务注册模块中获取与第二Prometheus实例对应的监控目标目录;监控目标目录指监控服务端通过服务注册模块为第二Prometheus实例创建的监控目标目录;
利用第二Prometheus实例监控监控目标目录中的第一监控目标。
在一实施例中,基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标之后,本公开提供的方法还包括:
通过第二Prometheus实例向VictoriaMetrics发送监控结果,监控结果指第一监控目标的监控结果。
本公开的第三方面实施例提出了一种Hadoop集群监控装置,应用于监控服务端,该装置包括:
第一接收单元,用于接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;
第一获取单元,用于获取目标Hadoop集群的第一监控目标的第一监控目标信息;第一监控目标指目标Hadoop集群中新出现的监控目标;
判断单元,用于基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是够能够监控第一监控目标;
第一发送单元,用于若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;
第二接收单元,用于接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标。
本公开的第四方面实施例提出了一种Hadoop集群监控装置,应用于监控终端,该装置包括:
第三接收单元,用于接收由监控服务端发送的创建第二Prometheus实例的指令;
执行单元,用于执行创建第二Prometheus实例的指令,创建第二Prometheus实例;
第二发送单元,用于向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;第二Prometheus实例信息用于使监控服务端基于第二Prometheus实例信息,将第一监控目标与第二Prometheus实例相匹配;第一监控目标指目标Hadoop集群中新出现的监控目标;
监控单元,用于基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标。
本公开的第五方面实施例提出了一种Hadoop集群监控系统,包括:
监控服务端,用于接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;第一监控目标指目标Hadoop集群中新出现的监控目标;基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是够能够监控第一监控目标;若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标。
至少一个监控终端,所属每个监控终端上部署至少一个Prometheus实例;监控终端用于接收由监控服务端发送的创建第二Prometheus实例的指令;执行创建第二Prometheus实例的指令,创建第二Prometheus实例;向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;第二Prometheus实例信息用于使监控服务端基于第二Prometheus实例信息,将第一监控目标与第二Prometheus实例相匹配;第一监控目标指目标Hadoop集群中新出现的监控目标;基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标;
服务注册模块,用于为第二Prometheus实例创建对应的监控目标目录。
在一实施例中,系统还包括VictoriaMetrics。
在一实施例中,VictoriaMetrics用于存储第二Prometheus实例发送监控结果,监控结果指第一监控目标的监控结果。
本公开的第六方面实施例提出了一种电子设备,包括:
至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开第一方面实施例,或本公开第二方面实施例中描述的方法。
本公开的第七方面实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开第一方面实施例,或本公开第二方面实施例中描述的方法。
综上,本公开提出了一种Hadoop集群监控方法,该方法包括:监控服务端接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;第一监控目标指目标Hadoop集群中新出现的监控目标;监控服务端基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标;若判断结果为否,则监控服务端向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;监控终端接收由监控服务端发送的创建第二Prometheus实例的指令;监控终端执行创建第二Prometheus实例的指令,创建第二Prometheus实例;监控终端向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;第二Prometheus实例信息用于使监控服务端基于第二Prometheus实例信息,将第一监控目标与第二Prometheus实例相匹配;第一监控目标指目标Hadoop集群中新出现的监控目标;监控服务端接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标;监控终端基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标。
本公开提供的方案,通过监控服务端接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标;若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;通过监控终端接收由监控服务端发送的创建第二Prometheus实例的指令;执行创建第二Prometheus实例的指令,创建第二Prometheus实例;向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;通过监控服务端接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,监控终端基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标。本公开提供的方案,将Prometheus应用于Hadoop集群监控中,实现了Prometheus高可用和水平扩展,解决单个Prometheus性能不足问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,而且还可以根据提供的附图将本申请应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
图1为本公开实施例提供的一种Hadoop集群监控方法的流程示意图;
图2为本公开实施例提供的监控服务端基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标的方法流程示意图;
图3为本公开应用示例提供的Hadoop集群监控架构中高可用Prometheus实例的原理框图;
图4为本公开应用示例提供的第二种Hadoop集群监控方法的流程示意图;
图5为本公开应用示例提供的Hadoop集群监控架构中利用监控终端在同一台物理机部署多个Prometheus实例的原理框图;
图6为本公开应用示例提供的第三种Hadoop集群监控方法的流程示意图;
图7为本公开应用示例提供的第四种Hadoop集群监控方法的流程示意图;
图8为本公开应用示例提供的Hadoop集群监控系统架构的原理框图;
图9为本公开应用示例提供的Hadoop集群监控方法的流程示意图;
图10为本公开实施例提供的第一种Hadoop集群监控方法装置的结构示意图;
图11为本公开实施例提供的第二种Hadoop集群监控方法装置的结构示意图;
图12为本公开实施例提供的电子设备的硬件组成结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
应当理解,本申请中使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
相关技术中的用于大规模Hadoop集群的Prometheus监控系统,没有实现高可用和水平扩展方案,单个Prometheus性能有限,并不足以支撑大规模Hadoop集群监控指标采集。
相关技术中,三种常见的对Hadoop分布式集群进行监控的方案如下:
第一种方案是利用Ambari Metrics System(AMS)监控系统对Hadoop分布式集群进行监控。AMS监控系统是由Ambari(Ambari是Apache Software Foundation的一个顶级开源项目,是一个集中部署、管理、监控Hadoop分布式集群的工具)提供的监控系统,主要为系统管理员提供了集群性能的监察功能。AMS会不断的收集集群相关的性能数据,并最终由Metrics Collector中的Timeline Server保存到HBase数据库中。AMS是开源Hadoop管理套件最主要的监控工具。
第二种方案是利用Prometheus+Grafana监控系统对Hadoop分布式集群进行监控。Prometheus作为云原生时代的监控组件,拥有着活跃的社区和丰富的扩展。Prometheus核心部分只有一个单独的二进制文件,不存在任何的第三方库的依赖。其采集的数据均以Metric的形式保存在内置的时间序列数据库中,Prometheus能够高效的处理所监控任务产生的大量数据。目前已经有一些将Prometheus应用于Hadoop集群监控的尝试。
第三种方案是利用Zabbix监控系统对Hadoop分布式集群进行监控。Zabbix是由Alexei Vladishev开源的分布式监控系统,支持多种采集方式和采集客户端。Zabbix核心组件主要是Agent和Server。其中Agent负责采集数据并通过主动或者被动的方式将采集数据发送到Server/Proxy。Server将收集的监控数据存储到Zabbix Database中。ZabbixDatabase支持常用的关系型数据库,例如MySQL、PostgreSQL、Oracle等,通常为MySQL。
上述方案中存在以下缺陷:
一是针对社区开源的AMS,其监控指标数据存于本集群的HBase中。然而HBase并非一个专门设计的时序数据库,查询近段时间内的监控数据效率尚可,查询较久远时段内的监控数据则效率低下,并不适合作为长期存储使用。另外在多集群场景下,监控数据分散在各个集群内部,不利于建设统一的监控中心。
二是Zabbix由于使用了关系型数据存储时序数据,所以在监控大规模集群时常常在数据存储方面捉襟见肘。为此Zabbix4.2版本后也开始支持时序数据存储,不过目前还不成熟。
三是目前已有的将Prometheus用于Hadoop集群监控,仅仅是有限的尝试。受制于云原生的Prometheus没有实现高可用和水平扩展方案,单个Prometheus性能有限,并不足以支撑大规模Hadoop集群监控指标采集。
为了解决相关技术中的至少一个缺陷,本公开提供了一种Hadoop集群监控方法,通过监控服务端接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标;若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;通过监控终端接收由监控服务端发送的创建第二Prometheus实例的指令;执行创建第二Prometheus实例的指令,创建第二Prometheus实例;向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;通过监控服务端接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,监控终端基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标。本公开提供的方案,将Prometheus应用于Hadoop集群监控中,实现了Prometheus高可用和水平扩展,解决单个Prometheus性能不足问题。
下面结合附图及具体实施例对本公开作进一步详细的说明。
本公开实施例提供的第一种Hadoop集群监控方法,其执行主体为监控服务端,监控服务端可以直接部署在物理主机或是虚拟主机上。
如图1所示,图1为本公开实施例提供的一种Hadoop集群监控方法的流程示意图。本公开实施例提供的Hadoop集群监控方法,包括以下步骤:
步骤101,接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;
在一实施例中,监控终端负责Prometheus实例生命周期管理,包括:
执行监控服务端发来的创建、销毁Prometheus实例指令,执行监控服务端发来的Prometheus配置修改操作,同时定期检测Prometheus实例的健康状态,并将状态同步给监控服务端。
在一实施例中,监控终端信息包括IP、端口、当前主机的CPU和内存的资源占用情况等。
在一实施例中,第一Prometheus实例为至少一个监控终端中每个监控终端上当前运行的Prometheus实例。
在一实施例中,Prometheus实例用于定时采集监控目标的监控信息,并发送到远端存储。每个Prometheus的配置文件配置服务注册模块上对应的监控目标目录名,Prometheus会自动从服务注册模块同步这些监控目标信息。
在一实施例中,Prometheus实例信息包括:
服务配置信息:Prometheus实例的IP地址和端口号,用于提供监控数据的接口;
存储配置信息:数据存储的相关配置,例如数据目录的路径和存储时长等;
监控目标配置信息:Prometheus实例监控的目标对象列表,例如服务器、应用程序等。
在一实施例中,第一监控目标指Hadoop集群中新的监控目标。
在一实施例中,监控目标信息指node exporter、jmx exporter、hdfs exporter等目标信息;
步骤102,基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标;
在一实施例中,监控服务端从缓存中读取监控终端信息以及已经创建运行的Prometheus实例信息,判断当前已运行的Prometheus实例是否有足够能力承载新的Hadoop集群监控目标。
在一实施例中,单个Prometheus具有监控目标数承载上限,当达到承载上限时,单个Prometheus没有能力监控Hadoop集群中新的监控目标。
在一实施例中,监控服务端的缓存可以是Redis,Memcached,Ehcache三种缓存中的任一种。
在一实施例中,如图2所示为监控服务端基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标的方法流程示意图,该方法包括:
步骤201,监控服务端获取第一监控目标;
步骤202,监控服务端判断第一Prometheus实例是否能够监控第一监控目标;
若是,进入步骤203;
若否,进入步骤204。
步骤203,监控服务端将第一监控目标分配到第一Prometheus实例上;
步骤204,监控服务端计算需要创建新的Prometheus实例个数;
步骤205,监控服务端选择第二监控终端;
步骤206,监控服务端发送创建Prometheus实例指令到第二监控终端;
步骤207,第二监控终端创建Prometheus实例;
步骤208,监控服务端将第一监控目标分配到第二监控终端中的Prometheus实例。
步骤103,若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;
在一实施例中,若判断结果为否,说明已有的Prometheus实例数量不够,监控服务端会自动匹配两台合适的主机,给对应的监控终端发送指令,创建若一组高可用Prometheus实例。
在一实施例中,创建高可用Prometheus实例方案如图3所示:图3为本公开应用示例提供的Hadoop集群监控架构中高可用Prometheus实例的原理框图。其中内容包括:
在一实施例中,每个Prometheus实例都可以为互为主备的Prometheus-1-a实例和Prometheus-1-b实例。
在一实施例中,互为主备的Prometheus-1-a实例和Prometheus-1-b实例分布在两台机器上,其监控目标均配置为‘Prometheus-1targets集合’,保证两个实例采集、存储一样的监控目标。
在一实施例中,以创建一组高可用的Prometheus实例为例,流程包括以下步骤:
监控服务端将要创建的高可用Prometheus实例信息以及对应的配置信息下发到2个监控终端执行。接口和参数如下:
相应监控终端收到指令后,执行创建、配置、启动Prometheus实例操作,并发回执行成功回应。因Prometheus实例在linux环境下是个二进制包,监控终端仅需执行一条命令,就可以启动一个Prometheus实例,如下所示:
sh prometheus--config.file=prometheus-1.yml--web.enable-lifecycle
--storage.tsdb.path=/data-1--web.listen-address=0.0.0.0:9090
监控服务端收到执行成功回应后,将监控目标注册到Prometheus实例在服务注册模块对应的目录下。
Prometheus实例从服务注册模块同步各自对应的监控目标,定时采集数据,并发送到远端VicrotiaMetrics统一存储。
步骤104,接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标。
在一实施例中,监控服务端在服务注册模块上给第二Prometheus实例建立一个专属的监控目标目录,将拟分配的第一监控目标信息分配到对应目录下,从而匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标。
在一实施例中,判断第一Prometheus实例能够监控第一监控目标之后,本公开提供的方法还包括:
若判断结果为是,匹配第一监控目标与第一Prometheus实例,以使第一Prometheus实例监控第一监控目标。
在一实施例中,监控服务端在服务注册模块上给第一Prometheus实例建立一个专属的监控目标目录,将拟分配的第一监控目标信息分配到对应目录下,从而匹配第一监控目标与第一Prometheus实例,以使第一Prometheus实例监控第一监控目标。
综上,根据本公开提出的一种Hadoop集群监控方法,该方法包括:通过监控服务端接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标;若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标。
本公开提供的方案,通过监控服务端接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标;若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;通过监控终端接收由监控服务端发送的创建第二Prometheus实例的指令;执行创建第二Prometheus实例的指令,创建第二Prometheus实例;向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;通过监控服务端接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,监控终端基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标。本公开提供的方案,将Prometheus应用于Hadoop集群监控中,实现了Prometheus高可用和水平扩展,解决单个Prometheus性能不足问题。
图4进一步展示出本公开提出的一种Hadoop集群监控方法的流程图。基于图1所示的实施例,进一步解释该方法,还包括如下步骤:
步骤401,接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息;
在一实施例中,第二监控终端为至少一个监控终端中的至少一个的监控终端。
在一实施例中,如图5所示,图5为本公开应用示例提供的Hadoop集群监控架构中利用监控终端在同一台物理机部署多个Prometheus实例的原理框图。
在一实施例中,针对CPU和内存资源较充足的主机,监控服务端将利用对应主机上的监控终端创建运行多个Prometheus实例,只需为不同的Prometheus实例配置不同的服务端口和数据目录,从而节约主机资源。
在一实施例中,监控服务端发送监控终端创建多个Prometheus实例步骤包括:
在监控系统的主机上部署监控终端后,监控终端主动向监控服务端发送消息,告知自己的IP和端口、当前主机的CPU和内存情况等信息;
运维人员调用监控服务端提供的接口,输入要监控的集群信息。
监控服务端自动调用Hadoop Ambari API接口获取并统计要监控的集群信息中的监控目标,并计算需要的Prometheus实例数。从而监控服务端根据需要的Prometheus实例数发送创建Prometheus实例指令给监控终端,监控终端执行创建Prometheus实例指令,创建Prometheus实例。其中接口及参数如下
/>
在一实施例中,第二Prometheus实例为第二监控终端接收到监控服务端创建Prometheus指令创建的Prometheus实例。
步骤402,基于第二Prometheus实例信息,通过服务注册模块为第二Prometheus实例创建对应的监控目标目录;
在一实施例中,服务注册模块,用于支持Prometheus实例自动服务发现。Hadoop集群的每个监控目标均提供监控指标获取地址,监控服务端分配给同一个Prometheus实例的监控目标,服务注册模块会将其注册到同一个监控目标集合目录下。
步骤403,基于监控目标信息,将第一监控目标注册到监控目标目录。
在一实施例中,基于监控目标信息,服务注册模块针对监控目标提供的监控指标地址将第一监控目标注册到可用的Prometheus实例下的监控目标目录。
本公开实施例提供的第三种Hadoop集群监控方法,其执行主体为监控终端,监控终端可以直接部署在物理主机或是虚拟主机上。
如图6所示,图6为本公开实施例提供的第三种Hadoop集群监控方法的流程示意图。本公开实施例提供的第三种Hadoop集群监控方法,包括以下步骤:
步骤601,接收由监控服务端发送的创建第二Prometheus实例的指令;
步骤602,执行创建第二Prometheus实例的指令,创建第二Prometheus实例;
步骤603,向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;
在一实施例中,第二Prometheus实例信息用于使监控服务端基于第二Prometheus实例信息,将第一监控目标与第二Prometheus实例相匹配。
在一实施例中,第一监控目标指目标Hadoop集群中新出现的监控目标。
步骤604,基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标。
图7进一步展示出本公开提出的一种Hadoop集群监控方法的流程图。基于图6所示的实施例,进一步解释该方法,还包括如下步骤:
步骤701,从服务注册模块中获取与第二Prometheus实例对应的监控目标目录;
在一实施例中,监控目标目录指监控服务端通过服务注册模块为第二Prometheus实例创建的监控目标目录。
步骤702,利用第二Prometheus实例监控监控目标目录中的第一监控目标。
在一实施例中,基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标之后,本公开提供的方法还包括:
通过第二Prometheus实例向VictoriaMetrics发送监控结果。
在一实施例中,监控结果指第一监控目标的监控结果。
在一实施例中,VictoriaMetrics是一种高性能开源时序数据库,在本公开提供的Hadoop集群监控方法中作为Prometheus的远端存储,并供上层运维人员查询监控结果使用。
如图8和图9所示:图8为本公开应用示例提供的Hadoop集群监控系统架构的原理框图,图9为本公开应用示例提供的Hadoop集群监控方法的流程示意图。本公开应用示例提供的Hadoop集群监控方法可应用于本公开应用示例提供的Hadoop集群监控系统架构中。本公开应用示例提供的Hadoop集群监控方法,包括以下步骤:
步骤901,监控服务端接收监控终端信息及监控终端上运行的第一Prometheus实例信息;
步骤902,监控服务端获取目标Hadoop集群的第一监控目标的第一监控目标信息;
步骤903,监控服务端基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是否能够监控第一监控目标;
若是,进入步骤904;
若否,进入步骤908。
步骤904,监控服务端基于第一Prometheus实例信息,通过服务注册模块为第一Prometheus实例创建对应的监控目标目录;
步骤905,监控服务端基于监控目标信息,将第一监控目标注册到第一Prometheus实例对应的监控目标目录;
步骤906,监控终端利用第一Prometheus实例监控监控目标目录中的第一监控目标;
步骤907,监控终端通过第一Prometheus实例向VictoriaMetrics发送监控结果,供上层运维人员查询监控结果使用。
步骤908,监控服务端选择第二监控终端;
在一实施例中,监控服务端选择第二监控终端指监控服务端从至少一个监控终端中选择至少一个第二监控终端。
步骤909,监控服务端向第二监控终端发送创建第二Prometheus实例的指令;
步骤910,第二监控终端创建第二Prometheus实例;
步骤911,监控服务端基于第二Prometheus实例信息,通过服务注册模块为第二Prometheus实例创建对应的监控目标目录;
步骤912,监控服务端基于监控目标信息,将第一监控目标注册到第二Prometheus实例对应的监控目标目录;
步骤913,监控终端从服务注册模块中获取与第二Prometheus实例对应的监控目标目录;
步骤914,监控终端利用第二Prometheus实例监控监控目标目录中的第一监控目标;
步骤915,监控终端通过第二Prometheus实例向VictoriaMetrics发送监控结果,供上层运维人员查询监控结果使用。
为了实现本公开实施例提供的应用于监控服务端的第一种Hadoop集群监控方法,本公开实施例还提供一种Hadoop集群监控方法装置,该装置应用于监控服务端,如图10所示。图10为本公开实施例提供的第一种Hadoop集群监控方法装置的结构示意图,第一种Hadoop集群监控方法装置1000,包括:
第一接收单元1001,用于接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;
第一获取单元1002,用于获取目标Hadoop集群的第一监控目标的第一监控目标信息;第一监控目标指目标Hadoop集群中新出现的监控目标;
判断单元1003,用于基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是够能够监控第一监控目标;
第一发送单元1004,用于若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;
第二接收单元1005,用于接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标。
在一实施例中,判断单元1003,具体用于:
若判断结果为是,匹配第一监控目标与第一Prometheus实例,以使第一Prometheus实例监控第一监控目标。
在一实施例中,第二接收单元1005,具体用于:
接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息;
在一实施例中,第一种Hadoop集群监控方法装置1000,还包括创建单元,创建单元用于:
基于第二Prometheus实例信息,通过服务注册模块为第二Prometheus实例创建对应的监控目标目录;
在一实施例中,第一种Hadoop集群监控方法装置1000,还包括注册单元,注册单元用于:
基于监控目标信息,将第一监控目标注册到监控目标目录。
为了实现本公开实施例提供的应用于监控终端的第二种Hadoop集群监控方法,本公开实施例还提供一种Hadoop集群监控方法装置,该装置应用于监控终端,如图11所示。图11为本公开实施例提供的第二种Hadoop集群监控方法装置的结构示意图,第二种Hadoop集群监控方法装置1100,包括:
第三接收单元1101,用于接收由监控服务端发送的创建第二Prometheus实例的指令;
执行单元1102,用于执行创建第二Prometheus实例的指令,创建第二Prometheus实例;
第二发送单元1103,用于向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;第二Prometheus实例信息用于使监控服务端基于第二Prometheus实例信息,将第一监控目标与第二Prometheus实例相匹配;第一监控目标指目标Hadoop集群中新出现的监控目标;
监控单元1104,用于基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标。
在一实施例中,第二种Hadoop集群监控方法装置1000,还包括获取单元,获取单元用于:
从服务注册模块中获取与第二Prometheus实例对应的监控目标目录;监控目标目录指监控服务端通过服务注册模块为第二Prometheus实例创建的监控目标目录;
在一实施例中,监控单元1104,具体用于:
利用第二Prometheus实例监控监控目标目录中的第一监控目标。
在一实施例中,第二种Hadoop集群监控方法装置1100,还包括第三发送单元,第三发送单元用于:
通过第二Prometheus实例向VictoriaMetrics发送监控结果,监控结果指第一监控目标的监控结果。
需要说明的是:上述实施例提供的Hadoop集群监控方法装置在进行Hadoop集群监控方法时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将Hadoop集群监控方法装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的Hadoop集群监控方法装置与本公开实施例提供Hadoop集群监控方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在一实施例中,本公开实施例还提供一种Hadoop集群监控系统,该系统包括:
监控服务端,用于接收由至少一个监控终端中每个监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;第一监控目标指目标Hadoop集群中新出现的监控目标;基于第一Prometheus实例信息及第一监控目标信息,判断第一Prometheus实例是够能够监控第一监控目标;若判断结果为否,则向至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;接收第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配第一监控目标与第二Prometheus实例,以使第二Prometheus实例监控第一监控目标。
至少一个监控终端,所属每个监控终端上部署至少一个Prometheus实例;监控终端用于接收由监控服务端发送的创建第二Prometheus实例的指令;执行创建第二Prometheus实例的指令,创建第二Prometheus实例;向监控服务端发送第二Prometheus实例的第二Prometheus实例信息;第二Prometheus实例信息用于使监控服务端基于第二Prometheus实例信息,将第一监控目标与第二Prometheus实例相匹配;第一监控目标指目标Hadoop集群中新出现的监控目标;基于监控服务端发送的第一监控目标与第二Prometheus实例的匹配结果,利用第二Prometheus实例监控第一监控目标;
服务注册模块,用于为第二Prometheus实例创建对应的监控目标目录。
在一实施例中,系统还包括VictoriaMetrics;
在一实施例中,VictoriaMetrics用于存储第二Prometheus实例发送监控结果。
在一实施例中,监控结果指第一监控目标的监控结果。
图12为本公开实施例提供的电子设备的硬件组成结构示意图,如图12所示,电子设备1200包括至少一个处理器1202;以及与至少一个处理器1202通信连接的存储器1201;其中,存储器1201存储有可被至少一个处理器1202执行的指令,指令被至少一个处理器1202执行,以实现本公开实施例的Hadoop集群监控方法的步骤。
可选地,该电子设备具体可为本申请实施例的Hadoop集群监控方法装置,并且该电子设备可以实现本申请实施例的各个方法中由Hadoop集群监控方法装置实现的相应流程,为了简洁,在此不再赘述。
可理解,电子设备中还包括通信接口1203。电子设备中的各个组件通过总线系统704耦合在一起。可理解,总线系统1204用于实现这些组件之间的连接通信。总线系统704除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图12中将各种总线都标为总线系统1204。
可以理解,存储器1201可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read OnlyMemory)、可编程只读存储器(PROM,Programmable Read Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable ReadOnly Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable ReadOnly Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CDROM,Compact Disc ReadOnly Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器1201旨在包括但不限于这些和任意其它适合类型的存储器。
上述本公开实施例揭示的方法可以应用于处理器1202中,或者由处理器1202实现。处理器1202可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1202中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1202可以是通用处理器、DSP,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器1202可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器1201,处理器1202读取存储器1201中的信息,结合其硬件完成前述方法的步骤。
在示例性实施例中,电子设备可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,ProgrammableLogic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、FPGA、通用处理器、控制器、MCU、微处理器(Microprocessor)、或其他电子元件实现,用于执行前述方法。
本公安实施例还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行时实现本发明实施例应用于监控服务端的Hadoop集群监控方法或应用于监控终端Hadoop集群监控方法的步骤。
可选的,该计算机可读存储介质可应用于本申请实施例中的应用于监控服务端的Hadoop集群监控装置或应用于监控终端Hadoop集群监控装置,并且该计算机指令使得计算机执行本申请实施例的各个方法中由Hadoop集群监控方法装置实现的相应流程,为了简洁,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种Hadoop集群监控方法,应用于监控服务端,其特征在于,包括:
接收由至少一个监控终端中每个所述监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;
及,
获取目标Hadoop集群的第一监控目标的第一监控目标信息;所述第一监控目标指所述目标Hadoop集群中新出现的监控目标;
基于所述第一Prometheus实例信息及所述第一监控目标信息,判断所述第一Prometheus实例是否能够监控所述第一监控目标;
若判断结果为否,则向所述至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;
接收所述第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配所述第一监控目标与所述第二Prometheus实例,以使所述第二Prometheus实例监控所述第一监控目标。
2.根据权利要求1所述的方法,其特征在于,所述判断所述第一Prometheus实例能够监控所述第一监控目标之后,所述的方法还包括:
若判断结果为是,匹配所述第一监控目标与所述第一Prometheus实例,以使所述第一Prometheus实例监控所述第一监控目标。
3.根据权利要求1所述的方法,其特征在于,所述接收所述第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配所述第一监控目标与所述第二Prometheus实例,包括:
接收所述第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息;
基于所述第二Prometheus实例信息,通过服务注册模块为所述第二Prometheus实例创建对应的监控目标目录;
基于所述监控目标信息,将所述第一监控目标注册到所述监控目标目录。
4.一种Hadoop集群监控方法,应用于监控终端,其特征在于,包括:
接收由监控服务端发送的创建第二Prometheus实例的指令;
执行所述创建第二Prometheus实例的指令,创建所述第二Prometheus实例;
向所述监控服务端发送所述第二Prometheus实例的第二Prometheus实例信息;所述第二Prometheus实例信息用于使所述监控服务端基于所述第二Prometheus实例信息,将第一监控目标与所述第二Prometheus实例相匹配;所述第一监控目标指所述目标Hadoop集群中新出现的监控目标;
基于所述监控服务端发送的所述第一监控目标与所述第二Prometheus实例的匹配结果,利用所述第二Prometheus实例监控所述第一监控目标。
5.根据权利要求4所述的方法,其特征在于,所述基于所述监控服务端发送的所述第一监控目标与所述第二Prometheus实例的匹配结果,利用所述第二Prometheus实例监控所述第一监控目标,包括:
从服务注册模块中获取与所述第二Prometheus实例对应的监控目标目录;所述监控目标目录指所述监控服务端通过服务注册模块为所述第二Prometheus实例创建的监控目标目录;
利用所述第二Prometheus实例监控所述监控目标目录中的所述第一监控目标。
6.根据权利要求4所述的方法,其特征在于,所述基于所述监控服务端发送的所述第一监控目标与所述第二Prometheus实例的匹配结果,利用所述第二Prometheus实例监控所述第一监控目标之后,所述的方法还包括:
通过第二Prometheus实例向VictoriaMetrics发送所述监控结果,所述监控结果指所述第一监控目标的监控结果。
7.一种Hadoop集群监控装置,应用于监控服务端,其特征在于,包括:
第一接收单元,用于接收由至少一个监控终端中每个所述监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;
第一获取单元,用于获取目标Hadoop集群的第一监控目标的第一监控目标信息;所述第一监控目标指所述目标Hadoop集群中新出现的监控目标;
判断单元,用于基于所述第一Prometheus实例信息及所述第一监控目标信息,判断所述第一Prometheus实例是够能够监控所述第一监控目标;
第一发送单元,用于若判断结果为否,则向所述至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;
第二接收单元,用于接收所述第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配所述第一监控目标与所述第二Prometheus实例,以使所述第二Prometheus实例监控所述第一监控目标。
8.一种Hadoop集群装置,应用于监控终端,其特征在于,包括:
第三接收单元,用于接收由监控服务端发送的创建第二Prometheus实例的指令;
执行单元,用于执行所述创建第二Prometheus实例的指令,创建所述第二Prometheus实例;
第二发送单元,用于向所述监控服务端发送所述第二Prometheus实例的第二Prometheus实例信息;所述第二Prometheus实例信息用于使所述监控服务端基于所述第二Prometheus实例信息,将第一监控目标与所述第二Prometheus实例相匹配;所述第一监控目标指所述目标Hadoop集群中新出现的监控目标;
监控单元,用于基于所述监控服务端发送的所述第一监控目标与所述第二Prometheus实例的匹配结果,利用所述第二Prometheus实例监控所述第一监控目标。
9.一种Hadoop集群监控系统,其特征在于,包括:
监控服务端,用于接收由至少一个监控终端中每个所述监控终端发送的监控终端信息及对应的监控终端上运行的第一Prometheus实例的第一Prometheus实例信息;及,获取目标Hadoop集群的第一监控目标的第一监控目标信息;所述第一监控目标指所述目标Hadoop集群中新出现的监控目标;基于所述第一Prometheus实例信息及所述第一监控目标信息,判断所述第一Prometheus实例是够能够监控所述第一监控目标;若判断结果为否,则向所述至少一个监控终端中的第二监控终端发送创建第二Prometheus实例的指令;接收所述第二监控终端发送的第二Prometheus实例的第二Prometheus实例信息,匹配所述第一监控目标与所述第二Prometheus实例,以使所述第二Prometheus实例监控所述第一监控目标。
至少一个监控终端,所属每个监控终端上部署至少一个Prometheus实例;所述监控终端用于接收由监控服务端发送的创建第二Prometheus实例的指令;执行所述创建第二Prometheus实例的指令,创建所述第二Prometheus实例;向所述监控服务端发送所述第二Prometheus实例的第二Prometheus实例信息;所述第二Prometheus实例信息用于使所述监控服务端基于所述第二Prometheus实例信息,将第一监控目标与所述第二Prometheus实例相匹配;所述第一监控目标指所述目标Hadoop集群中新出现的监控目标;基于所述监控服务端发送的所述第一监控目标与所述第二Prometheus实例的匹配结果,利用所述第二Prometheus实例监控所述第一监控目标;
服务注册模块,用于为所述第二Prometheus实例创建对应的监控目标目录。
10.根据权利要求9所述的系统,其特征在于,所述的系统还包括VictoriaMetrics;
所述VictoriaMetrics用于存储所述第二Prometheus实例发送所述监控结果,所述监控结果指所述第一监控目标的监控结果。
11.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至3或权利要求4至6中任一项所述的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1至3或权利要求4至6中任一项所述的方法。
CN202311606702.XA 2023-11-28 2023-11-28 Hadoop集群监控方法、装置、系统、电子设备及存储介质 Pending CN117667580A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311606702.XA CN117667580A (zh) 2023-11-28 2023-11-28 Hadoop集群监控方法、装置、系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311606702.XA CN117667580A (zh) 2023-11-28 2023-11-28 Hadoop集群监控方法、装置、系统、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN117667580A true CN117667580A (zh) 2024-03-08

Family

ID=90067361

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311606702.XA Pending CN117667580A (zh) 2023-11-28 2023-11-28 Hadoop集群监控方法、装置、系统、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117667580A (zh)

Similar Documents

Publication Publication Date Title
CN110865867B (zh) 应用拓扑关系发现的方法、装置和系统
CN106933548B (zh) 全局信息获取、处理及更新、方法、装置和系统
US9563673B2 (en) Query method for a distributed database system and query apparatus
CN106933550B (zh) 全局信息获取、处理及更新方法、装置和系统
WO2020147331A1 (zh) 一种微服务监控方法及系统
CN106933547B (zh) 全局信息获取及处理的方法、装置和更新系统
WO2019137320A1 (zh) 资源调度方法、装置、设备和系统
WO2018121334A1 (zh) 一种提供网页应用服务的方法、装置、电子设备及系统
CN107368369B (zh) 分布式容器管理方法及系统
CN110888889A (zh) 一种数据信息更新方法、装置及设备
CN111459749A (zh) 基于Prometheus的私有云监控方法、装置、计算机设备及存储介质
CN111966289A (zh) 基于Kafka集群的分区优化方法和系统
EP3786802A1 (en) Method and device for failover in hbase system
CN112565327B (zh) 访问流量转发方法、集群管理方法及相关装置
CN114745358A (zh) 负载均衡服务中的ip地址管理方法、系统及控制器
US9547590B2 (en) Managing memory
US11153173B1 (en) Dynamically updating compute node location information in a distributed computing environment
CN117667580A (zh) Hadoop集群监控方法、装置、系统、电子设备及存储介质
CN109005071B (zh) 一种决策部署方法和调度设备
CN115473858A (zh) 数据传输方法和流式数据传输系统
CN108023920B (zh) 一种数据包传输方法、设备及应用接口
CN111382132A (zh) 医学影像数据云存储系统
CN112685486B (zh) 数据库集群的数据管理方法、装置、电子设备及存储介质
CN114995762A (zh) 一种厚置备卷扩容方法、装置、设备及存储介质
CN105939278B (zh) 一种流量处理方法及装置

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