web-dev-qa-db-ja.com

MapReduceジョブがAccepted状態のままになる

実行しようとしている独自のMapReduceコードがありますが、Accepted状態のままです。以前に実行して成功した別のサンプルMRジョブを実行してみました。しかし、現在、両方のジョブはAccepted状態のままです。 here および here のように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>
20
user1571307

同じ効果があり、ワーカーノードごとに使用可能なメモリをシステムに追加し、アプリケーションに必要なメモリを削減することができました。

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>
14
Niels Basjes

YARNでaccepted状態のままになっているジョブは、通常、空きリソースが十分でないために発生します。 http://resourcemanager:port/cluster/schedulerで確認できます:

  1. Memory Used + Memory Reserved >= Memory Totalの場合、メモリが十分ではありません
  2. VCores Used + VCores Reserved >= VCores Totalの場合、VCoresでは不十分です

maxAMShareなどのパラメーターによって制限される場合もあります。

9
secfree

同じ問題がありましたが、私にとってはフルハードドライブ(90%以上)でした。クリーニングスペースは私を救った。

9
Romain Jouin

ブログをフォローしてください- http://hortonworks.com/blog/how-to-plan-and-configure-yarn-in-hdp-2-0/

これは、YARNコンテナーのパラメーターの設定方法を詳細に説明します

4
user373480

Hadoop 3.0.1。を使用していると、ResourceManager Web UIでACCEPTED状態でサブミットされたマップ削減ジョブが表示されるという同じ問題に直面していました。また、同じResourceManager Web UIでは、Cluster metrics-> Memory usedは0、Total Memoryは0でした。 Cluster Node Metrics-> Active Nodesは0でしたが、NamedNode Web UIはデータノードを完全にリストしていました。クラスターでyarn node -listを実行してもNodeManagerが表示されませんでした。 NodeManagerを開始した後、新しく送信されたマップ削減ジョブはさらに進むことができました。ACCEPTED状態でスタックしなくなり、「RUNNING」状態になりました。

1
Binita Bharati

私は同じ問題に直面しました。そして、上記の回答に記載されているすべての構成を変更しましたが、それでも役に立たなかった。この後、クラスターの正常性を再確認しました。そこで、唯一無二のノードが不健全な状態にあることに気付きました。この問題は、/ 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デーモンを再起動した後、ノードの状態が正常に変わり、ジョブの実行が開始されました

0
Manish Bansal

プロパティの追加yarn.resourcemanager.hostnameyarn-のマスターノードのホスト名にsite.xmlこの構成を反映するためにこのファイルをクラスター内のすべてのノードにコピーして、この問題を解決しました。

0
Srinivas