2016-03-03 47 views
0

假設在這臺機器上有10個容器運行(5是mapreduce任務,5是紗線執行器上的火花)。當我殺死一根紗線的節點管理器時發生了什麼

如果我殺了節點管理器,這10個容器過程會發生什麼?

在我重新啓動節點管理器之前,我應該先做些什麼?

+0

我想你是指當** ResourceManager **死亡時會發生什麼。 * NodeManager *管理每個從節點上的所有容器。 – Nicomak

+0

我無法回答你的問題,除非配置高可用性(https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/ResourceManagerHA.html),在這種情況下沒有任何反應我想你應該試着看看你自己!但是,通過詢問,我可以使您的問題更加有趣,當ApplicationMaster節點死亡時會發生什麼? – Nicomak

回答

0

殺死nodemanager只會影響這個特定節點的容器。所有正在運行的容器在重新啓動/終止時都會丟失。一旦節點啓動或節點管理器進程啓動(如果應用程序/作業仍在運行),它們將重新啓動。 注意:作業ApplicationMaster不應該在此從站上運行。

當ApplicationMaster節點死亡時會發生什麼? 在這種情況下,紗線在其他節點上啓動一個新的ApplicationMaster。在這種情況下,所有容器都重新啓動。

0

根據Hadoop的2.7.x DIST回答:檢查這篇文章:http://hortonworks.com/blog/resilience-of-yarn-applications-across-nodemanager-restarts/

如果你沒有yarn.nodemanager.recovery.enabled設置爲true,那麼你的容器會被殺死(火花或MapReduce的或其他任何東西),但是你工作很可能會繼續。

您需要在您的env中使用hadoop conf | grep yarn.nodemanager.recovery.dir查看此屬性。如果它是錯誤的,這對我來說默認情況下,那麼你可以做的任何事情,以防止在重新啓動imo時獲得那些容器。但是,如果希望恢復容器,則可以嘗試修改該標誌併爲未來的案例設置其他必需的屬性。

看看這個:http://www.cloudera.com/documentation/enterprise/5-4-x/topics/admin_ha_yarn_work_preserving_recovery.html

相關問題