EMR 提供了一种特定的方式来设置 namenode 的堆大小,在启动集群时使用以下引导命令:
--bootstrap-action s3://elasticmapreduce/bootstrap-actions/configure-daemons --args --namenode-heap-size=4096
您也可以尝试使用配置文件。创建一个 XML 配置文件并将其上传到 s3。
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>mapred.child.java.opts</name>
<value>-Xmx4096m</value>
</property>
</configuration>
现在使用以下引导操作启动集群:
--bootstrap-action s3://elasticmapreduce/bootstrap-actions/configure-hadoop --args "--mapred-config-file, s3:///custom-heap-size.xml"