spark ui的访问地址_Spark篇之HA集群搭建
一。下載Spark安裝包
可以從官網(wǎng)下載,本集群選擇的版本是spark-1.6.0-bin-hadoop2.6
二。部署和規(guī)劃Spark集群
提前準備好四臺虛擬主機,三臺主機 node1 node2 node4 做Spark集群 develop做Spark客戶端用于提交程序
集群規(guī)劃如下:
node1 Master節(jié)點 node2,node4 Worker節(jié)點 架構(gòu)圖如下:
在此之前需要配置Master節(jié)點到Worker的免密登陸因為在Master節(jié)點需要啟動所有的Worker節(jié)點,所有需要配置Master到Worker的免密登陸 只需要這一個免密配置即可 不需要配置woker--worker worker-master節(jié)點的免密 因為主要是在Master節(jié)點上啟動集群
免密設(shè)置具體參考如下:http://blog.csdn.net/leexide/article/details/17252369
1.分別在三臺集群下創(chuàng)建同名目錄 (目錄一定要一致,方便集群部署)
本集群環(huán)境創(chuàng)建為/root/spark目錄
2.使用Xshell將文件上傳至其中某個節(jié)點即可(沒有必要上傳全部節(jié)點,因為后期還要重新配置)
上傳至某個節(jié)點之后,假設(shè)上傳到主節(jié)點Master節(jié)點后
3.解壓目錄,命令和結(jié)構(gòu)如下
tar -zxf spark-1.6.0-bin-hadoop2.6.tar
然后重命名 方便后期部署
mv spark-1.6.0-bin-hadoop2.6 spark-1.6.0
結(jié)構(gòu)如下:
4.配置參數(shù)
進入到配置目錄,路徑為
/root/spark/spark-1.6.0/conf
后可看見文件如下
我們需要把template關(guān)鍵字去掉 因為是個模板文件 簡單介紹下文件作用:
slaves文件---worker幾點所在目錄
spark-default.conf目錄文件 默認配置文件
spark-env.sh環(huán)境配置文件
這幾個是我們主要用的
更改后的目錄文件格式如下:
配置spark-env.sh
可以看到集群配置參數(shù)如下,我們主要配置這些參數(shù)
配置完后的截圖如下:
解釋一下參數(shù)意義:
SPARK_MASTER_IP=node1 #主節(jié)點主機名
SPARK_MASTER_PORT=7077 #主節(jié)點和Worker的通信端口
SPARK_WORKER_CORES=2 # 每個worker進程能管理兩個核
SPARK_WORKER_MEMORY=2g # 每個worker進程能管理2g內(nèi)存
SPARK_MASTER_WEBUI_PORT=8888 # 主節(jié)點WEB-UI展示圖 默認端口是8080
SPARK_WORKER_INSTANCES=1 #每個worker節(jié)點能夠啟動的worker進程 默認是一個 如果為2 則每一個worker幾點能夠啟動2個Worker進程 就這意思
根據(jù)這配置 則 Master節(jié)點能夠管路4core 4g內(nèi)存(有兩個Worker進程 每一個worker進程管理兩個核,2g內(nèi)存)
配置slaves文件:配置從節(jié)點的ip 或主機名
截圖如下
5.將主節(jié)點的配置分發(fā)到從節(jié)點 同名目錄下
命令如下:
回到spark的主目錄配置文件
然后分發(fā)到node2 node4節(jié)點 這里命令如下`pwd`即到當前目錄
6、啟動Spark集群:
執(zhí)行安裝包sbin目錄下的start-all.sh腳本
./sbin/start-all.sh
7.查看集群狀態(tài)
jps命令為jvm的命令與局之一 專門查看java進程
Master節(jié)點狀態(tài):
Worker節(jié)點狀態(tài):
查看WEBUI是否能訪問:
注意關(guān)閉Linux的防火墻:具體操作如下
/etc/init.d/iptables status
會得到一系列信息,說明防火墻開著。
/etc/init.d/iptables stop
永久關(guān)閉:
chkconfig --level 35 iptables off
在本機訪問node1:8888(別忘配置host)
至此,集群搭建成功!
8.測試集群是否可用
將主節(jié)點中的spark文件同步到客戶端develop節(jié)點
在develop節(jié)點中提交spark任務(wù) ,由于本例測試 所以直接提交spark自帶測試用例 計算Pi的值
注意別忘配置Client(develop)客戶端的host 因為要提交任務(wù)到Master節(jié)點(node1)節(jié)點上去運行
即可看見運行狀態(tài)
在WebUI也可以看見
(3)Spark集群高可用的搭建
(1)基于文件系統(tǒng)的HA
存儲原數(shù)據(jù),缺點:需要手動的去切換Master
(2)基于zookeeper管理的HA
存儲原數(shù)據(jù),自動選舉功能
(1)在spark.env.sh中進行修改
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=node02:2181,node03:2181,node04:2181 -Dspa rk.deploy.zookeeper.dir=/spark"
(2)并重新分發(fā)給所有的spark集群節(jié)點
(3)node02的SPARK_MASTER_IP修改為node02,因為要在node02上啟動備用Master
(4)開啟spark集群服務(wù)
總結(jié):當提交application的時候,切換主備節(jié)點會影響提交。當切換完成后,application會繼續(xù)進行提交;當已經(jīng)申請完資源后,master的切換不影響task任務(wù)的運行。
總結(jié)
以上是生活随笔為你收集整理的spark ui的访问地址_Spark篇之HA集群搭建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux tcp文件分包_Linux网
- 下一篇: 双眼融合训练一个月_视觉融合你知道多少