Node節(jié)點下的Container管理
- 啟動時向ResourceManager注冊并定時發(fā)&##x9001;心跳消息,等待ResourceManager的指令
- 監(jiān)控Container的運行,維護Container的生命周期,監(jiān)控Container的資源使用情況
- 啟動或停止Container,管理任務運行時的依賴包(根據(jù)ApplicationMaster的需要,啟動Container之前將需要的程序及其依賴包、配置文件等拷貝到本地)
內(nèi)部結構
http://wiki.jikexueyuan.com/project/hadoop/images/yarn-node-manager.png" alt="" />
- NodeStatusUpdater: 啟動向ResourceManager注冊,報告該節(jié)點的可用資源情況,通信的端口和后續(xù)狀態(tài)的維護
-
ContainerManager: 接收RPC請求(啟動、停止),資源本地化(下載應用需要的資源到本地,根據(jù)需要共享這些資源)
PUBLIC: /filecache</local-dir>
PRIVATE: /usercache//filecache</local-dir>
APPLICATION: /usercache//appcache//(在程序完成后會被刪除)</app-id></local-dir>
-
ContainersLauncher: 加載或終止Container
- ContainerMonitor: 監(jiān)控Container的運行和資源使用情況
- ContainerExecutor: 和底層操作系統(tǒng)交互,加載要運行的程序