Измените версию hadoop, используя spark-ec2

Я хочу знать, возможно ли изменить версию hadoop, когда кластер создается spark-ec2?

Я старался

spark-ec2 -k spark -i ~/.ssh/spark.pem -s 1 launch my-spark-cluster

тогда я вхожу с

spark-ec2 -k spark -i ~/.ssh/spark.pem login my-spark-cluster

и узнал, что версия hadoop 1.0.4.

Я хочу использовать версию 2.x hadoop, как лучше это настроить?

1 ответ

Решение

Hadoop 2.0

spark-ec2 Скрипт не поддерживает изменение существующего кластера, но вы можете создать новый кластер Spark с помощью Hadoop 2.

Смотрите этот отрывок из сценария --help:

  --hadoop-major-version=HADOOP_MAJOR_VERSION
                    Major version of Hadoop (default: 1)

Так, например:

spark-ec2 -k spark -i ~/.ssh/spark.pem -s 1 --hadoop-major-version=2 launch my-spark-cluster

... создадим вам кластер, используя текущую версию Spark и Hadoop 2.


Если вы используете Spark v. 1.3.1 или Spark v. 1.4.0 и создадите автономный кластер, то вы получите Hadoop v. 2.0.0 MR1 (из дистрибутива Cloudera Hadoop Platform 4.2.0) таким образом.


Предостережения:

... но я успешно использовал несколько кластеров Spark 1.2.0 и 1.3.1, созданных с помощью Hadoop 2.0.0, используя некоторые специфичные для Hadoop2 функции. (для Spark 1.2.0 с несколькими изменениями, которые я вставил в свои вилки Spark и spark-ec2, но это другая история.)


Hadoop 2.4, 2.6

Если вам нужен Hadoop 2.4 или Hadoop 2.6, то в настоящее время (по состоянию на июнь 2015 года) я рекомендую вам создать автономный кластер вручную - это проще, чем вы, вероятно, думаете.

Другие вопросы по тегам