简体   繁体   English

使用Prometheus JMX代理从在单个节点上运行的多个Spark执行者导出指标

[英]Exporting metrics from multiple spark exeutors running on single node using prometheus JMX agent

I am running spark cluster and I have one node which has three executors running on it. 我正在运行spark集群,并且我有一个节点,该节点上正在运行三个执行程序。 I want to scrap metrics for all three executors using Prometheus JMX agent. 我想使用Prometheus JMX代理为所有三个执行器的指标进行剪贴。 I am passing Prometheus java agent using "spark.executor.extraJavaOptions" in spark submit command like below. 我正在通过Spark提交命令中的“ spark.executor.extraJavaOptions”传递Prometheus Java代理,如下所示。

--conf "spark.executor.extraJavaOptions=-javaagent:/opt/agent/jmx_prometheus_javaagent-0.3.1.jar=6677:/opt/agent/spark.yml" 

I am passing port as 6677 and JMX metrics are available for one executor only. 我正在传递端口,因为6677和JMX指标仅适用于一位执行者。 For other two executors javaagent will fail as port 6677 is already in use and there will be no metrics reported for other two executors. 对于其他两个执行程序,javaagent将失败,因为端口6677已在使用中,并且将不报告其他两个执行程序的度量标准。 Can someone please guide me how to solve this problem. 有人可以指导我如何解决这个问题。 I found similar question here but there is no answer for that. 我在这里找到了类似的问题但没有答案。

Use different ports for the other 2 executors? 为其他2个执行程序使用不同的端口? You can't have 3 servers listening on the same port and this has nothing to do with Prometheus or JMX. 您不能在同一端口上监听3台服务器,这与Prometheus或JMX无关。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM