ALM-45642 RocksDB持续触发写限流
告警解释
系统以用户配置的告警周期(metrics.reporter.alarm.job.alarm.rocksdb.metrics.duration,默认180s)检查作业RocksDB监控数据,如果作业RocksDB持续触发写限流,即作业写RocksDB的速率不为0时则发送告警。当作业写RocksDB的速率为0时,则告警恢复。
作业写RocksDB的速率:参数“rocksdb.actual-delayed-write-rate”的值,“0”表示不限速,其他值表示限速值。
告警属性
| 
        告警ID  | 
      
        告警级别  | 
      
        告警类型  | 
      
        业务类型  | 
      
        是否可自动清除  | 
     
|---|---|---|---|---|
| 
        45642  | 
      
        次要  | 
      
        业务质量告警  | 
      
        Flink  | 
      
        是  | 
     
告警参数
| 
        类别  | 
      
        参数名称  | 
      
        参数含义  | 
     
|---|---|---|
| 
        定位信息  | 
      
        来源  | 
      
        产生告警的集群名称。  | 
     
| 
        服务名  | 
      
        产生告警的服务名称。  | 
     |
| 
        应用名  | 
      
        产生告警的应用名称。  | 
     |
| 
        任务名  | 
      
        产生告警的作业名称。  | 
     |
| 
        用户名  | 
      
        产生告警的用户名称。  | 
     
对系统的影响
Flink作业RocksDB持续触发写限流,主要反应的是Flink作业的CheckPoint的性能,对Flinkserver本身没有影响。
可能原因
Flink作业写RocksDB的速率不为0时触发写限流,导致限流的可能原因:
- MemTable太多引起写限流或写停止,伴随有“ALM-45643 RocksDB的MemTable大小持续超过阈值”的告警。
 - Level0层的SST文件数据太大,伴随有“ALM-45644 RocksDB的Level0层SST文件数持续超过阈值”的告警。
 - 预估Compaction的大小超过阈值,伴随有“ALM-45647 RocksDB的Pending Compaction预估总大小持续超过阈值”的告警。
 
处理步骤
检查是否MemTable太多引起写限流或写停止
- 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”。
 - 在告警列表中,查看是否存在告警“ALM-45643 RocksDB的MemTable大小持续超过阈值”。
 - 参考“ALM-45643 RocksDB的MemTable大小持续超过阈值”章节处理对应的告警。
 - ALM-45643告警全部恢复后,等待几分钟,检查本告警是否恢复。
    
    
- 是,处理完毕。
 - 否,执行5。
 
 
检查是否Level0的SST文件数据太大引起写限流或写停止
- 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”。
 - 在告警列表中,查看是否存在告警“ALM-45644 RocksDB的Level0层SST文件数持续超过阈值”。
 - 参考“ALM-45644 RocksDB的Level0层SST文件数持续超过阈值”章节处理对应的告警。
 - ALM-45644告警全部恢复后,等待几分钟,检查本告警是否恢复。
    
    
- 是,处理完毕。
 - 否,执行9。
 
 
检查是否预估Compaction的大小超过阈值引起写限流或写停止
- 在告警列表中,查看是否存在告警“ALM-45647 RocksDB的Pending Compaction预估总大小持续超过阈值”。
 - 参考“ALM-45647 RocksDB的Pending Compaction预估总大小持续超过阈值”章节处理对应的告警。
 - ALM-45647告警全部恢复后,等待几分钟,检查本告警是否恢复。
    
    
- 是,处理完毕。
 - 否,执行12。
 
 
收集故障信息
- 使用具有FlinkServer管理操作权限的用户登录FusionInsight Manager。
 - 选择“运维 > 告警 > 告警 > ALM-45642 RocksDB持续触发写限流”,检查该告警的“定位信息”,查看并记录告警上报的任务名。
 - 选择“集群 > 服务 > Yarn”,单击“ResourceManager WebUI”后的链接进入Yarn原生页面。
 
- 根据告警“定位信息”中的任务名找到异常任务,查找并记录作业的“application ID”,是否可以在Yarn原生页面上查看到作业日志。
    
    图1 作业的“application ID”
     - 单击失败作业application ID进入作业界面。
    
    
- 单击作业“Logs”列的“Logs”,查看并保存Jobmanager日志。
      图2 单击“Logs”
       - 单击“Attempt ID”列的ID,单击“Logs”列的“Logs”,查看并保存Taskmanager日志。
      图3 单击“Attempt ID”列的ID
      图4 单击“Logs”
      
 
       使用具有FlinkServer管理操作权限的用户登录Manager,选择“集群 > 服务 > Flink”,单击“Flink WebUI”后的链接,单击“作业管理”,在作业的“操作”列选择“更多 > 作业详情”也可查看Taskmanager日志。
 
 - 单击作业“Logs”列的“Logs”,查看并保存Jobmanager日志。
      
 - 查看作业日志进行故障修复,或联系运维人员,并发送已收集的故障日志信息。操作结束。
 
若无法在Yarn页面上查看日志,可通过HDFS下载日志。
告警清除
此告警修复后,系统会自动清除此告警,无需手工清除。
参考信息
不涉及。