2016-05-12 5 views
2

Apacheのアペックスメモリモデル内YARNのメモリ設定を制御

私の事業者が殺されたとき、私は時折、ウェブUIから次のログを見ています。コンテナのネゴシエーション時にYARNと通信するために使用されるメモリ設定を制御できる方法はありますか?

コンテナヒープと最大メモリの一般的なYARN設定は、Apexメモリ割り当てモデルにどのように関連していますか。次のように私は、Web UIに表示さ

情報メッセージは以下のとおりです。

Container [pid=14699,containerID=container_1462863487071_0015_01_000012] is running beyond physical memory limits. Current usage: 1.5 GB of 1.5 GB physical memory used; 6.1 GB of 3.1 GB virtual memory used. Killing container. 
Dump of the process-tree for container_1462863487071_0015_01_000012 : 
    |- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME(MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE 
    |- 14817 14699 14699 14699 (java) 1584 1654 6426968064 393896 /usr/java/default/bin/java -Xmx4429185024 -Ddt.attr.APPLICATION_PATH=hdfs://dwh109.qaperf2.sac.int.threatmetrix.com:8020/user/dtadmin/datatorrent/apps/application_1462863487071_0015 -Djava.io.tmpdir=/data3/yarn/nm/usercache/root/appcache/application_1462863487071_0015/container_1462863487071_0015_01_000012/tmp -Ddt.cid=container_1462863487071_0015_01_000012 -Dhadoop.root.logger=INFO,RFA -Dhadoop.log.dir=/data3/yarn/container-logs/application_1462863487071_0015/container_1462863487071_0015_01_000012 -Ddt.loggers.level=com.datatorrent.*:INFO,org.apache.*:INFO com.datatorrent.stram.engine.StreamingContainer 
    |- 14699 14697 14699 14699 (bash) 1 2 108646400 303 /bin/bash -c /usr/java/default/bin/java -Xmx4429185024 -Ddt.attr.APPLICATION_PATH=hdfs://dwh109.qaperf2.sac.int.threatmetrix.com:8020/user/dtadmin/datatorrent/apps/application_1462863487071_0015 -Djava.io.tmpdir=/data3/yarn/nm/usercache/root/appcache/application_1462863487071_0015/container_1462863487071_0015_01_000012/tmp -Ddt.cid=container_1462863487071_0015_01_000012 -Dhadoop.root.logger=INFO,RFA -Dhadoop.log.dir=/data3/yarn/container-logs/application_1462863487071_0015/container_1462863487071_0015_01_000012 -Ddt.loggers.level=com.datatorrent.*:INFO,org.apache.*:INFO com.datatorrent.stram.engine.StreamingContainer 1>/data3/yarn/container-logs/application_1462863487071_0015/container_1462863487071_0015_01_000012/stdout 2>/data3/yarn/container-logs/application_1462863487071_0015/container_1462863487071_0015_01_000012/stderr 

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

答えて

2

オペレータがより多くのメモリを必要とするように見えます。このプロパティを追加して、コンテナに割り当てられるメモリを増やすことができます。 properties.xmlで、アプリケーション内のオペレータOのためにあなたは、プロパティを指定することがあります。

<property> 
<name>dt.operator.O.attr.MEMORY_MB</name> 
<value>2048</value> 
</property> 

より事前のオプションについては、物理的な計画の準備コードを見てみましょう。

https://github.com/apache/incubator-apex-core/blob/ddb7471edd37ef228432c7d80e1e118368e68450/engine/src/main/java/com/datatorrent/stram/plan/physical/PhysicalPlan.java

は、より多くのトラブルシューティングガイドについては、

http://docs.datatorrent.com/troubleshooting/#configuring-memory

を見てみましょう
関連する問題