如何在 Cloudera Manager 数据节点 CDH 6.3.2 上正常关闭 YARN 角色

How to do YARN role graceful shutdown on a Cloudera Manager datanode CDH 6.3.2

找不到这个问题的答案。

如何优雅地停止数据节点上的 YARN 角色并等待数据节点上的所有 运行 作业完成并显示状态成功。

我知道在 ClouderaManager 中,您可以在可以停止时停用 yarn 角色。 如果我执行 YARN 角色退役 运行 作业将失败,退出代码已终止或处于崩溃状态。

这是在数据节点上停止 YARN 角色的安全方法吗?

这是优雅的 yarn 角色关闭还是其他方法? all jobs have killed status after YARN role decommission

这在 Apache website for hadoop 3.3:

上的记录很差

创建一个 XML 文件,其中包含您希望停用的 NodeManagers:

<?xml version="1.0"?>
<hosts>
  <host><name>host1</name></host> <!-- normal 'kill' --> 
  <host><name>host2</name><timeout>123</timeout></host> <!-- allows jobs 123 seconds to finish --> 
  <host><name>host3</name><timeout>-1</timeout></host><!-- allows jobs infinite seconds to finish --> 
</hosts>

更新您的配置 (yarn-site.xml) 以指向此文件(无需重新启动)

yarn.resourcemanager.nodes.exclude-path=[path/to/exculd/file]

运行更新:(开始退役)

yarn rmadmin -refreshNodes 

或者,您可以为所有节点设置正常超时:

yarn.resourcemanager.nodemanager-graceful-decommission-timeout-secs

或者您手动设置正常超时:

yarn rmadmin -refreshNodes -g [timeout in seconds] -client

YARN 正常停用将等待作业完成。您可以传递超时值,以便 YARN 将在 x 秒后开始停用。如果 x 秒内没有作业 运行,则 YARN 将自动开始停用,而无需等待超时发生。

CM -> 集群 -> 纱线 -> 配置 -> 在搜索栏中(

yarn.resourcemanager.nodemanager-graceful-decommission-timeout-secs) 设置值并保存配置并重新启动以部署配置。 停用特定 host/more 台主机

CM -> 集群 -> 纱线 -> 实例(Select 您要停用的主机)

单击 -> 针对所选主机的操作 -> 停用 如果您想停用主机的所有角色,请遵循此文档 https://docs.cloudera.com/documentation/enterprise/6/6.3/topics/cm_mc_host_maint.html#decomm_host