【问题标题】:Controlling YARN memory settings within Apache Apex memory model在 Apache Apex 内存模型中控制 YARN 内存设置
【发布时间】:2016-05-12 21:54:44
【问题描述】:

当我的操作员被杀时,我偶尔会从 Web 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

【问题讨论】:

    标签: hadoop-yarn apache-apex


    【解决方案1】:

    操作员似乎需要更多内存。您可以添加此属性来为容器分配更多内存。在 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

    【讨论】:

      猜你喜欢
      • 2018-05-12
      • 1970-01-01
      • 2020-06-14
      • 2023-04-02
      • 2022-06-17
      • 2016-04-06
      • 2016-11-15
      • 2014-12-21
      • 2016-05-22
      相关资源
      最近更新 更多