Spark Standalone和Yarn工作模式

2021-09-09 07:15:12 字數 2367 閱讀 9440

其中- -deploy-mode預設為client。

standalone-client模式提交任務

./spark-submit --master spark://node1:7077 --deploy-mode client --class org.apache.spark.examples.sparkpi …/examples/jars/spark-examples_2.11-2.4.0.jar 100

在這種模式下,我們能夠很清楚的在客戶端看到driverworker的通訊,因為此時driver是執行在客戶端的。

並且:

standalone-client模式會在客戶端看到task時都會啟動自己的driverdriver與集群的worker有大量的通訊,會造成客戶端網絡卡流量激增的問題,這種模式適用於程式測試,不適用於生產環境。

2.standalone-cluster模式提交任務

./spark-submit --master spark://node1:7077 --deploy-mode cluster --class org.apache.spark.examples.sparkpi …/examples/jars/spark-examples_2.11-2.4.0.jar 100

1.yarn-client模式提交任務

與standalone-client模式一樣,會造成流量激增,適合做測試不適合生產。

下面是執行流程序列圖:

2.yarn-cluster模式提交任務

與standalone-cluster模式一樣,用集群分散網絡卡流量負擔。

下面是執行流程序列圖:

yarn-client模式,spark-submit在提交的時候傳送給rm,請求啟動am,分配乙個container,在某個nm上,啟動am,但是這裡的am只是乙個executorlauncher,功能是很有限的。am啟動後會找rm申請container,啟動executor,am鏈結其他的nm,用container的資源來啟動executor。executor會反向註冊到本地的driver上。

參考:

Yarn工作機制

yarn是乙個資源排程平台,負責為運算程式提供伺服器運算資源,相當於乙個分布式的作業系統平台,而mapreduce等運算程式則相當於執行於作業系統之上的應用程式1 yarn 並不清楚使用者提交的程式的執行機制 2 yarn 只提供運算資源的排程 使用者程式向 yarn 申請資源,yarn 就負責分配...

YARN基本原理和YARN工作流程

舊的mapreduce架構 基本概念 舊的架構的問題 jobtracker是mapreduce的集中處理點,存在單點故障 jobtracker完成了太多的任務,造成了過多的資源消耗,當mapreduce job 非常多的時候,會造成很大的記憶體開銷。這也是業界普遍總結出老hadoop的mapredu...

YARN基本框架和工作流程

nodemanager nm container yarn的通訊協議 yarn工作流程 排程器應用程式管理器nm是每個節點上的資源和任務管理器,一方面,它會定時地向rm匯報本節點上的資源使用情況和各個container的執行狀態,另一方面,它接收並處理來自am的container啟動 停止等各種請求...