测试中hdfs map reduce的容器内存可以设置得多低?

8nuwlpux  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(190)

我正在设置一个hadoop单节点环境,以便在只有4gb物理ram的硬件上进行测试,并使用hadoop2.6.0。
我只使用了为这种环境建议的基本配置。但我现在担心的是,我可能应该调整内存资源管理,以便能够运行一些map reduce示例。
我知道有几个设置需要考虑,包括java堆、map和reduce任务的内存。对于像我这样的小规模测试环境,我应该/可以为一个适度的map reduce任务设置最小、最大的容器大小到多小?
我特别指的是:

yarn.scheduler.minimum-allocation-mb
yarn.scheduler.maximum-allocation-mb

在启动dfs和启动Yarn后,机器上的自由物理量远低于1gb。

ruoxqz4g

ruoxqz4g1#

我经常在虚拟机上工作,在my-site.xml中有以下设置:

<property>
    <description>Max available memory on each data node.</description>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>4096</value>
  </property>

  <property>
    <description>Max available cores data node.</description>
    <name>yarn.nodemanager.resource.cpu-vcores</name>
    <value>8</value>
  </property>

  <property>
    <description>Minimum allocation unit.</description>
    <name>yarn.scheduler.minimum-allocation-mb</name>
    <value>256</value>
  </property>

  <property>
    <description>Max allocation unit.</description>
    <name>yarn.scheduler.maximum-allocation-mb</name>
    <value>4096</value>
  </property>

  <property>
    <description>Minimum increment setting - set to same as min-allocation</description>
    <name>yarn.scheduler.increment-allocation-mb</name>
    <value>256</value>
  </property>

在mapred-site.xml中-

<!-- small cluster memory settings -->
  <property>
    <name>mapreduce.map.memory.mb</name>
    <value>256</value>
  </property>

  <property>
    <name>mapreduce.reduce.memory.mb</name>
    <value>256</value>
  </property>

  <property>
    <description>Application master allocation</description>
    <name>yarn.app.mapreduce.am.resource.mb</name>
    <value>256</value>
  </property>

  <property>
    <name>mapreduce.map.java.opts</name>
    <value>-Xmx204m</value>
  </property>

  <property>
    <name>mapreduce.reduce.java.opts</name>
    <value>-Xmx204m</value>
  </property>

  <property>
    <description>Application Master JVM opts</description>
    <name>yarn.app.mapreduce.am.command-opts</name>
    <value>-Xmx204m</value>
  </property>

  <property>
    <name>mapreduce.task.io.sort.mb</name>
    <value>50</value>
  </property>

我发现这些设置在我的虚拟机上运行的任何具有虚拟机大小的数据卷(也就是说,不是太大!)的东西上都能很好地工作。

相关问题