我有一个单服务器 HBase 集群,仅将其用作 HBase 复制的接收端。因此,我不想复制此集群中的任何块(因为源已复制块,所以我觉得不需要它)。
我想禁用此实例的“复制块不足”警报。我尝试了两种方法:
- 将此实例的复制因子设置为 1
- 将阈值设置为不可能的数量(即复制块下的 200%)。这确实会停止警报,但会将其替换为无效配置警报。
有人知道如何关闭集群的这个特定警报吗?
答案1
请遵循以下两个步骤:
1) 从 Hadoop 文件系统更改复制因子。确保登录到您遇到复制块不足健康问题的用户:
su - hdfs
hadoop fs -setrep -R 1 /
或者
su - oozie
hadoop fs -setrep -R 1 /
ETC...
2) 从 Cloudera Manager 更改“复制不足的块监控阈值”的警告和临界值。对于 CDH 5.0.0,转到:
CM 主页 > HDFS > 配置 > 服务范围 > 监控 > 复制不足块监控阈值
在CDH 5.0.0中,标准链接为:
http://localhost:7180/cmf/services/17/config?groupParent=config.HDFS.service_17&q=%22Under-replicated+Block+Monitoring+Thresholds%22
答案2
根据我的经验,数据节点和名称节点之间的连接不良会导致块复制不足的问题。您可能在与名称节点相同的主机上有一个数据节点,并且它报告 hdfs 正常,但是块复制不足,因为其他节点不与名称节点通信,因此只有一个节点处于活动状态且未进行复制。在尝试使用其他修复程序掩盖症状之前,请检查所有数据节点的 hdfs 日志以检查这一点。