
# ALM-14021 NameNode RPC处理平均时间超过阈值
#### 告警解释
系统每30秒周期性检测NameNode的RPC处理平均时间，并把实际的NameNode的RPC处理平均时间和阈值相比较。当检测到NameNode的RPC处理平均时间连续多次（默认为10次）超出阈值范围时，产生该告警。
用户可通过"运维 \> 告警 \> 阈值设置 \> HDFS"修改阈值。
如果平滑次数为1，NameNode的RPC处理平均时间小于或等于阈值时，告警恢复；如果平滑次数大于1，NameNode的RPC处理平均时间小于或等于阈值的90%时，告警恢复。
#### 告警属性
| 告警ID  | 告警级别                                                     | 是否自动清除 |
|:---|:---|:---|
| 14021 | 紧急（默认阈值为200ms） 重要（默认阈值为100ms） | 是      |
   
#### 告警参数
| 参数名称              | 参数含义                  |
|:---|:---|
| 来源                | 产生告警的集群名称。            |
| 服务名               | 产生告警的服务名称。            |
| 角色名               | 产生告警的角色名称。            |
| 主机名               | 产生告警的主机名。             |
| NameService名      | 产生告警的NameService名称。   |
| Trigger condition | 系统当前指标取值满足自定义的告警设置条件。 |
   
#### 对系统的影响
NameNode无法及时处理来自HDFS客户端、依赖于HDFS的上层服务、DataNode等的RPC请求，表现为访问HDFS服务的业务运行缓慢，严重时会导致HDFS服务不可用。
#### 可能原因
- NameNode节点的CPU性能不足，导致NameNode无法及时处理消息。
- NameNode所设置的内存太小，频繁Full GC造成JVM卡顿。
- NameNode配置参数不合理，导致NameNode无法充分利用机器性能。
 
#### 处理步骤
**获取该告警的信息。**
1. 在FusionInsight Manager首页，选择"运维 \> 告警 \> 告警"，在告警列表中找到该告警。
2. 单击该告警，查看下面的告警详情。从"定位信息"中的"主机名"信息可知发出该告警的NameNode节点主机名；从"定位信息"中的NameServiceName信息可知发出该告警的NameService名称。
**查看阈值是否设置过低。**
3. 查看依赖于HDFS的业务的运行状态是否正常运行。查看是否存在运行慢、执行任务超时的情况。 
   - 是，执行[步骤 8]
   
   - 否，执行[步骤 4]
   
   
   
   
4. 在FusionInsight Manager首页，选择"集群 \> 服务 \> HDFS"，单击图表区域右上角的下拉菜单，选择"定制 \> RPC"，在弹出的对话框中选择"主NameNode RPC处理平均时间"，单击"确定"。
   
   图1主NameNode RPC处理平均时间   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001210006607.png "点击放大")
   
   
5. 查看"主NameNode RPC处理平均时间"监控中，获取发出告警的NameService的当前的监控值。
6. 在FusionInsight Manager首页，选择"运维 \> 告警 \> 阈值设置 \> HDFS"，找到"主NameNode RPC处理平均时间"，单击default规则中"操作"栏中的"修改"，修改"阈值"为告警出现前后1天内监控值的峰值的150%。单击"确定"，保存新阈值。 
   图2修改阈值   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001164789440.png "点击放大")
   
   
7. 等待5分钟，查看该告警是否自动消除。 
   - 是，处理结束。
   
   - 否，执行[步骤 8]
   
   
   
   
**查看NameNode节点的CPU性能是否不足。**
8. 在FusionInsight Manager首页，选择"运维 \> 告警 \> 告警"，查看是否有该NameNode节点的ID为"12016""ALM-12016 CPU使用率超过阈值"告警。
   
   - 是，执行[步骤 9]
   
   - 否，[步骤 11]
   
   
   
   
9. 按照[ALM-12016 CPU使用率超过阈值](https://support.huaweicloud.com/usermanual-mrs/ALM-12016.html)告警处理文档，处理该告警。
10. 处理完12016告警后，等待10分钟，查看该告警是否自动消除。 
    - 是，处理结束。
    
    - 否，执行[步骤 11]
    
    
    
    
**查看NameNode节点的内存是否设置过小。**
11. 在FusionInsight Manager首页，选择"运维 \> 告警 \> 告警"，查看是否有该NameNode节点的ID为"14007""ALM-14007 HDFS NameNode堆内存使用率超过阈值"告警。
    
    - 是，执行[步骤 12]
    
    - 否，执行[步骤 14]
    
    
    
    
12. 按照[ALM-14007 NameNode堆内存使用率超过阈值](https://support.huaweicloud.com/usermanual-mrs/ALM-14007.html)告警处理文档，处理该告警。
13. 处理完14007告警后，等待10分钟，查看该告警是否自动消除。 
    - 是，处理结束。
    
    - 否，执行[步骤 14]
    
    
    
    
**查看该NameNode配置参数是否合理。**
14. 在FusionInsight Manager首页，选择"集群 \> *待操作集群的名称* \> 服务 \> HDFS \> 配置"，搜索配置项"dfs.namenode.handler.count"，查看其值。如果值小于或等于128，则设置为128；如果大于128但小于192，则设置为192。
15. 搜索配置项"ipc.server.read.threadpool.size"，查看其值。如果值小于5，则设置为5。
16. 单击"保存"，单击"确定"。
17. 在HDFS的"实例"页面，先勾选发出该告警的NameService的备NameNode，在"更多"中单击"重启实例"，输入密码后单击"确定"，等待备NameNode启动完毕。 
    ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/note_3.0-zh-cn.png)
    重启备NameNode期间业务不受影响。
    
    
18. 在HDFS的"实例"页面，先勾选发出该告警的NameService的主NameNode，在"更多"中单击"重启实例"，输入密码后单击"确定"，等待主NameNode启动完毕。
19. 等待1小时，查看该告警是否自动消除。 
    - 是，处理结束。
    
    - 否，执行[步骤 20]
    
    
    
    
**收集故障信息。**
20. 在FusionInsight Manager首页，选择"运维 \> 日志 \> 下载"。
21. 在"服务"中勾选待操作集群的如下节点信息。 
    - HDFS
    
    
    
    
22. 单击右上角的![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0263895589.png)设置日志收集的"开始时间"和"结束时间"分别为告警产生时间的前后10分钟，单击"下载"。
23. 请联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
无。
