48Spark安裝

1.保存目前快照
2.更改jdk 為jdk8,配置環(huán)境變量[結合搭建文檔]
解壓:
配置:~/.bash_profile:
export JAVA_HOME=/software/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH
(沒裝前$path在前,裝過后在后。如上)
更新生效:
source ~/.bash_profile

3.將jdk8 分發(fā)到其他節(jié)點静浴,做同樣的配置
4.直接解壓的jdk需要覆蓋 軟連接路徑 /user/bin/java
默認使用解壓的jdk安裝jdk8,相對于rpm安裝來說 不會覆蓋默認/usr/bin/java 指向的位置拓瞪。需要手動改動指向的位置画畅,不然會默認還是執(zhí)行的舊的jdk1.7
原來的指向:
/usr/bin/java->/usr/java/default/bin/java
每臺節(jié)點上執(zhí)行:
ln -sf /software/jdk1.8.0_181/bin/java /usr/bin/java
更改之后的指向:
/usr/bin/java->/software/jdk1.8.0_181/bin/java
5.正常搭建spark-2.3.1-bin-hadoop2.6

6.如果基于Hadoop提交任務 需要修改 hadoop-env.sh 中的27行
export JAVA_HOME=/software/jdk1.8.0_181/bin/java
同步其他所有節(jié)點。

7.基于yarn 提交任務有可能報錯虛擬內存不足
在每臺節(jié)點中的yarn-site.xml中配值關閉虛擬內存檢查
vim /root/hadoop-2.5.2/etc/hadoop/yarn-site.xml
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>
8.集群裝kafka 0.11版本
進入zookeeper的客戶端 ,刪除之前kafka 的信息目錄:【 consumers, admin, config, controller, brokers, controller_epoch】
/root/zookeeper-3.4.6/bin/zkCli.sh

接下來圖文詳解
1.搭建
?Standalone
1).下載安裝包,解壓


圖片1.png
圖片2.png

2).改名


圖片3.png

3).進入安裝包的conf目錄下材鹦,修改slaves.template文件逝淹,添加從節(jié)點。保存桶唐。


圖片4.png
圖片5.png

4).修改spark-env.sh
SPARK_MASTER_IP:master的ip
SPARK_MASTER_PORT:提交任務的端口栅葡,默認是7077
SPARK_WORKER_CORES:每個worker從節(jié)點能夠支配的core的個數
SPARK_WORKER_MEMORY:每個worker從節(jié)點能夠支配的內存數


圖片6.png

5).同步到其他節(jié)點上


圖片7.png
圖片8.png

6).啟動集群
進入sbin目錄下,執(zhí)行當前目錄下的./start-all.sh


圖片9.png

7).搭建客戶端
將spark安裝包原封不動的拷貝到一個新的節(jié)點上尤泽,然后欣簇,在新的節(jié)點上提交任務即可。
注意:
?8080是Spark WEBUI界面的端口坯约,7077是Spark任務提交的端口熊咽。
?修改master的WEBUI端口:
?修改start-master.sh即可。



?也可以在Master節(jié)點上導入臨時環(huán)境變量闹丐,只是作用于之后的程序横殴,重啟就無效了。
圖片11.png

刪除臨時環(huán)境變量:

?yarn
1). 1妇智,2滥玷,3氏身,4巍棱,5,7步同standalone蛋欣。
2).在客戶端中配置:



2.測試
PI案例:

Standalone提交命令:

./spark-submit
--master spark://node1:7077
--class org.apache.spark.examples.SparkPi ../lib/spark-examples-1.6.0-hadoop2.6.0.jar 10000

YARN提交命令:

./spark-submit
--master yarn
--class org.apache.spark.examples.SparkPi ../lib/spark-examples-1.6.0-hadoop2.6.0.jar 10000

spark基于standalone-client提交任務
提交任務命令:
./spark-submit --master spark://node1:7077 -class ..jar...
./spark-submit --master spark://node1:7077 -deploy-mode client --class ..jar...


