Как получить использование памяти и использование ЦП из кластера

Мы используем AWS EMR для запуска искровых заданий. Из ганглиев мы видим, что использование памяти нашего кластера низкое по сравнению с выделенной памятью. Это касается и загрузки процессора.

В настоящее время мы сообщаем метрики искры, реализуя прослушиватель Spark. Но я не могу найти, как получить метрики ганглиев из кода искры. Доступна ли эта информация где-либо в искровых событиях?


person Akshay Chopra    schedule 27.09.2019    source источник
comment
почему вместо этого вы не видите сервер истории искры?   -  person firsni    schedule 27.09.2019


Ответы (1)


Вы можете попробовать sparklens (https://github.com/qubole/sparklens), чтобы сначала узнать нужное число исполнителей для вашего искрового приложения, а затем соответствующим образом настройте кластер. Использование кластера также зависит от характеристик масштабируемости приложения.

Чтобы получить метрики искры JMX

1) Создайте файл metrics.properties в spark/conf/

*.sink.jmx.class=org.apache.spark.metrics.sink.JmxSink driver.source.jvm.class=org.apache.spark.metrics.source.JvmSource executor.source.jvm.class=org.apache. spark.metrics.source.JvmSource master.source.jvm.class=org.apache.spark.metrics.source.JvmSource worker.source.jvm.class=org.apache.spark.metrics.source.JvmSource

2) Загрузите банку агента джолокай в какое-либо место в вашем кластере. Другие агенты JMX также должны работать.

3) Обновите следующие переопределения Spark:

spark.metrics.conf spark/conf/metrics.properties spark.driver.extraJavaOptions -Djava.net.preferIPv4Stack=true -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8090 -Dcom.sun. management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -javaagent:/tmp/jolokia-jvm.jar=port=8779,host=localhost spark.executor.extraJavaOptions -Djava.net.preferIPv4Stack= true -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8091 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -javaagent:/tmp /jolokia-jvm.jar=порт=8781,хост=локальный"

4) Используйте телеграф или другие инструменты мониторинга, чтобы получить метрики от агентов.

person Rohit Karlupia    schedule 28.09.2019