MapReduce架構

 

一、客戶端向Yarn提交一個程序application(包含程序主體applicationMaster和程序啓動命令)web

二、ResourceManager接收請求後會在集羣中尋找一個NodeManager並分配一個Container,與對應的NodeManager通訊(rpc通訊)並要求container啓動applicationMaster;app

三、applicationMaster向ResourceManager註冊(這樣就能夠經過yarn的web界面查看任務運行狀態),分佈式

四、根據任務信息向ResourceManager申請資源(Container);spa

五、因爲是分佈式計算,因此applicationMaster申請到資源後會向另外的NodeManager節點和本身的NodeManager節點rpc通訊並啓動container(運行MapTask和ReduceTask),每一個container裏面的Task時刻向applicationMaster 彙報( rpc通訊)本身運行的狀態和進度,爲了防止任務失敗能及時重啓。3d

六、當任務運行完成,ApplicationMaster會向ResourceManager註銷並關閉本身。blog

相關文章
相關標籤/搜索