1.出现状况
安装hadoop和hbase之后不能启动datanode,同时浏览器也不能访问hbase,在浏览器中输入localhost:16010显示web页面无效,在hbase shell 下不能正常的使用hbase下面的shell命令,导致不能建表等问题。
2.分析原因
因为我门在配置hadoop过程中,因为多次格式化namenode所致,导致namenode的namespaceID和datanode下的namespaceID不一致造成。
当我们执行文件系统格式化时,会在namenode数据文件夹(本地系统的路径dfs/name)中保存一个current/VERSION文件,记录namespaceID,标识了所格式化的 namenode的版本。如果我们频繁的格式化namenode,那么datanode中保存(本地系统的路径中dfs/data)的current/VERSION文件只是你第一次格式化时保存的namenode的ID,因此就会造成datanode与namenode之间的id不一致。
3.解决办法
把配置文件中usr/local/hadoop/dfs/data在本地系统的路径下的current/VERSION中的namespaceID改为与namenode一样。
---------------------------------------------------------------------------
以上是我参考相应资料所知
4.我的解决办法
由于在我的电脑上上诉办法不可以,我在data/current/VERSION中没有namespaceID,但是另外一个文件夹里面有VERSION,有namespaceID,但是修改后无效。最后更改了data/current/VERSION目录中的clusterID改成了name/current/VERSION目录中的clusterID。问题解决,可以金web页面,有datanode,能在habase shell中建表。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200508235847772.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200508235941514.png)