我是Spark,Hadoop和Cloudera的新手。我們需要使用Spark的特定版本(1.5.2),並且還需要使用Cloudera進行集羣管理,也適用於Spark。如何在Cloudera中安裝自定義Spark版本
但是,CDH 5.5自帶Spark 1.5.0,不能很容易地更改。
人們提到「手動下載」自定義版本的火花。但是,如何管理Cloudera的這個「自定義」Spark版本,以便我可以將其分佈到集羣中?或者,它是否需要與Cloudera完全分開運營和配置?
感謝您的幫助和解釋。
我是Spark,Hadoop和Cloudera的新手。我們需要使用Spark的特定版本(1.5.2),並且還需要使用Cloudera進行集羣管理,也適用於Spark。如何在Cloudera中安裝自定義Spark版本
但是,CDH 5.5自帶Spark 1.5.0,不能很容易地更改。
人們提到「手動下載」自定義版本的火花。但是,如何管理Cloudera的這個「自定義」Spark版本,以便我可以將其分佈到集羣中?或者,它是否需要與Cloudera完全分開運營和配置?
感謝您的幫助和解釋。
是的,它可以運行任何Apache Spark版本。
步驟,我們需要做之前,爲了確保:
在YARN下,您可以使用任何版本的Spark運行任何應用程序。畢竟,Spark是一堆庫,所以你可以打包你的jar文件並把它發送給YARN。但是還有一些額外的小任務需要完成。
在以下link,dlb8提供了一個任務列表,用於在安裝時使用先前版本運行Spark 2.0。只需相應地更改版本/路徑。
查找CDH和Hadoop集羣上運行使用
$ hadoop version
Hadoop 2.6.0-cdh5.4.8
下載星火的版本,並提取來源。預先構建的Spark二進制文件應該可以與大多數CDH版本一起使用,除非在CDH版本中有自定義修復,在這種情況下,您可以使用spark-2.0.0-bin-without-hadoop.tgz。 (可選)您還可以通過在shell打開分發目錄,並使用CDH和Hadoop版本步驟運行以下命令1
$ ./dev/make-distribution.sh --name建設星火定製火花-tgz -Psparkr -Phadoop-2.6 -Pive -Prive-thrift服務器-Pyarn
注意:使用Spark 2.0時,默認構建使用Scala版本2.11。如果您需要堅持使用Scala 2.10,請使用-Dscala-2.10屬性或 $ ./dev/change-scala-version.sh 2.10 請注意,-Phadoop-provided使配置文件可以在不包含Hadoop生態系統的情況下構建程序集Cloudera提供的依賴關係。
提取tgz文件。
$tar -xvzf /path/to/spark-2.0.0-bin-hadoop2.6.tgz
CD插入自定義Spark分佈,並通過從當前的Spark版本
$ cp -R /etc/spark/conf/* conf/
$ cp /etc/hive/conf/hive-site.xml conf/
從火花火花defaults.conf變化SPARK_HOME複製配置配置自定義星火分佈點與到文件夾的火花2.0分佈
$ sed -i "s#\(.*SPARK_HOME\)=.*#\1=$(pwd)#" conf/spark-env.sh
變化spark.master紗線從紗線客戶
$ sed -i 's/spark.master=yarn-client/spark.master=yarn/' conf/spark-
defaults.conf
刪除spark.yarn.jar defaults.conf
$ sed '-i /spark.yarn.jar/d' conf/spark-defaults.conf
最後測試新的Spark安裝:
$ ./bin/run-example SparkPi 10 --master yarn
$ ./bin/spark-shell --master yarn
$ ./bin/pyspark
更新log4j.properties打壓惱人的警告。以下內容添加到CONF/log4j.properties
echo "log4j.logger.org.spark_project.jetty=ERROR" >> conf/log4j.properties
然而,它可以適應於相對,由於底線是「上的安裝使用火花版本爲不同的版本」。 如果你沒有對付1.x中這是更簡單 - 2.x版的改變,因爲你並不需要注意的斯卡拉版本的變化和assembly approach的。
我測試了它在CDH5.4安裝設置1.6.3和它工作得很好。我與 「spark.yarn.jars」 選項做到了:
#### set "spark.yarn.jars"
$ cd $SPARK_HOME
$ hadoop fs mkdir spark-2.0.0-bin-hadoop
$ hadoop fs -copyFromLocal jars/* spark-2.0.0-bin-hadoop
$ echo "spark.yarn.jars=hdfs:///nameservice1/user/<yourusername>/spark-2.0.0-bin-hadoop/*" >> conf/spark-defaults.conf
https://www.linkedin.com/pulse/running-spark-2xx-cloudera-hadoop-distro-cdh-deenar-toraskar- CFA – Maziyar