更新時(shí)間:2022-12-12 來(lái)源:黑馬程序員 瀏覽量:
Spark部署模式分為L(zhǎng)ocal模式(本地單機(jī)模式)和集群模式,在Local模式下,常用于本地開(kāi)發(fā)程序與測(cè)試,而集群模式又分為Standalone模式(集群?jiǎn)螜C(jī)模式)、Yarn模式和Mesos模式,關(guān)于這三種集群模式的相關(guān)介紹具體如下:
Standalone模式被稱(chēng)為集群?jiǎn)螜C(jī)模式。Spark框架與Hadoop1.0版本框架類(lèi)似,本身都自帶了完整的資源調(diào)度管理服務(wù),可以獨(dú)立部署到一個(gè)集群中,無(wú)需依賴(lài)任何其他的資源管理系統(tǒng),在該模式下,Spark集群架構(gòu)為主從模式,即一臺(tái)Master節(jié)點(diǎn)與多臺(tái)Slave節(jié)點(diǎn),Slave節(jié)點(diǎn)啟動(dòng)的進(jìn)程名稱(chēng)為Worker,此時(shí)集群會(huì)存在單點(diǎn)故障問(wèn)題,后續(xù)將在Spark HA集群部署小節(jié)講解利用Zookeeper解決單點(diǎn)問(wèn)題的方案。
Yarn模式被稱(chēng)為Spark on Yarn模式,即把Spark作為一個(gè)客戶(hù)端,將作業(yè)提交給Yarn服務(wù),由于在生產(chǎn)環(huán)境中,很多時(shí)候都要與Hadoop使用同一個(gè)集群,因此采用Yarn來(lái)管理資源調(diào)度,可以有效提高資源利用率,Yarn模式又分為Yarn Cluster模式和Yarn Client模式,具體介紹如下:
lYarn Cluster:用于生產(chǎn)環(huán)境,所有的資源調(diào)度和計(jì)算都在集群上運(yùn)行。
lYarn Client:用于交互、調(diào)試環(huán)境。
Mesos模式被稱(chēng)為Spark on Mesos模式,Mesos與Yarn同樣是一款資源調(diào)度管理系統(tǒng),可以為Spark提供服務(wù),由于Spark與Mesos存在密切的關(guān)系,因此在設(shè)計(jì)Spark框架時(shí)充分考慮到了對(duì)Mesos的集成,但如果你同時(shí)運(yùn)行Hadoop和Spark,從 兼 容 性 的 角 度 來(lái) 看 ,Spark on Yarn是更好的選擇。
上述三種分布式部署方案各有利弊,通常需要根據(jù)實(shí)際情況決定采用哪種方案。由于學(xué)習(xí)階段我們是在虛擬機(jī)環(huán)境下模擬小規(guī)模集群,因此可以考慮選擇Standalone模式。