2016-05-20 20 views
0

私はベンチマークテストプログラムを実行していますが、マッパーフェーズはうまくいきます。しかし、それは減速機フェーズになると私は情報の下になっています。結局仕事は、私がその何よりも多くを使用してマップ、減速、リソースマネージャとコンテナの思い出を増やす場合、私は、以前私がどんなマップドジョブの実行中にコンテナが要求に応じて終了しました

の下に行うことによって、問題を修正し

16/05/20 14:42:53 INFO mapreduce.Job: Task Id : attempt_1463557283514_0017_r_000008_1, Status : FAILED 

Container [pid=54068,containerID=container_1463557283514_0017_01_018425] is running beyond physical memory limits. Current usage: 4.2 GB of 4 GB physical memory used; 8.1 GB of 8.4 GB virtual memory used. Killing container. 

Dump of the process-tree for container_1463557283514_0017_01_018425 : 
     |- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME(MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE 
     |- 54068 54066 54068 54068 (bash) 0 0 115843072 362 /bin/bash -c /usr/java/jdk1.8.0_60/bin/java -Djava.net.preferIPv4Stack=true -Dhadoop.metrics.log.level=WARN -Xmx6144m -Djava.io.tmpdir=/u10/yarn/nm/usercache/username/appcache/application_1463557283514_0017/container_1463557283514_0017_01_018425/tmp -Dlog4j.configuration=container-log4j.properties -Dyarn.app.container.log.dir=/u04/yarn/container-logs/application_1463557283514_0017/container_1463557283514_0017_01_018425 -Dyarn.app.container.log.filesize=0 -Dhadoop.root.logger=INFO,CLA org.apache.hadoop.mapred.YarnChild 1x.4x.3x.9x 47528 attempt_1463557283514_0017_r_000008_1 18425 1>/u04/yarn/container-logs/application_1463557283514_0017/container_1463557283514_0017_01_018425/stdout 2>/u04/yarn/container-logs/application_1463557283514_0017/container_1463557283514_0017_01_018425/stderr 
     |- 54073 54068 54068 54068 (java) 5355 6080 8573480960 1103372 /usr/java/jdk1.8.0_60/bin/java -Djava.net.preferIPv4Stack=true -Dhadoop.metrics.log.level=WARN -Xmx6144m -Djava.io.tmpdir=/u10/yarn/nm/usercache/username/appcache/application_1463557283514_0017/container_1463557283514_0017_01_018425/tmp -Dlog4j.configuration=container-log4j.properties -Dyarn.app.container.log.dir=/u04/yarn/container-logs/application_1463557283514_0017/container_1463557283514_0017_01_018425 -Dyarn.app.container.log.filesize=0 -Dhadoop.root.logger=INFO,CLA org.apache.hadoop.mapred.YarnChild 1x.4x.3x.9x 47528 attempt_1463557283514_0017_r_000008_1 18425 

Container killed on request. Exit code is 143 
Container exited with a non-zero exit code 143 

enter image description here

+0

コンテナに十分なメモリがありません。物理マシンのRAMが4Gを超える場合は、Reduceタスクのメモリをそれに応じて増やしてください。 –

+0

私の物理マシンは64GBのRAMを持っていますが、私は 'mapreduce_map_memory_mb = 4GB'と' mapreduce_reduce_memory_mb = 4GB'を設定しました – BruceWayne

+0

還元剤メモリを6gに増やして試してみてください –

答えて

0

を失敗しています設定されます。その後、私はclouderaのデフォルトのjavaに変更しました。私は1.8.0_60を使用していました。私はこれをManagerの中で明示的に設定しました。だから私はCMのデフォルト設定には、このパラメータだけでなく、他の変更されたパラメータを変更したとき、それは

+0

変更のスクリーンショットを提供できますか? –

+0

私が変更これらのパラメータ 'mapreduce_map_memory_mb 2GB'' mapreduce_map_java_opts \t -Xmx1800M' 'mapreduce.reduce.java.optsが\t -Xmx6144m' ' mapreduce_reduce_memory_mb 4 GB'は '\t 10 'をmapreduce.task.timeout。しかし、私のために働いた人はいませんでした。もう一度JAVA_HOMEをデフォルトに変更しました – BruceWayne

0

を仕事を始めた私は、再起動を追加した後、糸-site.xmlの

<property> 
    <name>yarn.nodemanager.vmem-check-enabled</name> 
    <value>false</value> 
    <description>Whether virtual memory limits will be enforced for containers</description> 
</property> 
<property> 
    <name>yarn.nodemanager.vmem-pmem-ratio</name> 
    <value>4</value> 
    <description>Ratio between virtual memory to physical memory when setting memory limits for containers</description> 
</property> 

で以下のプロパティを追加することで、問題を修正しましたすべてのハープ・デーモン。

関連する問題