首先,我使用的是hadoop-2.6.0。我想在yarn集群中的一组特定节点上启动appmaster,因为集群中的一些节点是amazon spot机器,随时都可能丢失。有没有一种方法可以让我只在一组特定的机器上启动一个主应用程序?
fafcakar1#
是的,当然,你可以开始你在一个特定的节点!applicationsubmissioncontext提供了一个函数setamcontainerresourcerequest,您可以在其中传递am的resourcerequest对象,在resourcerequest对象中,您可以设置relaxlocality标志“false”,它告诉resourcemanager应用程序希望局部性是松散的(即允许通过机架或任何机架)还是严格的(即指定资源分配的硬约束)。然后使用setresourcename设置主机名。此外,如果您需要帮助来请求am,请参考分布式shell示例,希望对您有所帮助!
1条答案
按热度按时间fafcakar1#
是的,当然,你可以开始你在一个特定的节点!
applicationsubmissioncontext提供了一个函数setamcontainerresourcerequest,您可以在其中传递am的resourcerequest对象,在resourcerequest对象中,您可以设置relaxlocality标志“false”,它告诉resourcemanager应用程序希望局部性是松散的(即允许通过机架或任何机架)还是严格的(即指定资源分配的硬约束)。然后使用setresourcename设置主机名。
此外,如果您需要帮助来请求am,请参考分布式shell示例,希望对您有所帮助!