mapreduce作业陷入接受状态

4xrmg8kj  于 2021-06-04  发布在  Hadoop
关注(0)|答案(6)|浏览(398)

我有我自己的mapreduce代码,我正试图运行,但它只是停留在接受的状态。我试着运行另一个我以前运行过的示例mr作业,结果很成功。但现在,这两项工作都保持在公认的状态。我尝试更改mapred-site.xml和yarn-site.xml中的各种属性,如这里和这里所提到的,但也没有帮助。有人能指出可能出了什么问题吗。我正在使用hadoop-2.2.0
我为各种属性尝试了许多值,下面是一组值-在mapred-site.xml中

<property>
<name>mapreduce.job.tracker</name>
<value>localhost:54311</value>
</property> 

<property>
<name>mapreduce.job.tracker.reserved.physicalmemory.mb</name>
<value></value>
</property>

<property>
<name>mapreduce.map.memory.mb</name>
<value>256</value>
</property>

<property>
<name>mapreduce.reduce.memory.mb</name>
<value>256</value>
</property>

<property>
<name>yarn.app.mapreduce.am.resource.mb</name>
<value>400</value>
<source>mapred-site.xml</source>
</property>

在yarn-site.xml中

<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>400</value>
<source>yarn-site.xml</source>
</property>
<property>
<name>yarn.scheduler.capacity.maximum-am-resource-percent</name>
<value>.3</value>
</property>
dgtucam1

dgtucam11#

将yarn.resourcemanager.hostname属性添加到yarn-site.xml中的主节点主机名,并将此文件复制到集群中的所有节点以反映此配置,这对我来说解决了问题。

l5tcr1uw

l5tcr1uw2#

陷入困境的工作 accepted 国家对Yarn通常是因为免费资源不够。你可以在 http://resourcemanager:port/cluster/scheduler :
如果 Memory Used + Memory Reserved >= Memory Total ,内存不足
如果 VCores Used + VCores Reserved >= VCores Total ,vcores不够
它也可能受到参数的限制,例如 maxAMShare .

gab6jxml

gab6jxml3#

我使用的是hadoop3.0.1。我遇到了同样的问题,在提交的map reduce作业中,在resourcemanagerwebui中显示为卡在接受状态 Cluster metrics -> Memory used 是0, Total Memory 为0; Cluster Node Metrics -> Active Nodes 为0,尽管namednode web ui完美地列出了数据节点。正在运行 yarn node -list 在群集上没有显示任何NodeManager。结果是,我的NodeManager没有运行。在启动NodeManager之后,新提交的map reduce作业可以继续进行。它们不再停留在接受状态,而是进入“运行”状态

yftpprvb

yftpprvb4#

我也得到了同样的效果,并且发现让系统每个工作节点有更多的可用内存,并减少应用程序所需的内存是有帮助的。
我的yarn-site.xml中的设置(在我的非常小的实验箱上):

<property>
  <name>yarn.nodemanager.resource.memory-mb</name>
  <value>2200</value>
  <description>Amount of physical memory, in MB, that can be allocated for containers.</description>
</property>

<property>
  <name>yarn.scheduler.minimum-allocation-mb</name>
  <value>500</value>
</property>
67up9zun

67up9zun5#

有同样的问题,对我来说,这是一个完整的硬盘驱动器(>90%满),这是问题。清洁空间救了我。

brvekthn

brvekthn6#

我也面临同样的问题。我改变了上面提到的所有配置,但仍然没有用。之后,我重新检查了集群的运行状况。在那里,我观察到我唯一的一个节点处于不健康状态。问题是由于我的/tmp/hadoop hadoopuser/nm local dir目录中缺少磁盘空间。可以通过在端口8032的资源管理器web ui处检查节点运行状况来检查这一点。为了解决这个问题,我在yarn-site.xml中添加了以下属性。

<property>
    <name>yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage</name>
    <value>98.5</value>
</property>

重新启动hadoop守护程序后,节点状态变为正常,作业开始运行

相关问题