Hav*_*nar 5 jmx visualvm amazon-ec2 apache-spark spark-streaming
我一直在尝试获取Spark Streaming作业,在EC2实例上运行以使用JMX向VisualVM报告.
截至目前,我有以下配置文件:
火花/ conf目录/ metrics.properties:
*.sink.jmx.class=org.apache.spark.metrics.sink.JmxSink
master.source.jvm.class=org.apache.spark.metrics.source.JvmSource
worker.source.jvm.class=org.apache.spark.metrics.source.JvmSource
driver.source.jvm.class=org.apache.spark.metrics.source.JvmSource
executor.source.jvm.class=org.apache.spark.metrics.source.JvmSource
Run Code Online (Sandbox Code Playgroud)
我开始像这样的火花流工作:(之后添加的-D位希望远程访问ec2的jmx)
终端:
spark/bin/spark-submit --class my.class.StarterApp --master local --deploy-mode client \
project-1.0-SNAPSHOT.jar \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=54321 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false
Run Code Online (Sandbox Code Playgroud)
命令行有两个问题spark-submit:
local- 您不能使用主localURL 运行 Spark Standalone,因为不会有线程来运行您的计算(作业),并且您有两个线程,即一个用于接收器,另一个用于驱动程序。您应该在日志中看到以下警告:WARN StreamingContext:如果有接收器获取数据,spark.master 应设置为 local[n],本地模式下 n > 1,否则 Spark 作业将无法获取资源来处理接收到的数据。
-D选项不会被 JVM 获取,因为它们是在 Spark Streaming 应用程序之后给出的,并且实际上成为了它的命令行参数。将它们放在前面 project-1.0-SNAPSHOT.jar并重新开始(您必须先解决上述问题!)| 归档时间: |
|
| 查看次数: |
2867 次 |
| 最近记录: |