У меня есть класс java, который управляет заданиями и выполняет их через искру (используя 1.6). Я использую API - sparkLauncher. startApplication (SparkAppHandle.Listener ... listeners), чтобы отслеживать состояние задания. Проблема заключается в том, что я перешел работать в реальной среде кластера, и этот способ не может работать, когда мастер и рабочие не находятся на одном компьютере, так как внутренняя реализация использует только localhost (loopback) для открытия порта для рабочих. API sparkLauncher.launch() работает, но не позволяет мне контролировать статус. Какова наилучшая практика для среды кластера с использованием java-кода? Я также видел вариант скрытого Rest API, достаточно ли он достаточно зрелый? Должен ли я включить его в искрах как-то (я получаю отказ в доступе, хотя порт открыт снаружи)?Отправить и отслеживать искровые задания через java в режиме кластера
ответ
REST API
В дополнение к просмотру метрики в пользовательском интерфейсе, они также доступны в формате JSON. Это дает разработчикам простой способ создания новых визуализаций и средств мониторинга для Spark. JSON доступен как для запущенных приложений, так и для сервера истории. Конечные точки монтируются в/api/v1. Например, для сервера истории они, как правило, будут доступны по адресу http: //: 18080/api/v1 и для работающего приложения, по адресу http://localhost:4040/api/v1.
Подробнее вы можете найти here.
Каждый SparkContext запускает веб-интерфейс по умолчанию на порту 4040, который отображает полезную информацию о приложении. Это включает в себя:
- список этапов планировщика задач и
- Резюме размеров RDD и использование памяти
- экологической информации.
- Информация о бегущих исполнителях
Вы можете получить доступ к этому интерфейсу, просто открыв http://driver-node:4040 в веб-браузере. Если на одном и том же хосте работает несколько SparkContext, они будут привязываться к последовательным портам, начиная с 4040 (4041, 4042 и т. Д.).
Подробнее вы можете найти here.
- 1. Как запустить параллельные искровые задания?
- 2. Почему работают искровые задания с использованием только одного исполнителя?
- 3. SGE - QSUB не удается отправить задания в режиме -sync
- 4. Запуск задания в фоновом режиме
- 5. Как запустить искру в интерактивном режиме в режиме кластера
- 6. искровых отправить --proxy пользователя не работает в режиме кластера пряжи
- 7. Отправить задания YARN для удаленного кластера Hadoop через прокси-сервер socks
- 8. искровые HDFS режим пряжи кластера И.О. конфигурации пути к файлу
- 9. Запуск задания искры в режиме пряжи
- 10. apache storm в режиме кластера
- 11. Использование DistributedCached в режиме кластера
- 12. развертывание искрового кластера через докер-компоновку в режиме док-роя
- 13. Как отслеживать отложенные задания в Rails?
- 14. Как отслеживать задания SQL Server в C#
- 15. Как отслеживать задания Que в newrelic?
- 16. T4MVC renderpartial и искровые просмотров
- 17. Apache искра в режиме кластера, где запускаются задания. В Мастере или в рабочем узле?
- 18. Выполнение задания на нескольких узлах кластера GridEngine
- 19. Как дать зависимые баночки для искры представить в режиме кластера
- 20. Python: отслеживать процент выполнения задания обрабатывается
- 21. Запуск задания PHPExcel в фоновом режиме
- 22. Можно ли отслеживать время начала задания сельдерея?
- 23. Могу ли я создать «локальные» задания (или триггеры), когда планировщик настроен в режиме кластера?
- 24. Отправить электронное письмо через Java через Postfix
- 25. Trafodion в режиме кластера с искровым излучением
- 26. Не удалось импортировать искровые пакеты
- 27. Весенняя входная интеграция в режиме кластера
- 28. Искробезопасный REST API в режиме кластера YARN
- 29. Искры с использованием карты в режиме кластера
- 30. Java отправить скриншот через сокет
Спасибо за ваш ответ. Я пытаюсь использовать API скрытого отдыха, но когда выполняется с другой машины, а затем с искровым мастером, я получаю 403, порт открыт в машине, знаете ли вы о настройке безопасности искры, связанной с ним? – user601929
Проверьте, можете ли вы получить доступ к порту. вы можете попробовать что-то как: telnet server.hostname port –
Я не могу извне, но в группе безопасности порт открыт, должен ли он каким-то образом активироваться из конфигурации искры? – user601929