Spark集群部署


  Spark是通用的基於內存計算的大數據框架,可以和hadoop生態系統很好的兼容,以下來部署Spark集群

  集群環境:3節點 Master:bigdata1 Slaves:bigdata2,bigdata3

  Master負責任務的分發,與集群狀態的顯示

  Slaves運行具體的Worker任務,最后交由Executor執行任務代碼

  集群搭建之前,必須滿足如下條件:

  1、集群主機名和hosts文件映射一一對應

  2、集群ssh免密登錄配置

  3、集群每個節點防火牆關閉

  4、JDK正確安裝

  5、Scala正確安裝

  6、Hadoop集群安裝,因為Spark存儲層要用到HDFS,所以應該至少保證HDFS服務的正常運行,hadoop集群可以在yarn上,也可以由zookeeper協調,這個都沒問題,最重要的是hadoop集群能正常運行

  然后可以開始安裝Spark,Spark官方網站是:http://spark.apache.org/,直接去官方網站下載spark安裝包即可,這里安裝的是1.x的最新版1.6.2,2.0是剛出來,暫時沒有使用,包名為:spark-1.6.2-bin-hadoop2.6.tgz 這里已經安裝的hadoop版本為hadoop 2.6.0,下載之后上傳至服務器准備安裝

  在bigdata1 Master節點執行如下命令解壓,目錄可以自定義,這里安裝位置是/bigdata/spark

tar -xvzf spark-1.6.2-bin-hadoop2.6.tgz
mkdir /bigdata/spark
mv spark-1.6.2-bin-hadoop2.6 /bigdata/spark/
cd /bigdata/spark/spark-1.6.2-bin-hadoop2.6/

  配置文件目錄在安裝目錄下的conf下,然后從默認模板中拷貝出要編輯的配置文件:

cp conf/spark-env.sh.template conf/spark-env.sh
cp conf/slaves.template conf/slaves

  網上說的可以添加spark到環境變量中,這個是為了方便啟動和調試,是可選的, 

  執行 vim conf/slaves 配置運行Worker任務的節點,和hadoop的slaves配置類似,單機環境中默認或者改為本地主機名,這里是bigdata2,bigdata3

  

  執行 vim conf/spark-env.sh 編輯spark啟動加載腳本,在最后添加如下配置:

# JDK目錄
export JAVA_HOME=/usr/local/java/jdk1.8.0_73
# Scala目錄
export SCALA_HOME=/usr/local/scala/scala-2.11.8
# Master IP地址
export SPARK_MASTER_IP=192.168.0.187
# Worker運行內存
export SPARK_WORKER_MEMORY=1024m
# hadoop配置文件目錄
export HADOOP_CONF_DIR=/bigdata/hadoop/hadoop-2.6.0/etc/hadoop

  集群中Worker運行內存可以適當調整3g~8g的范圍

  然后發送Spark到集群其他節點:

scp -r spark/ bigdata2:/bigdata/
scp -r spark/ bigdata3:/bigdata/

  最后啟動Spark集群,在Master節點執行: sbin/start-all.sh 可以啟動整個集群,通過執行jps可以看到Master運行的進程是Master,Slaves節點運行的進程是Worker

  

  

  另外也可以通過在Master節點分別執行 sbin/start-master.sh  和 sbin/start-slaves.sh  分別調起來master和全部子節點的worker進程,這樣可以根據不同需要有選擇的調起集群中的服務

  Spark的服務都啟動之后,訪問Master地址可以打開相應的管理界面,地址就是:http://ip:8080,會看到界面如下:

  

  通過界面可以方便的查看並管理相應的端口號,配置項,Workers節點,正在運行的應用任務等

  通過執行 bin/spark-shell 或者指定相應的參數 bin/spark-shell --executor-memory 1g --driver-memory 1g --master spark://bigdata1:7077 可以進入scala交互式命令行界面,在這里可以進行一些測試等

  

  到這里,Spark集群就部署完畢了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM