Я нахожусь в процессе установки Spark в среде общего кластера.Мы решили перейти в автономный режим Spark и используем команду «start-all.sh», включенную в sbin, для запуска рабочих Spark.Из-за общей архитектуры кластера SPARK_HOME находится в общем каталоге, недоступном для записи пользователям.Поэтому мы создаем «рабочие» каталоги с нуля пользователя, в которые можно указать SPARK_CONF_DIR, каталог журналов и рабочие каталоги.
Проблема в том, что SPARK_CONF_DIR никогда не устанавливается на рабочих узлах, поэтому онипо умолчанию используется $ SPARK_HOME / conf, в котором есть только шаблоны.То, что я хочу сделать, это пройти через SPARK_CONF_DIR от главного узла к подчиненным узлам.Я определил решение, но для него требуется патч для sbin / start-slaves.sh:
sbin / start_slaves.sh
46c46
< "${SPARK_HOME}/sbin/slaves.sh" cd "${SPARK_HOME}" \; export SPARK_CONF_DIR=${SPARK_CONF_DIR} \; "$SPARK_HOME/sbin/start-slave.sh" "spark://$SPARK_MASTER_HOST:$SPARK_MASTER_PORT"
---
> "${SPARK_HOME}/sbin/slaves.sh" cd "${SPARK_HOME}" \; "${SPARK_HOME}/sbin/start-slave.sh" "spark://$SPARK_MASTER_HOST:$SPARK_MASTER_PORT"
Есть лиЕсть ли лучшие решения, которые не требуют исправления для исходного кода Spark?
Конечно, одним из решений было бы скопировать и переименовать start-all.sh и start-slaves.sh и использовать их вместоSBIN / start-all.sh.Но есть ли что-нибудь более изящное?
Спасибо за потраченное время.