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