环境:
CDH集群
问题描述:
Cloudera Manager 监控HDFS爆红
Canary 测试无法为 /tmp/.cloudera_health_monitoring_canary_files 创建父目录
Missing blocks
Currupt blocks
解决方案:
以上问题描述都是hdfs丢失块或者块损坏造成,当hdfs丢失块时,hdfs会进去安全模式,只能进行查询操作,不能进行修改操作,Canary测试自然无法创建父目录。
块丢失的话,如果数据不是很重要,就可以删除相关数据,消除报警。
1、首先关闭hdfs安全模式,相关命令如下:
hdfs dfsadmin -safemode get 获取安全模式的状态
hdfs dfsadmin -safemode leave 强行关闭安全模式
2、查看丢失的块,相关命令如下:
hdfs fsck / 查看丢失的块以及损坏的块
3、删除相关的数据
hdfs fsck -delete {block}
如果报fsck failed,可以直接删除相关文件
hdfs dfs -rm file
4、重启HDFS服务