2013-11-25 19 views
13

実行しようとしている独自のMapReduceコードがありますが、Accepted状態のままです。以前に実行して成功した別のサンプルMRジョブを実行しようとしました。しかし、現在、両方のジョブはAccepted状態のままです。私はherehereのように、mapred-site.xmlとyarn-site.xmlのさまざまなプロパティを変更しようとしましたが、どちらも役に立たなかった。誰かが間違っている可能性があることを指摘できますか?私はここにmapred-site.xmlで値 - の一組の糸サイトでMapReduceジョブがAccepted状態でスタックする

<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> 

があり、様々な性質のために多くの値を試してみたのHadoop-2.2.0に

を使用しています。 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> 
+0

を実行し始めたあなたはそれらのオプションに設定した正確な値を投稿してください。 –

答えて

11

私は同じ効果があったため、システムにワーカーノードごとに使用可能なメモリが増え、アプリケーションに必要なメモリが削減されています。

私の糸-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> 
+0

私はHadoop初心者です。それについてどうやって行くのか教えてください。返信いただきありがとうございます! – user1571307

+1

それは動作し、より多くのRAMを与えます。 – AlexandruC

+0

この設定も私のためには機能しませんでした。私はapache hadoop 2.8.0のディストリビューションを使用しています。また、yarn-site.xmlの設定は、あなたの提案に加えてApacheのドキュメントに記載されています。 yarn.nodemanager。AUX-サービス mapreduce_shuffle yarn.nodemanager.env、ホワイトリスト JAVA_HOME、HADOOP_COMMON_HOME、HADOOP_HDFS_HOME、HADOOP_CONF_DIR、CLASSPATH_PREPEND_DISTCACHE、HADOOP_YARN_HOME、HADOOP_MAPRED_HOME の – Shailesh

4

ブログをフォローする - これはのためのパラメータを設定する方法について詳しく説明しhttp://hortonworks.com/blog/how-to-plan-and-configure-yarn-in-hdp-2-0/

YARNコンテナ

+0

はかなり同じを持っています問題。私は90%の自由なmemと90%の仮想CPUを持っていますが、ジョブは実行されていません、彼らはただ受け入れられます....私はホートンの記事、幸運からステップを繰り返しました。再起動し、クライアント構成を展開します。何も起こりません。ジョブはまだ受け入れられ、実行されていません。 – Sergey

+0

すばらしい記事。ありがとう、それは私の日を救った。 – Lavande

8

同じ問題がありましたが、私にとってはそれが問題だった完全なハードドライブ(90%以上)でした。清掃スペースが私を助けました。

+1

あなたは私の日を救った。ありがとうございます^ _ ^ –

8

ジョブがYAHNのacceptedの状態になっているのは、通常、空きリソースが足りないためです。あなたはhttp://resourcemanager:port/cluster/schedulerでそれを確認することができます。

  1. Memory Used + Memory Reserved >= Memory Total場合、VCores Used + VCores Reserved >= VCores Total場合メモリは
  2. 十分ではありません、VCoresは、それはまた、このようなmaxAMShareなどのパラメータによって制限されることが

十分ではありません。

0

私は同じ問題に直面しました。そして私は上記の答えに記載されているすべての設定を変更しましたが、まだそれは役に立たなかった。その後、私のクラスタの健全性を再確認しました。そこで、私の唯一のノードが不健康な状態にあることがわかりました。この問題は、/ 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デーモンを再起動した後、ノードの状態が健康で仕事に変わってしまったが

関連する問題