真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何理解Yarn的工作機制

如何理解Yarn的工作機制,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比祁陽網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式祁陽網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋祁陽地區(qū)。費用合理售后完善,十載實體公司更值得信賴。

我們知道 YARN 是 Hadoop 資源管理器,無論是 MapReduce 應(yīng)用還是 Spark 應(yīng)用,應(yīng)該都會用到 Yarn。

今天我們就來聊聊 Yarn 的組成以及工作流程:

先介紹幾個角色

如何理解Yarn的工作機制

ResourceManager

一個集群只有一個 RM,它是 YARN 的總指揮,負(fù)責(zé)協(xié)調(diào)集群上的計算資源,它有以下兩個組件:

  • ApplicationsManager:這個不是 ApplicationMaster,注意區(qū)分。它會接受 Job 的提交請求,調(diào)度 Container 用于啟動 ApplicationMaster,以及負(fù)責(zé) ApplicationMaster 的失敗重啟。

  • Scheduler:調(diào)度器純粹為應(yīng)用程序分配資源,它不會監(jiān)控應(yīng)用的狀態(tài),這里的調(diào)度就是基于 Container 這個抽象的資源容器,包含內(nèi)存、CPU、磁盤、網(wǎng)絡(luò)等。

NodeManager

一個集群中有多個 NodeManager,它負(fù)責(zé)啟動 Container,監(jiān)控 Container 的資源使用情況(cpu、內(nèi)存、磁盤、網(wǎng)絡(luò)),并將這些信息匯報給 RM。一個 NodeManager 上可以有多個 Container。

Container

Container 是一組硬件資源的抽象,包含 CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)等,所有的 Job 都是在 Container 中運行;

ApplicationMaster

與 RM 協(xié)商資源,并與 NodeManager 一起監(jiān)控任務(wù),ApplicationMaster 和 Job 一樣,都是運行在 Container 中。

下面我們詳細(xì)了解下一個任務(wù)是怎么提交到 Yarn 中運行的。

如何理解Yarn的工作機制

第 1 步:Client 向 RM 發(fā)起任務(wù)請求:「RM,我要執(zhí)行一個任務(wù)」

如何理解Yarn的工作機制

第 2 步:RM 給 Client 返回 Application ID 等信息:「好的,給你分配一個 Application ID」

如何理解Yarn的工作機制

第 3 步:Client 根據(jù)返回的信息,檢查作業(yè)的輸入輸出目錄是否正確、計算作業(yè)輸入分片是否正常,將運行作業(yè)需要的資源(作業(yè) Jar 文件、配置文件、輸入分片)復(fù)制到以 Application ID 命名的 HDFS 目錄中。

如何理解Yarn的工作機制

第 4 步:Client 向 RM 正式提交作業(yè):「我都準(zhǔn)備好了,執(zhí)行任務(wù)吧」

如何理解Yarn的工作機制

第 5 步:RM 將請求信息傳遞給自己的小弟 Scheduler:「Scheduler 老弟,你來分配個 Container」

第 6 步:Scheduler 分配 Container,用于啟動 ApplicationMaster:「好的,這個 Container 就是 0 號選手」

第 7 步:ApplicationsManager 與指定的 NodeManager 通信,要求在 Container 中啟動 ApplicationMaster。

如何理解Yarn的工作機制

第 8 步:ApplicationMaster 初始化任務(wù)并向 RM 申請所需要的資源:「RM 大哥,給我資源運行任務(wù)」

如何理解Yarn的工作機制

第 9 步:RM 返回 ApplicationMaster 申請的資源:「給你 1、2  兩個 NodeManager」

第 10 步:ApplicationMaster 與對應(yīng)的 NodeManager 通信,申請 Container 啟動任務(wù)「NodeManager 大哥,給我啟動 Container 運行這個任務(wù)」

如何理解Yarn的工作機制

第 11 步:Container 中的應(yīng)用程序會先將需要的計算資源從 HDFS 下載到本地,再啟動任務(wù):「都給我跑起來」

第 12 步:運行過程中,任務(wù)會將狀態(tài)和進(jìn)度報告給 ApplicationMaster,Client 會輪詢 ApplicationMaster 獲取狀態(tài)。

第 13 步:運行完成后,Container 會注銷掉,也就是把資源歸還給系統(tǒng),ApplicationMaster 向 RM 注銷自己。

關(guān)于如何理解Yarn的工作機制問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。


文章名稱:如何理解Yarn的工作機制
標(biāo)題網(wǎng)址:http://weahome.cn/article/pjpgoj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部