Apache Spark EC2 Script запускает ведомых, но без хозяина
При использовании скрипта Apache Spark EC2 для запуска кластера я обнаружил некоторую ошибку, которая начинает бить меня по карману. При указании количества ведомых: если вы введете число, которое больше или равно вашему пределу, то кластер запускается с вашим максимальным числом подчиненных, но без мастера! Это не дает вам контроля над рабами и, следовательно, кластеризацией.
Я не нашел способа запустить только мастер с помощью скрипта Apache Spark EC2. Я вручную отключил 1 из рабов, чтобы освободить место для мастера; однако при попытке перезапустить скрипт он просто говорит:
Searching for existing cluster my_cluster...
Found 0 master(s), 4 slaves
ERROR: There are already instances running in group my_cluster-master
or my_cluster-slaves
Чтобы преодолеть это, я должен войти в консоль AWS и завершить работу всех кластеров, а затем перезапустить. Поскольку Amazon взимает плату за час, мне платят за полные часы моего максимального количества кластеров - и все это ни за что.
Есть ли способ запустить мастер, когда рабы уже существуют?
1 ответ
Это происходит потому, что spark-ec2 делает два отдельных запроса к EC2 для выделения экземпляров, один для главного и один для подчиненных.
И, как вы можете догадаться, он распределяет главный экземпляр после ведомых, что вызывает проблему, которую вы видите.
Невозможно запустить мастер, когда подчиненные уже существуют. Поддерживается только обратное - запуск ведомых, когда мастер уже существует.
Такое поведение запуска мастера после рабов звучит как ошибка.
Если вы хотите сообщить об этом, чтобы он был исправлен, я предлагаю создать проблему в Apache JIRA для Spark в рамках компонента EC2. Я посмотрю на это.