2016-04-23 5 views
4

Я прототипировал Spark Streaming 1.6.1 используя приемник kafka на Mesos 0.28 кластер работает с грубым зернистым режимом.Spark Streaming через приемник Kafka на кластере крупного зерна Mesos

У меня 6 раб мезонов каждый с 64GB RAM and 16 Cores.
В моей теме кафки есть 3 раздела.
Моя цель состоит в том, чтобы запустить 3 исполнителей (каждый на другом подчиненном мезо) с каждым исполнителем, имеющим один приемник кафки, который читается из одного раздела kafka.

Когда я запускаю приложение для искры с spark.cores.max, установленным на 24 и spark.executor.memory, установленным на 8 ГБ, я получаю двух исполнителей - с 16 ядрами на одном ведомом и с 8 ядрами на другом подчиненном устройстве.

Я ищу, чтобы получить 3 исполнителя с 8 ядрами на трех разных рабах. Возможно ли это с мезосом путем резервирования/изоляции ресурсов, ограничений и т. Д.?

Только обходной путь, который работает для меня сейчас, - это масштабирование каждого подчиненного узла mesos, чтобы иметь максимум 8 ядер. Я не хочу использовать mesos в мелкозернистом режиме по соображениям производительности, а его поддержка скоро уйдет.

ответ

4

Мезосфера внесла следующий патч для искры: https://github.com/apache/spark/commit/80cb963ad963e26c3a7f8388bdd4ffd5e99aad1a. Это улучшение приземлится в Spark 2.0. Mesosphere предоставила это и другие улучшения для Spark 1.6.1 и сделала его доступным в DC/OS (http://dcos.io).

Этот патч вводит новую конфигурационную конфигурацию «spark.executor.cores» в режиме усиления курса. Когда задана переменная config «spark.executor.cores», исполнители будут иметь размер с указанным количеством ядер.

Если предложение поступило с кратким (spark.executor.memory, spark.executor.cores), в нем будет запущено несколько исполнителей. Это означает, что на одном и том же узле агента Mesos может быть несколько, но отдельных исполнителей Spark.

В настоящее время нет возможности распространять исполнителей через агентов N Mesos. Мы кратко обсудили возможность добавления Spark-исполнителей через агентов N Mesos, но пришли к выводу, что он не покупает много с точки зрения улучшения доступности.

Помогите нам разобраться в ваших мотивах для распространения исполнителей Spark через 3 агента Mesos? Вероятно, мы не рассмотрели все возможные варианты использования и преимущества.

Кит

+0

моя мотивация для распространения N исполнителей над N Mesos рабами -> так Кафка приемники распределены по рабочим хостов как можно ровнее, чтобы читать из разделов Кафки через отдельные сетевые интерфейсы – rohit

+0

@rohit Я думаю, что вы хотите это: https://issues.apache.org/jira/browse/SPARK-4940. Это было широко обсуждено, и для этого был даже PR, но он не принимался на том основании, что он будет отличаться от что может предложить ЯРН. Не знаю статус сегодня. – maasg