作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我是 spark 的新手,我们正在运行 spark on yarn。我可以很好地运行我的测试应用程序。我正在尝试收集 Graphite 中的 Spark 指标。我知道要对 metrics.properties 文件进行哪些更改。但是我的 spark 应用程序将如何看到这个 conf 文件?
/xxx/spark/spark-0.9.0-incubating-bin-hadoop2/bin/spark-class org.apache.spark.deploy.yarn.Client --jar /xxx/spark/spark-0.9.0-incubating-bin-hadoop2/examples/target/scala-2.10/spark-examples_2.10-assembly-0.9.0-incubating.jar --addJars "hdfs://host:port/spark/lib/spark-assembly_2.10-0.9.0-incubating-hadoop2.2.0.jar" --class org.apache.spark.examples.Test --args yarn-standalone --num-workers 50 --master-memory 1024m --worker-memory 1024m --args "xx"
我应该在哪里指定 metrics.properties
文件?
我对其进行了以下更改:
*.sink.Graphite.class=org.apache.spark.metrics.sink.GraphiteSink
*.sink.Graphite.host=machine.domain.com
*.sink.Graphite.port=2003
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
最佳答案
对于同一个问题,我找到了不同的解决方案。看起来 Spark 也可以从其配置属性中获取这些指标设置。例如 metrics.properties
中的以下行:
*.sink.Graphite.class=org.apache.spark.metrics.sink.GraphiteSink
也可以指定为具有键 spark.metrics.conf.*.sink.graphite.class
和值 org.apache.spark.metrics.sink.GraphiteSink< 的 Spark 属性
。您只需在每个键前添加 spark.metrics.conf.
。
我最终将所有这些设置放在代码中,如下所示:
val sparkConf = new spark.SparkConf()
.set("spark.metrics.conf.*.sink.graphite.class", "org.apache.spark.metrics.sink.GraphiteSink")
.set("spark.metrics.conf.*.sink.graphite.host", graphiteHostName)
// etc.
val sc = new spark.SparkContext(sparkConf)
这样我就为驱动程序和执行程序设置了指标接收器。我使用的是 Spark 1.6.0。
关于scala - yarn 上的 Spark ;如何将指标发送到 Graphite 水槽?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23529404/
我是一名优秀的程序员,十分优秀!