Container [pid=26551,containerID=container_1437800838385_0177_01_000002]
is running beyond physical memory limits. Current usage: 1.0 GB of 1 GB
physical memory used; 3.3 GB of 2.1 GB virtual memory used. Killing container.
Dump of the
process-tree for container_1437800838385_0177_01_000002 :
From the error
message, you can see that you're using more virtual memory than your current
limit of 1.0gb. This can be resolved in two ways:
From the error message, you can
see that you're using more virtual memory than your current limit of 1.0gb.
This can be resolved in two ways:
Disable Virtual Memory Limit
Checking
YARN will
simply ignore the limit; in order to do this, add this to your yarn-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>
The default for
this setting is true.
Increase Virtual Memory to
Physical Memory Ratio
In your yarn-site.xml change this to a higher value than is currently set
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>5</value>
<description>Ratio between virtual
memory to physical memory when setting memory limits for containers. Container
allocations are expressed in terms of physical memory, and virtual memory usage
is allowed to exceed this allocation by this ratio.</description>
</property>
The default
is 2.1
You could also increase the
amount of physical memory you allocate to a container.
Make sure you don't forget to
restart yarn after you change the config.