
# ALM-14045 执行ReadBlock操作的平均时间超过阈值
#### 告警解释
系统每30秒周期性检测DataNode的ReadBlock操作的平均时间，当检测到平均时间连续多次（默认20次）超出阈值范围时，产生该告警。
当检测到DataNode的ReadBlock操作的平均时间低于阈值范围时，告警恢复。
本章节仅适用于MRS 3.6.0-LTS.1及之后版本。
#### 告警属性
| 告警ID  | 告警级别                                                                                       | 是否可自动清除 |
|:---|:---|:---|
| 14045 | 次要（默认阈值为5000ms） 重要（默认阈值为10000ms） | 是       |
   
#### 告警参数
| 类别   | 参数名称 | 参数含义                  |
|:---|:---|:---|
| 定位信息 | 来源   | 产生告警的集群名称。            |
| 定位信息 | 服务名  | 产生告警的服务名称。            |
| 定位信息 | 角色名  | 产生告警的角色名称。            |
| 定位信息 | 主机名  | 产生告警的主机名。             |
| 附加信息 | 触发条件 | 系统当前指标取值满足自定义的告警设置条件。 |
   
#### 对系统的影响
从DataNode上读Block变慢，导致依赖于HDFS的读数据的业务运行变慢。
#### 可能原因
- 告警阈值设置不合理。
- DataNode设置的内存太小，频繁Full GC导致JVM卡顿。
- DataNode所在节点的磁盘慢。
- DataNode所在操作系统写磁盘慢。
- 客户端和DataNode之间的网络存在问题。
 
#### 处理步骤
**查看告警阈值是否设置过低。**
1. 登录MRS集群Manager页面，选择"运维 \> 告警 \> 告警"，查看该告警的详细信息，查看"主机名"获取发出该告警的DataNode节点主机名。
2. 确认依赖于HDFS的业务的运行状态是否正常，查看是否存在运行慢、执行任务超时的情况。 
   - 是，执行[步骤 6]。
   
   - 否，执行[步骤 3]。
   
   
   
   
3. 在Manager界面，选择"集群 \> 服务 \> HDFS \> 实例"，单击[步骤 1]获取到的主机名对应的DataNode角色名称，选择"图表 \> 操作"，查看"DataNode操作时间"监控，获取告警出现前后1天内监控数据的峰值。
4. 选择"运维 \> 告警 \> 阈值设置 \> *待操作集群的名称* \> HDFS"，查找并单击"ReadBlock操作的平均时间"，单击default规则中"操作"栏中的"修改"，修改"阈值"为告警出现前后1天内监控值的峰值的150%，单击"确定"，保存新阈值。
5. 等待5分钟，查看该告警是否自动消除。 
   - 是，处理结束。
   
   - 否，执行[步骤 6]。
   
   
   
   
**查看DataNode设置的内存是否合理。**
6. 在Manager界面，选择"运维 \> 告警 \> 告警"，查看是否有"ALM-14015 垃圾回收时间统计"告警，且产生的主机与[步骤 1]获取的一致。
   
   - 是，执行[步骤 7]。
   
   - 否，执行[步骤 9]。
   
   
   
   
7. 单击对应告警所在行的"查看帮助"并按照帮助文档进行处理。
8. 处理完14015告警后，等待10分钟，查看该告警是否自动消除。 
   - 是，处理结束。
   
   - 否，执行[步骤 9]。
   
   
   
   
**检查是否DataNode所在节点的磁盘慢。**
9. 在Manager界面，选择"运维 \> 告警 \> 告警"，查看是否有"ALM-12180 磁盘卡IO"、"ALM-12191 磁盘IO利用率超过阈值"、"ALM-12204 磁盘IO读取等待时长超过阈值"、"ALM-12205 磁盘IO写入等待时长超过阈值"告警，且产生的主机与[步骤 1]获取的一致。
   
   - 是，执行[步骤 10]。
   
   - 否，执行[步骤 12]。
   
   
   
   
10. 单击告警所在行的"查看帮助"并按照帮助文档进行处理。
11. 处理完成后，等待10分钟，查看该告警是否自动消除。 
    - 是，处理结束。
    
    - 否，执行[步骤 12]。
    
    
    
    
**检查是否DataNode所在操作系统写磁盘慢。**
12. 在Manager界面，选择"集群 \> 服务 \> HDFS \> 实例"，单击[步骤 1]获取到的主机名对应的DataNode角色名称，选择"图表 \>性能"。查看"每秒出现慢IO的次数"、"每秒出现慢WriteDataToDisk的次数"、"每秒出现慢Flush或Sync的次数"监控。查看是否在出现告警的这段时间指标出现明显异常。
    
    - 是，联系运维人员检查磁盘性能。
    
    - 否，执行[步骤 14]。
    
    
    
    
13. 等待5分钟，查看该告警是否自动消除。 
    - 是，处理结束。
    
    - 否，执行[步骤 14]。
    
    
    
    
**检查是否客户端和DataNode之间的网络慢。**
14. 在Manager界面，选择"集群 \> 服务 \> HDFS \> 实例"，单击[步骤 1]获取到的主机名对应的DataNode角色名称，选择"图表 \>性能"。查看"每秒出现慢WritePacketToDownStream的次数"监控。是否在出现告警的这段时间指标出现明显异常。
    
    - 是，联系运维人员处理网络问题。
    
    - 否，执行[步骤 16]。
    
    
    
    
15. 等待5分钟，查看该告警是否自动消除。 
    - 是，处理结束。
    
    - 否，执行[步骤 16]。
    
    
    
    
**收集故障信息。**
16. 在MRS Manager首页，选择"运维 \> 日志 \> 下载"。
17. 在"服务"中勾选待操作集群的HDFS节点信息，单击"确定"。
18. 单击右上角的编辑按钮设置日志收集的"开始时间"和"结束时间"分别为告警产生时间的前后10分钟，单击"下载"。
19. 请联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
不涉及。
