报错ERROR: KeeperErrorCode = NoNode for /hbase/master
原因分析
修改了hbase的配置文件hbase-site.xml伪分布式环境,会导致文件的不完整,hadoop上文件与本地文件不一致,所以进入hbase时list搜索不到之前的一整个文件。简而言之,之前时分布式存储的,3个机器,1个存储1块构成完整的文件,现去掉2个,再次查询时就会报错。
解决方案
1.退出hbase shell
hbase:002:0> exit
2. 退出hbase
[root@node1 hbase-2.4.13]# stop-hbase.sh
3. 退出hadoop
[root@node1 hbase-2.4.13]# stop-all.sh
4. 查看进程
[root@node1 hbase-2.4.13]# jps
5. 重启hadoop
[root@node1 hbase-2.4.13]# start-all.sh
6. 进入hadoop文件路径
[root@node1 hbase-2.4.13]# cd /usr/local/hadoop-3.3.0
7. 查看hadoop根目录
[root@node1 hadoop-3.3.0]# hadoop fs -ls /
8. 关闭Hadoop安全模式
[root@node1 hadoop-3.3.0]# hdfs dfsadmin -safemode leave
9. 删除hbase
[root@node1 hadoop-3.3.0]# hadoop fs -rm -r /hbase
10.再次查看目录
[root@node1 hadoop-3.3.0]# hadoop fs -ls
11.启动hbase
[root@node1 hadoop-3.3.0]# start-hbase.sh
12.进入shell命令行
[root@node1 hadoop-3.3.0]# hbase shell
13. 查看表
hbase:001:0> list