Spark集羣部署

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

  集羣環境:3節點 Master:bigdata1 Slaves:bigdata2,bigdata3shell

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

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

  集羣搭建以前,必須知足以下條件:服務器

  一、集羣主機名和hosts文件映射一一對應框架

  二、集羣ssh免密登陸配置ssh

  三、集羣每一個節點防火牆關閉oop

  四、JDK正確安裝測試

  五、Scala正確安裝大數據

  六、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集羣就部署完畢了

相關文章
相關標籤/搜索