HBase无法正常运行揪出的一连串的问题

3 篇文章 0 订阅
1 篇文章 0 订阅

记录一下这两天活活把我弄死的几个问题。
首先,我仅仅是想在单机模式下练习一下HBase的shell命令。按照manual的一步一步,才进行到第二步,就是试验一下create命令,结果发现命令输进去以后,终端就卡在那儿了,一动不动。我ctrl+z退出shell,想停掉HBase服务,然后就点点点点一直在打点,停不下来,只好kill掉。我以为是配置的问题,或者是JDK的问题,然后重装,各种搞死我,最后也没弄成。
然后,我想到前几天一个哥们儿用VMware已经给我配好了一个三台虚拟机的全分布机群,我想干脆就用那个吧。于是打开以后,还是老问题。不过两者原因肯定不同,因为单机的HBase是建立在file的基础上,而这个是建立在hdfs的基础上。我在各个机子上jps一下,发现有一个机子的regionserver起不来。原因不是他配错了就是我误删了什么东西,后者的概率比较大( >。<)。  于是我突然想到,既然一个能起来,另一个起不来,我把起不来的虚拟机删掉,把能起来的机器再复制一份不就好了?事实证明是我大脑抽住了,其实只要把HBase复制一份不就好了嘛!!。。。又花了我若干时间复制机器。。。结果辛辛苦苦的复制完,改hostname改ip重启若干遍。结果不知怎么回事,namenode跑不起来,我想想,应该是要格式化一下hdfs的吧?结果我把temp下面的文件删掉(就错在这里!!)然后分别运行格式化的命令,结果不但namenode跑不起来,jobtracker也跑不起来了!……于是在反复格式化和各种纠结之间,我选择了google。在得到了若干错误答案浪费了若干时间后,我发现这些解决方案都有共同点就是看log。。。(我太弱了,一想到读log就脑子疼。。)然后把其中一台namenode的log删掉,重新启动机群再关闭,得到了一次运行的log,发现有一个错误,大意是找不到temp下面的name文件夹,就是配置中dfs.name.dir配置的那个文件夹……我好弱,不小心把那个文件夹删掉了。。。重新建立,再来一次,还是跑不起来!!!……再去删log,启动关闭,分析log,又发现一个错误Invalid directory in dfs.data.dir: Incorrect permission for /data/hadoop/disk, expected: rwxr-xr-x, while actual: rwxrwxr--。。。再网上一查。还真有跟我错误一样的,再下面这个网址

http://gghandsome.blog.51cto.com/398804/822983


fs.data.dir参数设置的目录权限必需为755,要不启动datanode节点启动就会因为权限检测错误而自动关闭。
这就是原因了……于是改了权限,就能跑起来了,继而HBase也能在HDFS上跑起来,问题就这样暂时解决了。
说暂时,就是因为我还没有研究那个单机模式的HBase为什么跑不起来。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值