
# 配置NodeManager角色实例使用的资源
#### 操作场景
如果部署NodeManager的各个节点的硬件资源（如CPU核数、内存总量）不同，但是NodeManager可用硬件资源设置为相同的值，可能造成性能浪费或状态异常。
为了使节点的硬件资源得到充分利用，可以参考该章节操作修改各个NodeManager角色实例的虚拟CPU核数、可使用的物理内存大小。
#### 对系统的影响
保存新的配置需要重启NodeManager角色实例，此时对应的角色实例不可用。
#### 操作步骤
1. 登录FusionInsight Manager。 
   登录集群Manager具体操作，请参考[访问MRS集群Manager](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0128.html)。
   
   
2. 选择"集群 \> 服务 \> Yarn \> 实例"。
3. 单击部署NodeManager节点对应角色实例名称，并切换到"实例配置"，选择"全部配置"。
4. 搜索并根据实际需要修改相关参数。 
   表1参数解释 
   | **参数**                               | **描述**                                                                                                                            | **取值样例** |
   |:---|:---|:---|
   | yarn.nodemanager.resource.cpu-vcores | 设置当前节点上NodeManager可使用的虚拟CPU核数。 建议按节点实际逻辑核数的1.5到2倍配置。 取值范围：大于0             | 8        |
   | yarn.nodemanager.resource.memory-mb  | 设置当前节点上NodeManager可使用的物理内存大小。 建议按节点实际物理内存大小的75%配置。 取值范围：1\~1800000000000 | 16384    |
      
   
   
5. 如果需要配置单个Container的最大CPU核数或最大内存，可参考该步骤操作。如果不需要配置则跳过该步骤。 
   1. 选择"集群 \> 服务 \> Yarn \> 配置 \> 全部配置"。
   
   2. 搜索并根据实际需要修改相关参数。
      表2参数解释 
      | **参数**                                   | **描述**                                                                                                                             | **取值样例** |
      |:---|:---|:---|
      | yarn.scheduler.maximum-allocation-vcores | ResourceManager中每个container请求的最大分配值，用虚拟CPU核数表示。 高于该值的请求将不生效，且将覆写为该值。                                 | 512      |
      | yarn.scheduler.maximum-allocation-mb     | ResourceManager中每个container请求分配的最大内存。 如果请求的内存量很多，将分配该参数设置的内存量。 单位：MB。 | 524288   |
         
      
   
   3. 修改完成后保存配置，重启Yarn服务。无需执行[6]。
   
   
   
   
6. 修改完成后保存，重启NodeManager角色实例。
 
