大資料環境搭建之Spark分散式環境搭建步驟詳解
文章目錄
環境準備
在之前搭建的Hadoop叢集和zookeeper基礎之上搭建Spark叢集環境。
Linux系統:Centos6.10
Linux叢集:bigdata01, bigdata02, bigdata03
安裝配置
基本思路是現在bigdata01上安裝,然後在拷貝到bigdata02,bigdata03上。
下載
http://spark.apache.org/downloads.html
下載spark-2.1.3-bin-hadoop2.7.tgz
拷貝到Linux機器bigdata01的/opt/downloads/目錄,然後執行
cd /opt/downloads/
tar -zxf spark-2.1.3-bin-hadoop2.7.tar.gz /opt
配置環境變數
vi /etc/profile
末尾新增
export SPARK_HOME=/opt/spark-2.3.1-bin-hadoop2.7
並在path後新增路徑
SPARK_HOME/sbin
儲存後使配置生效
source /etc/profile
修改conf目錄下檔案
修改slaves檔案配置從結點,預設的localhost刪掉,修改為:
bigdata02
bigdata03
複製程式到從結點
scp -r /opt/spark-2.3.1-bin-hadoop2.7 bigdata02:/opt/
scp -r /opt/spark-2.3.1-bin-hadoop2.7 bigdata03:/opt/
啟動Spark叢集
在bigdata01機器上啟動Spark
進入/opt/spark-2.3.1-bin-hadoop2.7/sbin目錄輸入
./start-all.sh
第一次啟動失敗,先執行以下命令關掉
./stop-all.sh
再次啟動
./start-all.sh
啟動時的錯誤
我在部署時的報錯如下圖:
原因是叢集裡的機器使用的Java版本不統一:在bigdata02和bigdata03機器執行java -version命令,發現使用的預設java是OpenJDK1.7.0_181,與bigdata01的版本1.8.0_162不同,統一後重新啟動成功。
(統一方法:bigdata02機器已經安裝了1.8.0_162並且配置了環境變數,但是使用java -version檢視還是預設的java版本。使用which java和which javac命令檢視具體路徑,發現java指向/usr/bin/java 是個軟連結,路徑指向/etc/alternatives/java。刪除此軟連結,並且重新新建軟連結:
rm -rf /usr/bin/java
ln -s $JAVA_HOME/bin/java /usr/bin/java
此時java -version命令檢視版本為1.8.0_162)
驗證是否成功
檢視程序
在bigdata01,bigdata02,bigdata03機器上輸入jps命令
bigdata01顯示Master程序,其他兩臺機器顯示Work程序,即為部署成功。
瀏覽器檢視
在瀏覽器位址列輸入bigdata01:8080
出現介面Spark Master at spark://bigdata01:7077