我们开发的hdp集群停电,损坏了acumulo使用的一些hdfs系统块,现在集群处于安全模式,ambari不会重新启动。
作为一个dev box,hdfs的复制因子是1,所以我无法恢复损坏的块。
重建accumulo以干净地恢复hdfs文件系统并恢复hdp集群的最佳方法是什么?accumulo中没有要保存的用户数据,因此在这种情况下,擦除并重新初始化就可以了。只是不知道最好的方法。
一些腐败细节: hdfs fsck / | egrep -v '^\.+$' | grep -v replica | grep -v Replica| grep "^\/" | grep "CORRUPT" | sed 's/: CORRUPT.*//' | grep -v "^$"
输出为:
Connecting to namenode via http://xyz.fakedomain.com:50070/fsck?ugi=andrew&path=%2F
/apps/accumulo/data/tables/!0/table_info/A000133q.rf
/apps/accumulo/data/tables/+r/root_tablet/A000133t.rf
/apps/accumulo/data/tables/1/default_tablet/F000133r.rf
/user/accumulo/.Trash/Current/apps/accumulo/data/tables/+r/root_tablet/delete+A000133t.rf+F000133s.rf
群集详细信息包括:
Hortonworks HDP-2.4.0.0-169
Accumulo 1.7.0.2.4
YARN 2.7.1.2.4
1条答案
按热度按时间nnsrf1az1#
首先用以下方法找出坏块:
然后删除相关块中的文件,并使用以下命令删除:
作为hdfs用户,请运行以下命令:
从ambari重新启动accumulo以初始化或运行:
然后从