Hbase搭建-基于hadoop3
habse搭建在下面。。上面写有一些我遇到的很烦躁的错误,捣鼓了两天!!!
**别用hadoop3**
经过几天的奋战,开始用的hadoop3.2.0,hbase-2.2.0,
Hmaster启动后几秒后被杀死,当hbase shell后输入命令会
报错 hbase error: KeeperErrorCode = NoNode for /hbase/master
后来hadoop改成3.1.5 一样的错误 ,hbase-2.1.5还是一样的错误
又用hadoop-2.8.5 一样的错误
最后改成了hadoop-2.7.7 hbase-2.1.5完全解决!!!!!!!!!!
1-首先下载Hbase官网下载,
点击here
咱们下载的是bin
下载后上传到hadoop,解压,提取,我这里用的是图形界面,命令行下自行提取。上传可以用sftp或者MobaXterm,MobaXterm里面也是用的sftp。
2-修改三个配置文件,配置文件都是在conf下
2-2-修改Hbase.env.sh
添加jdk路径,把
export HBASE_MANAGES_ZK=true 去掉#号改成false或者在最近追加一行
意思是不用Hbase自带的zookeeper,下面会配置zookeeper(因为我配置好了,zookeeper安装配置可以看我zookeeper博客,(暂时还没写))
2-3-修改hbase-site.xml
<configuration>
<property>
<name>hbase.tmp.dir</name>
<value>/usr/local/hbase-2.2.0/data/tmp</value>
</property>
<!-- 指定hbase在HDFS上存储的路径 -->
<property >
<name>hbase.rootdir</name>
<value>hdfs://chun1:9000/hbase</value>
</property>
<!-- 指定hbase是分布式的 -->
<property >
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zookeeper的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>chun2:2181,chun3:2181,chun5:2181</value>
</property>
</configuration>
2-4-修改regionservers
写上zookeeper 节点名,与下面对应
<!-- 指定zookeeper的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>chun2:2181,chun3:2181,chun5:2181</value>
</property>
我这里是在namenode上配置然后分发到三台datanode上,
chun1 local]# scp -r hbase-2.2.0/ root@chun2:$PWD
chun1 local]# scp -r hbase-2.2.0/ root@chun3:$PWD
chun1 local]# scp -r hbase-2.2.0/ root@chun5:$PWD
配置环境变量,为了在任意位置可以启动Hbase
在chun2添加环境变量,然后把profile分发到chun3,chun5
vi /etc/profile
在最下面添加:
export HBASE_HOME=/usr/local/hbase-2.2.0
export PATH=$PATH:$HBASE_HOME/bin
然后刷新环境变量
source /etc/profile
发送
3-启动Hbase
启动Hbase首先要启动三台zookeeper。zkServer.sh start
zookeeper搭建可以看我另一个博客(暂时没写)留位置。
然后启动三台Hbase. start-hbase.sh
先查看bin下的启动文件
start-hbase.sh,启动hbase服务
Hmaster是hbase启动在的namenode里的
第二个是zookeeper的进程
datanode里是HRegionserver
输入:hbase shell
输入:status和list来测试,如果出现我上面的错误问题 hbase error: KeeperErrorCode = NoNode for /hbase/master 就是hadoop和hbase版本不兼容
更换到hadoop-2.7.7即可