HDFS 运行状况检测

HDFS Canary

这是HDFS 服务范围(service-wide)运行状况(Healthy)检测,检查基本的客户端操作和操作完成是否在合理的时间内;

此测试报告周期运行"canary"测试的结果,按以下顺序操作

  • 创建文件,默认路径/tmp/.cloudera_health_monitoring_canary_timestamp
  • canary测试会往文件里写入一些数据,然后读取这些数据并验证数据准确性
  • 最后,删除创建的文件

如果以上操作有一个失败,检测返回"Bad";
如果操作运行很慢,返回"Concerning";

此运行状况检测有报警,表明集群无法正确或及时响应客户端请求;
检查NameNode的状态和其他服务范围的运行状况检测;
检查canary检测的日志,是写到Service Monitor日志的;
检查NameNode日志,查看关于canary检测发出请求的详细情况;

此检测,可以在HDFS(服务范围)->监控设置里,勾选"HDFS Canary 运行状况检查(HDFS Canary Health Check)"开启或关闭;

简写: HDFS Canary

属性名 描述 模板名 默认值 单位
HDFS Canary Health Check 是否开启运行状况检测 hdfs_canary_health_enabled true

HDFS 损坏块(HDFS Corrupt Blocks)

这是HDFS 服务范围(service-wide)运行状况检测,检查损坏块(corrupt blocks)的数量占集群总数据块的比值是否超过某个值;

HDFS的损坏块,是指块里至少有一个故障的副本和一个可用的副本;所以,损坏块不代表数据不可用,但是标示着不可用的风险增高;

如果块里没有可用的副本,这个块在HDFS里称为丢失块(missing block);
HDFS会在后台自动修复损坏块;

此运行状况检查失败标示着底层存储或DataNode所在的系统可能有问题;

使用HDFS的fsck命令确认是哪个文件包含损坏块;

此检测,可通过HDFS(服务范围)->监控设置里,设置"具备损坏副本的块监控阈值(Blocks With Corrupt Replicas Monitoring Thresholds )";

简写: Corrupt Blocks

属性名 描述 模板名 默认值 单位
Blocks With Corrupt Replicas Monitoring Thresholds 损坏块占总块数的比值 hdfs_blocks_with_corrupt_replicas_thresholds 严重:1.0, 警告:0.5 百分比

HDFS DataNode运行状况(HDFS DataNode Health)

这是HDFS 服务范围(service-wide)运行状况检测,检查集群里是否有足够多的良好运行状况的DataNodes;
如果"良好运行状况"的DataNodes数量占总DataNodes数量的比值,低于警告阈值,检测返回"Concerning";
如果低于严重阈值,检测返回"Bad";

例如,检测配置为警告阈值为95%,严重阈值为90%,集群共有100个DataNodes;如果有95个DataNodes是"良好运行状况"的,检测返回"Good";如果有90个是"良好运行状况",返回"Concerning";如果有10个是"不良运行状况",检测返回"Bad";

此检测有报警,标示着DataNodes是"不良运行状况";要进一步检查每个DataNode的状态;

此检测,可通过HDFS(服务范围)->监控设置里,设置"运行状况 DataNode 监控阈值(Healthy DataNode Monitoring Thresholds)"

简写: DataNode Health

属性名 报警名 模板名 默认值 单位
Healthy DataNode Monitoring Thresholds HDFS_DATA_NODES_HEALTHY hdfs_datanodes_healthy_thresholds 严重:90.0, 警告:95.0 百分比

HDFS Failover Controller 运行状况(HDFS Failover Controllers Health)

这是HDFS 服务范围(service-wide)运行状况检测,检查此服务带有的所有Failover Controller(故障转移控制器)的运行状况;

如果此服务带有的Failover Controller,任一没有运行或运行状况不良,检测返回"Bad";
要检查Failover Controller的日志;

此检测,可通过HDFS(服务范围)->监控设置里,勾选"Failover Controller 运行状况(Failover Controllers Healthy)"开启或关闭;

简写: Failover Controllers Health

属性名 描述 模板名 默认值 单位
Failover Controllers Healthy 是否开启Failover Controller 运行状况检测 failover_controllers_healthy_enabled true