?執(zhí)行流程
1.client模式提交任務后航徙,會在客戶端啟動Driver進程。
2.Driver會向Master申請啟動Application啟動的資源陷虎。
3.資源申請成功到踏,Driver端將task發(fā)送到worker端執(zhí)行。
4.worker將task執(zhí)行結果返回到Driver端尚猿。
?總結
client模式適用于測試調試程序窝稿。Driver進程是在客戶端啟動的,這里的客戶端就是指提交應用程序的當前節(jié)點凿掂。在Driver端可以看到task執(zhí)行的情況伴榔。生產環(huán)境下不能使用client模式,是因為:假設要提交100個application到集群運行庄萎,Driver每次都會在client端啟動踪少,那么就會導致客戶端100次網卡流量暴增的問題。

spark基于standalone-cluster提交任務

命令
./spark-submit --master spark://node1:7077 -deploy-mode cluster --class ..jar...

Spark 基于Standalone-cluster 模式提交任務.jpg

?執(zhí)行流程
1.cluster模式提交應用程序后糠涛,會向Master請求啟動Driver.
2.Master接受請求援奢,隨機在集群一臺節(jié)點啟動Driver進程。
3.Driver啟動后為當前的應用程序申請資源忍捡。
4.Driver端發(fā)送task到worker節(jié)點上執(zhí)行集漾。
5.worker將執(zhí)行情況和執(zhí)行結果返回給Driver端切黔。
?總結
Driver進程是在集群某一臺Worker上啟動的,在客戶端是無法查看task的執(zhí)行情況的帆竹。假設要提交100個application到集群運行,每次Driver會隨機在集群中某一臺Worker上啟動绕娘,那么這100次網卡流量暴增的問題就散布在集群上。
?總結Standalone兩種方式提交任務栽连,Driver與集群的通信包括:

  1. Driver負責應用程序資源的申請
  2. 任務的分發(fā)险领。
  3. 結果的回收。
  4. 監(jiān)控task執(zhí)行情況秒紧。

Spark 基于Yarn-cluster 模式提交任務

?執(zhí)行流程
1.客戶端提交一個Application绢陌,在客戶端啟動一個Driver進程。
2.應用程序啟動后會向RS(ResourceManager)發(fā)送請求熔恢,啟動AM(ApplicationMaster)的資源脐湾。
3.RS收到請求,隨機選擇一臺NM(NodeManager)啟動AM叙淌。這里的NM相當于Standalone中的Worker節(jié)點秤掌。
4.AM啟動后,會向RS請求一批container資源鹰霍,用于啟動Executor.
5.RS會找到一批NM返回給AM,用于啟動Executor闻鉴。
6.AM會向NM發(fā)送命令啟動Executor。
7.Executor啟動后茂洒,會反向注冊給Driver孟岛,Driver發(fā)送task到Executor,執(zhí)行情況和結果返回給Driver端。
?總結
Yarn-client模式同樣是適用于測試督勺,因為Driver運行在本地渠羞,Driver會與yarn集群中的Executor進行大量的通信,會造成客戶機網卡流量的大量增加.
?ApplicationMaster的作用:
1.為當前的Application申請資源
2.給NameNode發(fā)送消息啟動Executor智哀。
注意:ApplicationMaster有l(wèi)aunchExecutor和申請資源的功能次询,并沒有作業(yè)調度的功能。


Spark 基于Yarn-client模式提交任務.jpg

Spark 基于Yarn-cluster 模式提交任務

