yarn是乙個資源排程平台,負責為運算程式提供伺服器運算資源,相當於乙個分布式的作業系統平台,而mapreduce等運算程式則相當於執行於作業系統之上的應用程式1)
yarn
並不清楚使用者提交的程式的執行機制 2
)yarn
只提供運算資源的排程(使用者程式向
yarn
申請資源,
yarn
就負責分配資源) 3
)yarn
中的主管角色叫
resourcemanager 4
)yarn
中具體提供運算資源的角色叫
nodemanager 5
)這樣一來,
yarn
其實就與執行的使用者程式完全解耦,就意味著
yarn
上可以執行各種型別的分布式運算程式(
mapreduce
只是其中的一種),比如
mapreduce
、storm
程式,spark
程式…… 6
)所以,
spark
、storm
等運算框架都可以整合在
yarn
上執行,只要他們各自的框架中有符合
yarn
規範的資源請求機制即可 7
)yarn
就成為乙個通用的資源排程平台,從此,企業中以前存在的各種運算集群都可以整合在乙個物理集群上,提高資源利用率,方便資料共享1)
yarn
執行機制
2)工作機制詳解 (
0)mr程式提交到客戶端所在的節點 (
1)yarnrunner
向resourcemanager
申請乙個。
(2)rm
將該應用程式的資源路徑返回給
yarnrunner (
3)該程式將執行所需資源提交到
hdfs上
(4)程式資源提交完畢後,申請執行 (
5)rm將使用者的請求初始化成乙個
task,存到排程佇列裡 (
6)其中乙個
nodemanager
領取到task
任務。 (7
)該nodemanager
建立容器
container
,並產生 (
8)container
從hdfs
上拷貝資源到本地 (
9)向rm
申請執行
maptask容器
(10)rm
將執行maptask
任務分配給另外兩個
nodemanager
,另兩個
nodemanager
分別領取任務並建立容器。 (
11)mr向兩個接收到任務的
nodemanager
傳送程式啟動指令碼,這兩個
nodemanager
分別啟動
maptask
,maptask
對資料分割槽排序。 (
12)向rm
申請2個容器,執行
reduce task。
(13)reduce task
向maptask
獲取相應分割槽的資料。 (
14)程式執行完畢後,
mr會向
rm登出自己。
簡單搞定yarn工作機制
yarn概述?yarn 是乙個資源排程平台,負責為運算程式提供伺服器運算資源,相當於乙個分布式的作業系統平台,而mapreduce 等運算程式則相當於執行於作業系統之上的應用程式 yarn的重要概念 1 yarn 並不清楚使用者提交的程式的執行機制 2 yarn 只提供運算資源的排程 使用者程式向y...
Yarn的工作機制原理
2 工作機制詳解 0 mr程式提交到客戶端所在的節點。2 rm將該應用程式的資源路徑返回給yarnrunner。3 該程式將執行所需資源提交到hdfs上。5 rm將使用者的請求初始化成乙個task。6 其中乙個nodemanager領取到task任務。8 container從hdfs上拷貝資源到本地...
YARN 高可用機制
yarn 的高可用 resourcemanager 基於zookeeper 實現高可用機制,避免單點故障。作為通用的 統一的資源管理系統,yarn可以 1 同時首席執行官應用程式 比如service,http server 2 執行短應用程式 mapreduce job spark job 等等 在...