亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hadoop的資源管理模塊YAR有什么用

發布時間:2021-12-09 15:32:39 來源:億速云 閱讀:209 作者:iii 欄目:大數據

本篇內容介紹了“Hadoop的資源管理模塊YAR有什么用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

1、 YARN的產生

在之前文章中介紹過hadoop1與hadoop2架構的區別是hadoop2將資源管理功能從MapReduce框架中獨立出來,也就是現在的YARN模塊。

在沒有 YARN 之前,是一個集群一個計算框架。比如:MapReduce 一個集群、Spark 一個集群、HBase 一個集群等。

造成各個集群管理復雜,資源的利用率很低;比如:在某個時間段內 Hadoop 集群忙而Spark  集群閑著,反之亦然,各個集群之間不能共享資源造成集群間資源并不能充分利用。

并且采用"一個框架一個集群"的模式,也需要多個管理員管理這些集群, 進而增加運維成本;而共享集群模式通常需要少數管理員即可完成多個框架的統一管理;  隨著數據量的暴增,跨集群間的數據移動不僅需要花費更長的時間,且硬件成本也會大大增加;而共享集群模式可讓多種框架共享數據和硬件資源,將大大減少數據移動帶來的成本。

解決辦法:

將所有的計算框架運行在一個集群中,共享一個集群的資源,按需分配;Hadoop 需要資源就將資源分配給 Hadoop,Spark 需要資源就將資源分配給  Spark,進而整個集群中的資源利用率就高于多個小集群的資源利用率;

2、 YARN的基本構成

Master/Slave 結構,1 個ResourceManager(RM)對應多個 NodeManager(NM);YARN 由  Client、ResourceManager、NodeManager、ApplicationMaster (AM)組成;Client 向 RM  提交任務、殺死任務等;

AM由對應的應用程序完成;

每個應用程序對應一個 AM,AM向RM申請資源用于在NM上啟動相應的 Task;NM 向 RM通過心跳信息:匯報  NM健康狀況、任務執行狀況、領取任務等;

Hadoop的資源管理模塊YAR有什么用

RM:整個集群只有一個,負責集群資源的統一管理和調度

1)處理來自客戶端的請求(啟動/殺死應用程序);

2)啟動/監控 AM;一旦某個 AM 掛了之后,RM 將會在另外一個節點上啟動該 AM;

3)監控 NM,接收 NM的心跳匯報信息并分配任務到 NM去執行;一旦某個 NM掛了,標志下該 NM 上的任務,來告訴對應的 AM 如何處理;

4)負責整個集群的資源分配和調度;

NM:整個集群中有多個,負責單節點資源管理和使用

1)周期性向 RM匯報本節點上的資源使用情況和各個 Container 的運行狀;

2)接收并處理來自 RM 的 Container 啟動/停止的各種命令;

3)處理來自 AM的命令;

4)負責單個節點上的資源管理和任務調度;

AM:每個應用一個,負責應用程序的管理

1)數據切分;

2)為應用程序/作業向 RM 申請資源(Container),并分配給內部任務;

3)與 NM通信以啟動/停止任務;

4)任務監控和容錯(在任務執行失敗時重新為該任務申請資源以重啟任務);

5)處理 RM發過來的命令:殺死 Container、讓 NM重啟等;

Container:對任務運行環境的抽象

1)任務運行資源(節點、內存、CPU);

2)任務啟動命令;

3)任務運行環境;任務是運行在Container中,一個Container中既可以運行AM也可以運行具體的 Map/Reduce/MPI/Spark  Task;

3、 YARN的工作原理

1)用戶向 YARN 中提交應用程序/作業,其中包括 ApplicaitonMaster 程序、啟動ApplicationMaster  的命令、用戶程序等;

2)ResourceManager 為作業分配第一個 Container,并與對應的 NodeManager 通信,要求它在這個 Containter  中啟動該作業的 ApplicationMaster;

3 )ApplicationMaster 首 先 向 ResourceManager 注 冊 , 這 樣 用 戶 可 以 直 接 通  過ResourceManager 查詢作業的運行狀態;然后它將為各個任務申請資源并監控任務的運行狀態,直到運行結束。即重復步驟 4-7;

4)ApplicationMaster 采用輪詢的方式通過 RPC 請求向 ResourceManager 申請和領取資源;

5)一旦 ApplicationMaster 申請到資源后,便與對應的 NodeManager 通信,要求它啟動任務;

6)NodeManager 啟動任務;

7)各個任務通過 RPC 協議向 ApplicationMaster 匯報自己的狀態和進度,以讓ApplicaitonMaster  隨時掌握各個任務的運行狀態,從而可以在任務失敗時重新啟動任務;在作業運行過程中,用戶可隨時通過 RPC 向 ApplicationMaster  查詢作業當前運行狀態;

8)作業完成后,ApplicationMaster 向 ResourceManager 注銷并關閉自己;

4、 YARN的容錯性

ResourceMananger基于 ZooKeeper 實現 HA 避免單點故障;

NodeManager執行失敗后,ResourceManager 將失敗任務告訴對應的 ApplicationMaster;

由 ApplicationMaster 決定如何處理失敗的任務;

ApplicationMaster執行失敗后,由 ResourceManager 負責重啟;

ApplicationMaster 需處理內部任務的容錯問題;

RMAppMaster 會保存已經運行完成的 Task,重啟后無需重新運行。

5、 YARN的調度框架

1、雙層調度框架

1)ResourceManager 將資源分配給 ApplicationMaster;

2)ApplicationMaster 將資源進一步分配給各個 TASK;

2、基于資源預留的調度策略

1)資源不夠時,會為 Task 預留,直到資源充足;描述:當一個 Task 需要 10G 資源時,各個節點都不足 10G,那么就選擇一個節點,但是某個  NodeManager上只有 2G, 那么就在這個 NodeManager上預留, 當這個 NodeManager上釋放其他資源后,會將資源預留給 10G  的作業,直到攢夠 10G 時,啟動 Task;缺點:資源利用率不高,要先攢著,等到 10G 才利用,造成集群的資源利用率低;

2)與"all or nothing"策略不同(Apache Mesos)描述:當一個作業需要 10G 資源時,節點都不足  10G,那就慢慢等,等到某個節點上有 10G 空閑資源時再運行,很可能會導致該 Task 餓死。

“Hadoop的資源管理模塊YAR有什么用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

饶平县| 灵台县| 上栗县| 遂昌县| 海门市| 台东县| 南澳县| 鄂托克旗| 郎溪县| 墨竹工卡县| 灵石县| 祁连县| 浦北县| 黄山市| 景洪市| 漳浦县| 广水市| 叙永县| 肇庆市| 曲靖市| 安新县| 宁德市| 南康市| 贵溪市| 罗源县| 平阳县| 辽宁省| 泽州县| 昌黎县| 延庆县| 澎湖县| 南丹县| 金寨县| 昭通市| 长泰县| 新闻| 光山县| 徐汇区| 得荣县| 福清市| 汕尾市|