HDFS 可用空间(HDFS Free Space)

这是HDFS 服务范围(service-wide)运行状况检测,检查HDFS集群的可用空间不低于某个百分比;

此检测有报警,标示着容量规划问题,或DataNoes的不可用;如果HDFS元数据更新没完成,也会降低可用空间;

此检测,可通过HDFS(服务范围)->监控设置里,设置"HDFS 可用空间监控阈值(HDFS Free Space Monitoring Thresholds)";

简写: Free Space

属性名 描述 模板名 默认值 单位
HDFS Free Space Monitoring Thresholds 可用空间占HDFS总容量的比值 hdfs_free_space_thresholds 严重:10.0, 警告:20.0 百分比

HDFS 丢失块(HDFS Missing Blocks)

这是HDFS 服务范围(service-wide)运行状况检测,检查丢失块和集群总块数的比值不大于某个值;

丢失块,即是没有可用复本的块;所有副本都丢失和损坏;
可能的原因是: 损坏;DataNodes离线;DataNodes停止使用;

此检测有报警,标示着一次损失了多个DataNodes;
如果集群存储文件的复制因子为1,当DataNode损失或故障时,可能看到丢失块;

使用HDFS fsck命令,确认哪个文件包含丢失块;

此检测,可通过HDFS(服务范围)->监控设置里,设置"丢失块监控阈值(Missing Block Monitoring Thresholds)";

简写: Missing Blocks

属性名 描述 模板名 默认值 单位
Missing Block Monitoring Thresholds 检测丢失块阈值 hdfs_missing_blocks_thresholds 严重:any,警告:never 百分比

HDFS NameNode运行状况(HDFS NameNode Health)

这是HDFS 服务范围(service-wide)运行状况检测,检查NameNode的运行状况;
如果服务运行,但是没有找到活动的NameNode,返回"Bad";
如果找到活动的NameNode,就检测NameNode的运行状况和备用NameNode的运行状况;

如果NameNode和备用NameNode都活动并运行良好,返回"Good";

此检测有报警,标示着NameNode角色停止或运行不良,或者是Cloudera Manager Service Monitor和NameNodes的网络通信有问题;

查看HDFS服务NameNode角色的状态,并查看Cloudera Manager Service Monitor的日志文件;

此检测,可通过HDFS(服务范围)->监控设置里,勾选"活动 NameNode 角色运行状况检查(Active NameNode Role Health Check)“和"备用 NameNode 运行状况检查(Standby NameNode Health Check)”;

额外的,可以设置"活动 NameNode 检测时段(Active NameNode Detection Window)",调整Cloudera Manager Service Monitor在发出告警前,检测活动NameNoe的总时间;

也可设置"NameNode 激活启动容差(NameNode Activation Startup Tolerance)",调整NameNodes启动并标记为活动的总时间;用于自动故障转移程序标识NameNode活动,或让特定的故障转移命令生效;

简写: NameNode Health

属性名 模板名 默认值 单位
Active NameNode Detection Window hdfs_active_namenode_detecton_window 3 分钟
Active NameNode Role Health Check hdfs_namenode_health_enabled true
NameNode Activation Startup Tolerance hdfs_namenode_activation_startup_tolerance 180
Standby NameNode Health Check hdfs_standby_namenodes_health_enabled true

HDFS 副本不足块(HDFS Under-Replicated Blocks)

这是HDFS 服务范围(service-wide)运行状况检测,检查副本不足块和集群总块数的比值不大于某个值;
此检测有报警,标示着DataNode的损失;

使用HDFS fsck命令确认是哪个文件包含了副本不足块;

此检测,可通过HDFS(服务范围)->监控设置里,设置"副本不足的块监控阈值(Under-replicated Block Monitoring Thresholds)";

简写: Under-Replicated Blocks

属性名 模板名 默认值 单位
Under-replicated Block Monitoring Thresholds hdfs_under_replicated_blocks_thresholds 严重:40.0,警告:10.0 百分比

你可能感兴趣的:(CDH,hdfs,运行状况检测)