2016-07-27 3 views
6

С выпуском Спарк сегодня 2,0 они удалили встроенную поддержку для запуска искрового EC2 кластера на AWS:Как запустить Спарк 2.0 на EC2

https://spark.apache.org/releases/spark-release-2-0-0.html#removals-behavior-changes-and-deprecations

Спарк EC2 сценарий был полностью перемещен в внешний репозиторий размещается в UC Berkeley AMPLab

на странице AMPLab GitHub включает в себя следующие инструкции:

https://github.com/amplab/spark-ec2/tree/branch-2.0#launching-a-cluster

Перейти в каталог ec2 в выпуске Apache Спарк вы загружены.

Проблема в том, что в версии 2.0 нет папки ec2. Кто-нибудь знает, как я могу запустить кластер Spark 2.0 в EC2?

Заранее спасибо.

+0

Перейти в каталог ec2 означает каталог, в котором вы загрузили Apache Spark из github. – error2007s

+2

@ error2007s проблема в том, что в Spark 2.0.0 нет каталога ec2. Инструкции в приведенной ссылке UC Berkeley AMPLab очень неясны. – xv70

ответ

6

ПОСЛЕДНИЙ EDIT

Для тех, кто с этим вопросом, ответ проще: here.

EDIT 2

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

Проблема в том, что Spark больше не предоставляет каталог ec2 как часть официального распространения. Если вы привыкли разворачивать свои отдельные кластеры таким образом, это проблема.

Решение простое:

  1. Скачать официальный каталог EC2, как описано в Спарк 2.0.0 документации.
  2. Если вы просто скопируете каталог в Spark 2.0.0 и запустите исполняемый файл spark-ec2, чтобы имитировать способ работы в Spark 1. *, вы сможете, как обычно, развернуть свой кластер. Но когда вы входите в это, вы поймете, что ни один из двоичных файлов больше не существует.
  3. Итак, как только вы начнете разворачивать свой кластер (как вы обычно делали бы с spark-ec2, который вы загрузили на шаге 1), вам понадобится rsync ваш локальный каталог, содержащий Spark 2.0.0, в мастер вашего вновь созданного кластера. Как только это будет сделано, вы можете выполнить spark-submit, как обычно.

Действительно простой, но мне кажется, что документы Spark могут быть понятны об этом для всех нас.


EDIT: Это было на самом деле, что нужно делать. Для тех, у кого есть один и тот же вопрос: скачайте директорию ec2 из AMPLab, как предлагает Spark, поместите эту папку в локальный Spark-2.0.0 и обычные сценарии запуска. По-видимому, они только отключали каталог для целей обслуживания, но логика все тот же. Было бы неплохо иметь несколько слов об этом в документах Spark.


Я попытался следующим: клонировал каталог искрового ec2 Гис-1.6 по ссылке AMPLab в мой каталог искрового 2.0.0, и попытался запустить кластер с обычной ./ec2/spark-ec2 команды. Может быть, это то, что они хотят от нас?

Я запускаю небольшой кластер из 16 узлов. Я вижу это на приборной панели AWS, но терминал застрял, печатая обычную SSH-ошибку в прошлом ... почти два часа.

Warning: SSH connection error. (This could be temporary.) Host: ec2-54-165-25-18.compute-1.amazonaws.com SSH return code: 255 SSH output: ssh: connect to host ec2-54-165-25-18.compute-1.amazonaws.com port 22: Connection refused

Обновит, если я найду что-нибудь полезное.

+0

Я сделал то, что вы предложили, с той разницей, что я использовал https://github.com/amplab/spark-ec2/tree/branch-2.0. Благодарю. –

+0

Это так запутанно. В любой ветви нет директории 'ec2',' branch-1.6' или 'branch-2.0'. Является ли прежний каталог 'ec2' каталогом ** root ** https://github.com/amplab/spark-ec2/tree/branch-2.0? –

+0

Просто добавлен https://github.com/amplab/spark-ec2/issues/89. Будем надеяться, что скоро это исправится. –

1

Вам необходимо загрузить все источники из here. Обратите внимание, что я предоставил ветку 2.0 github. Инструкции о том, как запустить, можно найти по предыдущей ссылке, а here - это сообщение в блоге, которое я написал о предмете, который может упростить вашу жизнь.

Надеюсь, мне удалось помочь! :)

0

Amplab Spark-ec2 больше не поддерживается в соответствии с их рефиографией github. Вы можете создать искровой кластер, используя flintrock вместо AWS EC2.