Hadoop 2.0 ApplicationMaster 与 NodeManager
Hadoop 2.0 ApplicationMaster vs NodeManager
我无法识别 Hadoop 2.0 架构中 ApplicationMaster 和 NodeManager 之间的区别。
我知道 ApplicationMaster 负责 运行ning map 和 reduce 任务并将容器检索到 运行 通过与 ResourceManager 协调完成这些任务。
但我对 NodeManager 的用途感到困惑。 NodeManager 是否为 ApplicationMaster 创建容器(运行 那些 map 和 reduce 任务)或者 ResourceManager 是否为 ApplicationMaster 创建容器(运行 那些 map 和 reduce 任务)并且 NodeManager 只是管理节点的健康状况,为ApplicationMaster安全放置容器所需的文件和目录,监控容器的资源使用情况等
ResourceManager(每个集群一个)- 在所有应用程序之间仲裁资源。
NodeManager - 负责容器启动、监控它们的资源使用情况(cpu、内存、磁盘、网络)并将其报告给 ResourceManager/Scheduler。
因此,在回答您的问题时,ResourceManager 不会自行启动容器,它会找到合适的 NodeManager 来执行此操作。
一些图片和链接,下面有更多详细信息。
YARN Architecture 来自官方 Hadoop 文档:
Anatomy of a YARN Application Run(来自 Tom White 的 "Hadoop: The Definitive Guide"):
我无法识别 Hadoop 2.0 架构中 ApplicationMaster 和 NodeManager 之间的区别。
我知道 ApplicationMaster 负责 运行ning map 和 reduce 任务并将容器检索到 运行 通过与 ResourceManager 协调完成这些任务。
但我对 NodeManager 的用途感到困惑。 NodeManager 是否为 ApplicationMaster 创建容器(运行 那些 map 和 reduce 任务)或者 ResourceManager 是否为 ApplicationMaster 创建容器(运行 那些 map 和 reduce 任务)并且 NodeManager 只是管理节点的健康状况,为ApplicationMaster安全放置容器所需的文件和目录,监控容器的资源使用情况等
ResourceManager(每个集群一个)- 在所有应用程序之间仲裁资源。
NodeManager - 负责容器启动、监控它们的资源使用情况(cpu、内存、磁盘、网络)并将其报告给 ResourceManager/Scheduler。
因此,在回答您的问题时,ResourceManager 不会自行启动容器,它会找到合适的 NodeManager 来执行此操作。
一些图片和链接,下面有更多详细信息。
YARN Architecture 来自官方 Hadoop 文档:
Anatomy of a YARN Application Run(来自 Tom White 的 "Hadoop: The Definitive Guide"):