
# 配置集群备份恢复性能调优
MRS 3.6.0-LTS.1及之后版本，在使用MRS备份恢复功能时，通常需要根据实际备份数据量对集群进行部分参数调优配置（或其他参数配置修改）。
#### 修改Yarn及BackupPlugin参数配置
1. 登录主集群Manager界面，选择"集群 \> 服务 \> Yarn \> 配置 \> 全部配置"，根据实际需求修改[表1]中Yarn服务对应的参数。
   
   登录集群Manager具体操作，请参考[访问MRS集群Manager](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0128.html)。
    表1Yarn组件调优参数 
   | 参数名称                                      | 默认值      | 参数说明                                                                                                                                                                                                                                                                                                                                                        |
   |:---|:---|:---|
   | mapreduce.task.stuck.timeout-ms           | 1200000  | 接收远程任务的第一个心跳信号的最大超时时间，单位为毫秒。此参数可以用于避免无限期等待容器启动，否则任务将一直处于NEW状态。                                                                                                                                                                                                                                                                                              |
   | mapreduce.task.timeout                    | 600000   | 如果在该参数设置的时间内任务既未读写输入输出信息，也未更新状态字符串，那么该任务将被终止。单位为毫秒。                                                                                                                                                                                                                                                                                                         |
   | yarn.distcp.fs-limits.max-directory-items | 10000000 | 使用DistCp进行HDFS备份时，HDFS的每个任务能够备份的最大文件数。针对Hive库级别备份，如果文件数较多，则需要提前修改此参数。                                                                                                                                                                                                                                                                                       |
   | distcp.copy.attributes                    | -        | 备份到远端HDFS需要拷贝的文件属性，为空表示拷贝全部属性；建议根据实际需要拷贝，属性越多性能影响越大，例如QUOTA和ACL属性对性能影响较大。                                                                                                                                                                                                                                                                                   |
   | distcp.liststatus.threads                 | 20       | DistCp任务启动时计算阶段需要复制文件的线程数。                                                                                                                                                                                                                                                                                                                                  |
   | distcp.pool.size                          | 50       | DistCp任务修改权限以及删除多余文件时的线程数目。                                                                                                                                                                                                                                                                                                                                 |
   | distcp.skip.crc                           | false    | DistCp在任务完成时是否进行CRC校验。                                                                                                                                                                                                                                                                                                                                      |
   | yarn.app.mapreduce.am.resource.mb         | 4096     | DistCp作业的ApplicationMaster的内存限制，单位为MB。如果单个备份的目录文件数较大，需要修改AM内存，具体可参考BackupPlugin备份插件中"backup.xms"、"backup.xmx"修改的内存值。 **需注意** **：**Backup进程是多个备份任务同时扫描的文件数内存大小，而"yarn.app.mapreduce.am.resource.mb"是单个任务扫描的文件数配置所需的内存大小。如果单个任务扫描文件数较多，那么参数都需要修改，如果单个任务扫描文件数不多，但是多个任务加起来较多，那么每个参数需按照各自规格修改。 |
   | mapreduce.reduce.memory.mb                | 4096     | DistCp作业的Reduce任务的内存限制，单位为MB。                                                                                                                                                                                                                                                                                                                               |
      
   
   
2. 单击"保存"保存配置。
3. （如果仅修改了动态生效的参数，请跳过该操作）单击"概览"，在页面右上角选择"更多 \> 重启服务"，输入当前用户密码并单击"确定"重启Yarn服务。
4. 登录主集群的主备OMS节点，切换到**omm** 用户，修改"${BIGDATA_HOME}/om-server/om/etc/om/backupconfig/backup.properties"配置文件，参考[表2]根据实际情况修改"backup.xms"和"backup.xmx"为对应的值，并保持参数值一致，参考值可参见[表3]。
   
    表2修改BackupPlugin参数 
   | 参数名称       | 默认值  | 参数说明                                 |
   |:---|:---|:---|
   | backup.xms | 1024 | 备份管理进程堆内存初始大小，单位为MB，和实际同一时刻扫描的文件数有关。 |
   | backup.xmx | 8192 | 备份管理进程堆内存最大大小，单位为MB，和实际同一时刻扫描的文件数有关。 |
      
    表3"backup.xms"和"backup.xmx"参考值（单位为MB） 
   | 文件对象数量     | "backup.xms"和"backup.xmx"参考值 |
   |:---|:---|
   | 10,000,000 | 12288                        |
   | 20,000,000 | 24576                        |
   | 30,000,000 | 32768                        |
      
   
   
5. 使用**omm** 用户登录主OMS节点，执行以下命令重启主OMS的Controller进程使配置生效：
   
   ```
   sh ${BIGDATA_HOME}/om-server/om/sbin/restart-controller.sh
   ```
   
   
 
