gpt4 book ai didi

apache-spark - 为在同一台机器上运行的多个执行程序导出 spark 执行程序 jmx 指标

转载 作者:行者123 更新时间:2023-12-02 11:46:26 27 4
gpt4 key购买 nike

我正在尝试使用具有以下选项的 javaagent 为 spark 驱动程序和执行程序抓取指标。我在 kubernetes 集群中有 Prometheus,我在 kubernetes 集群外运行这个 spark 应用程序。

spark.executor.extraJavaOptions=-javaagent:/opt/clkd/prometheus/jmx_prometheus_javaagent-0.3.1.jar=53700:executor_pattern.yaml

但由于两个执行程序都在同一台机器上运行,所以我遇到了以下异常

Caused by: java.net.BindException: Address already in use .... 

我看到很多人都发布了同样的问题,但我找不到答案。请告诉我如何解决此问题。

最佳答案

我认为您需要从基于拉取的监控切换到基于推送的监控。对于诸如 Spark 作业之类的东西,它更有意义,因为它们并非一直运行。为此,您有一些选择:


初始答案:

您不能让 2 个进程监听同一个端口,因此只需将 Prometheus 从不同的作业绑定(bind)到不同的端口即可。端口是 jmx_prometheus_javaagent-0.3.1.jar= 之后和 : 字符之前的数字 - 在您的例子中是 53700。因此,您可以将一个端口用于一项任务,将另一个端口(可能是 53701)用于第二项任务...

关于apache-spark - 为在同一台机器上运行的多个执行程序导出 spark 执行程序 jmx 指标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62875302/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com