?執(zhí)行流程
1.客戶機提交Application應用程序瓷叫,發(fā)送請求到RS(ResourceManager),請求啟動AM(ApplicationMaster)屯吊。
2.RS收到請求后隨機在一臺NM(NodeManager)上啟動AM(相當于Driver端)。
3.AM啟動赞辩,AM發(fā)送請求到RS雌芽,請求一批container用于啟動Executor。
4.RS返回一批NM節(jié)點給AM辨嗽。
5.AM連接到NM,發(fā)送請求到NM啟動Executor世落。
6.Executor反向注冊到AM所在的節(jié)點的Driver。Driver發(fā)送task到Executor。
?總結
Yarn-Cluster主要用于生產環(huán)境中屉佳,因為Driver運行在Yarn集群中某一臺nodeManager中谷朝,每次提交任務的Driver所在的機器都是隨機的,不會產生某一臺機器網卡流量激增的現(xiàn)象武花,缺點是任務提交后不能看到日志圆凰。只能通過yarn查看日志。
?ApplicationMaster的作用:
1.為當前的Application申請資源
2.給NameNode發(fā)送消息啟動Excutor体箕。
3.任務調度专钉。
?停止集群任務命令:yarn application -kill applicationID


Spark 基于Yarn-cluster 模式提交任務.jpg
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市累铅,隨后出現(xiàn)的幾起案子跃须,更是在濱河造成了極大的恐慌,老刑警劉巖娃兽,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件菇民,死亡現(xiàn)場離奇詭異,居然都是意外死亡投储,警方通過查閱死者的電腦和手機第练,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來玛荞,“玉大人娇掏,你說我怎么就攤上這事〕迥啵” “怎么了驹碍?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵壁涎,是天一觀的道長凡恍。 經常有香客問我,道長怔球,這世上最難降的妖魔是什么嚼酝? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮竟坛,結果婚禮上闽巩,老公的妹妹穿的比我還像新娘。我一直安慰自己担汤,他們只是感情好涎跨,可當我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著崭歧,像睡著了一般隅很。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上率碾,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天叔营,我揣著相機與錄音屋彪,去河邊找鬼。 笑死绒尊,一個胖子當著我的面吹牛畜挥,可吹牛的內容都是我干的。 我是一名探鬼主播婴谱,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼蟹但,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了谭羔?” 一聲冷哼從身側響起矮湘,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎口糕,沒想到半個月后缅阳,有當地人在樹林里發(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡景描,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年十办,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片超棺。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡向族,死狀恐怖,靈堂內的尸體忽然破棺而出棠绘,到底是詐尸還是另有隱情件相,我是刑警寧澤,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布氧苍,位于F島的核電站夜矗,受9級特大地震影響,放射性物質發(fā)生泄漏让虐。R本人自食惡果不足惜紊撕,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望赡突。 院中可真熱鬧对扶,春花似錦、人聲如沸惭缰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽漱受。三九已至络凿,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背喷众。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工各谚, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人到千。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓昌渤,卻偏偏與公主長得像,于是被迫代替她去往敵國和親憔四。 傳聞我的和親對象是個殘疾皇子膀息,可洞房花燭夜當晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內容

  • Spark常用三種運行模式 Spark 的運行模式有 Local(也稱單節(jié)點模式),Standalone(集群模式...
    tracy_668閱讀 712評論 0 1
  • Spark簡介 相較于國內外較多的大數據處理框架了赵,Spark以基低延時的出色表現(xiàn)潜支,正在成為繼Hadoop的MapR...
    Peng小成閱讀 907評論 0 0
  • Scala語法 至于scala語法而言,大致上和Java的語法類似柿汛,增加了一些函數式編程冗酿,具體語法可以參考Scal...
    卡卡xx閱讀 2,829評論 0 1
  • 1. Overview: Structured Streaming是基于Spark SQL引擎的可擴展、具有容錯性...
    奉先閱讀 2,887評論 0 1
  • 今天下午帶二寶去廣場上玩络断,還沒下車裁替,遠遠就看見廣場上有兩個警察領著孩子,旁邊圍了很多人貌笨,估計是孩子找不到家長...
    e0dfec5fa497閱讀 102評論 0 0