日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Spark自带的集群模式(Standalone),Spark/Spark-ha集群搭建

發布時間:2024/9/27 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spark自带的集群模式(Standalone),Spark/Spark-ha集群搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、Spark自帶的集群模式

對于Spark自帶的集群模式,Spark要先啟動一個老大(Master),然后老大Master和各個小弟(Worker)進行通信,其中真正干活的是Worker下的Executor。關于提交任務的,需要有一個客戶端,這個客戶端叫做Driver.這個Driver首先和Master建立通信,然后Master負責資源分配,然后讓Worker啟動Executor,然后Executor和Driver進行通信。效果圖如下:

2、Spark集群搭建(先非HA—>再HA)

2.1. 機器準備

A:準備5臺Linux服務器(hadoop1(Master),hadoop2(Master),hadoop3(worker),hadoop4(worker),hadoop5(worker))
B:安裝好/usr/local/jdk1.8.0_73

2.2. 下載Spark安裝包

下載地址:http://spark.apache.org/downloads.html

https://d3kbcqa49mib13.cloudfront.net/spark-2.1.1-bin-hadoop2.7.tgz
上傳解壓安裝包
上傳spark-2.1.1-bin-hadoop2.7.tgz安裝包到Linux上的/home/tuzq/software

解壓安裝包到指定位置

[root@hadoop1 software] cd /home/tuzq/software [root@hadoop1 software] tar -zxvf spark-2.1.1-bin-hadoop2.7.tgz -C /home/tuzq/software [root@hadoop1 software]# cd spark-2.1.1-bin-hadoop2.7 [root@hadoop1 spark-2.1.1-bin-hadoop2.7]# ls bin conf data examples jars LICENSE licenses NOTICE python R README.md RELEASE sbin yarn [root@hadoop1 spark-2.1.1-bin-hadoop2.7]#

2.3. 配置Spark

進入到Spark安裝目錄

cd /home/tuzq/software/spark-2.1.1-bin-hadoop2.7

進入conf目錄并重命名并修改spark-env.sh.template文件

[root@hadoop1 spark-2.1.1-bin-hadoop2.7]# cd conf/ [root@hadoop1 conf]# pwd /home/tuzq/software/spark-2.1.1-bin-hadoop2.7/conf [root@hadoop1 conf]# mv spark-env.sh.template spark-env.sh [root@hadoop1 conf]# vim spark-env.sh

在該配置文件中添加如下配置

export JAVA_HOME=/usr/local/jdk1.8.0_73 export SPARK_MASTER_IP=hadoop1 export SPARK_MASTER_PORT=7077

保存退出
重命名并修改slaves.template文件

mv slaves.template slaves vi slaves

在該文件中添加子節點所在的位置(Worker節點)
hadoop3
hadoop4
hadoop5
保存退出

配置環境變量:

vim /etc/profile#set spark env export SPARK_HOME=/home/tuzq/software/spark-2.1.1-bin-hadoop2.7 export PATH=$PATH:$SPARK_HOME/binsource /etc/profile

將配置好的Spark拷貝到其他節點上

cd /home/tuzq/software scp -r spark-2.1.1-bin-hadoop2.7 root@hadoop2:$PWD scp -r spark-2.1.1-bin-hadoop2.7 root@hadoop3:$PWD scp -r spark-2.1.1-bin-hadoop2.7 root@hadoop4:$PWD scp -r spark-2.1.1-bin-hadoop2.7 root@hadoop5:$PWD

Spark集群配置完畢,目前是1個Master,3個Work,在hadoop1上啟動Spark集群

/home/tuzq/software/spark-2.1.1-bin-hadoop2.7/sbin/start-all.sh

運行結果:

如果想停止,就用:

/home/tuzq/software/spark-2.1.1-bin-hadoop2.7/sbin/stop-all.sh

啟動后執行jps命令,主節點上有Master進程,其他子節點上有Work進行,登錄Spark管理界面查看集群狀態(主節點):http://hadoop1:8080/

2.4.Spark-Ha集群配置

到此為止,Spark集群安裝完畢,但是有一個很大的問題,那就是Master節點存在單點故障,要解決此問題,就要借助zookeeper,并且啟動至少兩個Master節點來實現高可靠,配置方式比較簡單:
Spark集群規劃:hadoop1,hadoop2是Master;hadoop3,hadoop4,hadoop5是Worker
安裝配置zk集群,并啟動zk集群(hadoop11,hadoop12,hadoop13)
停止spark所有服務,修改配置文件spark-env.sh,在該配置文件中刪掉SPARK_MASTER_IP并添加如下配置
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=hadoop11,hadoop12,hadoop13 -Dspark.deploy.zookeeper.dir=/spark"

效果如下:

將修改的配置同步到hadoop2,hadoop3,hadoop4,hadoop5這些機器上

[root@hadoop1 conf]# pwd /home/tuzq/software/spark-2.1.1-bin-hadoop2.7/conf [root@hadoop1 conf]# scp -r * root@hadoop2:$PWD [root@hadoop1 conf]# scp -r * root@hadoop3:$PWD [root@hadoop1 conf]# scp -r * root@hadoop4:$PWD [root@hadoop1 conf]# scp -r * root@hadoop5:$PWD

1. 在hadoop1節點上修改slaves配置文件內容指定worker節點(本篇博客上hadoop3,hadoop4,hadoop5為worker,hadoop1和hadoop2 master)
2. 在hadoop1上執行sbin/start-all.sh腳本,然后在hadoop2上執行sbin/start-master.sh啟動第二個Master(注意在啟動之前先停止啟動了的單集群)

[root@hadoop2 ~]# cd $SPARK_HOME [root@hadoop2 spark-2.1.1-bin-hadoop2.7]# sbin/start-all.sh

[root@hadoop2 ~]# cd $SPARK_HOME [root@hadoop2 spark-2.1.1-bin-hadoop2.7]# sbin/start-master.sh

3、接著訪問http://hadoop1:8080/:
效果如下:

上面的狀態是:ALIVE狀態
接著訪問http://hadoop2:8080/:

上面的狀態是:STANDBY狀態,通過上面的這些現象可以知道Spark集群已經搭建成功

總結

以上是生活随笔為你收集整理的Spark自带的集群模式(Standalone),Spark/Spark-ha集群搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。