container的生命周期是什么,是整個(gè)job運(yùn)行完成,還是說(shuō)container上的任務(wù)完成后
1. Container啟動(dòng)過(guò)程主要經(jīng)歷三個(gè)階段:資源本地化、啟動(dòng)并運(yùn)行container、資源回收
其中,資源本地化指創(chuàng)建container工作目錄,從HDFS下載運(yùn)行container所需的各種資源(jar包、可執(zhí)行文件等)等
而資源回收則是資源本地化的逆過(guò)程,它負(fù)責(zé)清理各種資源,它們均由ResourceLocalizationService服務(wù)完成的。
啟動(dòng)container是由ContainersLauncher服務(wù)完成的
而運(yùn)行container是由插拔式組件ContainerExecutor完成的,YARN提供了兩種ContainerExecutor實(shí)現(xiàn),一種是 DefaultContainerExecutor,另一種是LinuxContainerExecutor
2. container的生命周期是這樣的: nm先去申請(qǐng)資源,然后是locallizing-downloading-localized->running-exit with failure(success)—>kill->clearnup