zookeeper报错:Unable to start failover controller. Parent znode does not exist. Run with -formatZK fla

报错原因:我在做phoenix upsert 操作时,误操作,删除了来源表hbase的底层hdfs的数据,导致正在执行的phoenix任务挂掉,整个集群挂掉(由于hdfs的挂掉,导致的集群挂掉),如图:

zookeeper报错:Unable to start failover controller. Parent znode does not exist. Run with -formatZK fla


这里Failover Controller挂掉,看日志,发现是zookeeper一直无法正常启动,报错如下:

zookeeper报错:Unable to start failover controller. Parent znode does not exist. Run with -formatZK fla



解决:格式化zookeeper


hdfs zkfc -formatZK


分析:由于误删除了底层文件,导致正在被操作的hbase表发生变化,但是zookeeper已经记录了一部分元数据,最终导致zookeeper原数据异常,无法正常启动!