安裝版本:spark-2.1.1-bin-hadoop2.7.tgz
準備操作:創建3臺虛擬機,構建基礎網絡、免密鑰、時間同步、HOST配置。並且安裝jdk:1.8
Master:node111
Worker:node112 、node113
一、解壓
tar -zxvf spark-2.1.1-bin-hadoop2.7.tgz
以下操作在node111上完成
1)slaves配置文件
cp slaves.template slaves
進入slaves,默認爲localhost,這個是僞集羣。
修改成worker的host
vi slaves
刪掉localhost
追加
node112
node113
2)spark-env.sh
改名
mv spark-env.sh.template spark-env.sh
修改
vi spark-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_131
export SPARK_MASTER_HOST=node111
export SPARK_MASTER_PORT=7077
export SPARK_WORKER_CORES=2 //這臺機器設置的core數量。一個core可以同時執行2個線程。如果是cpu4核,4*2=8個線程
export SPARK_WORKER_MEMORY=2g //每個worker進程的內存大小
export SPARK_WORKER_INSTANCES=1 //每個虛擬機或者真實物理機上的work數量export
HADOOP_CONF_DIR=/home/tool/hadoop-2.7.3/etc/hadoop //hadoop配置文件位置,高可用集羣模式下,方便spark程序讀取hadoop文件
三、複製到worker節點
scp -r spark-2.1.1-bin-hadoop2.7 node112:`pwd
scp -r spark-2.1.1-bin-hadoop2.7 node113:`pwd`
我的三臺虛擬機都在spark的安裝目錄下。如果不是可以根據自己情況對上面進行修改
在worker1和worker2修改$SPARK_HOME/conf/spark-env.sh,將export SPARK_LOCAL_HOST=node111改成對應節點的hostname。
四、配置環境變量
因爲start_all和hadoop會衝突,可以不配置,也可以修改其中一個名字。
如果配置
vi /etc/profile
vi /etc/profile
export SPARK_HOME=/home/tool/spark-2.1.1-bin-hadoop2.7
export PATH=$PATH:$SPARK_HOME/sbin
source /etc/profile
如果出現錯誤,看日誌
webUI 端口8080
也可以自己寫監控頁面 從REST URL: spark://HOSTNAME:6066 獲取信息就可以