linux

Linux里Hadoop资源怎样分配

小樊
36
2025-11-16 22:51:20
栏目: 智能运维

Linux下Hadoop资源分配实践指南

一 核心架构与分配流程

二 节点级资源总量配置

<configuration>
  <!-- 节点可分配的物理内存总量 -->
  <property>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>16384</value>
  </property>
  <!-- 节点可分配的虚拟CPU核心总数 -->
  <property>
    <name>yarn.nodemanager.resource.cpu-vcores</name>
    <value>8</value>
  </property>
  <!-- 单个容器可申请的最小/最大内存 -->
  <property>
    <name>yarn.scheduler.minimum-allocation-mb</name>
    <value>1024</value>
  </property>
  <property>
    <name>yarn.scheduler.maximum-allocation-mb</name>
    <value>8192</value>
  </property>
  <!-- 可选:控制AM占用集群资源的上限 -->
  <property>
    <name>yarn.scheduler.capacity.maximum-am-resource-percent</name>
    <value>0.5</value>
  </property>
</configuration>

三 队列与调度器分配

<configuration>
  <property>
    <name>yarn.scheduler.capacity.root.queues</name>
    <value>queueA,queueB</value>
  </property>
  <property>
    <name>yarn.scheduler.capacity.root.queueA.capacity</name>
    <value>50</value>
  </property>
  <property>
    <name>yarn.scheduler.capacity.root.queueB.capacity</name>
    <value>50</value>
  </property>
</configuration>

四 作业级内存与CPU分配

<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>

  <!-- 容器内存 -->
  <property>
    <name>mapreduce.map.memory.mb</name>
    <value>4096</value>
  </property>
  <property>
    <name>mapreduce.reduce.memory.mb</name>
    <value>4096</value>
  </property>

  <!-- JVM 堆(建议略小于容器内存,留出堆外开销) -->
  <property>
    <name>mapreduce.map.java.opts</name>
    <value>-Xmx3200m</value>
  </property>
  <property>
    <name>mapreduce.reduce.java.opts</name>
    <value>-Xmx3200m</value>
  </property>

  <!-- 容器 vCPU -->
  <property>
    <name>mapreduce.map.cpu.vcores</name>
    <value>1</value>
  </property>
  <property>
    <name>mapreduce.reduce.cpu.vcores</name>
    <value>1</value>
  </property>

  <!-- Reduce 数量(可按数据量与并发度调整) -->
  <property>
    <name>mapreduce.job.reduces</name>
    <value>4</value>
  </property>
</configuration>

五 验证与运维要点

0
看了该问题的人还看了