1 预先配置
- hadoop2.7.5完全分布式搭建完成
- zookeeper3.5.5 完全分布式搭建完成
- JDK 1.8
- 需要安装的HBase版本为hbase 2.0.5 附官网链接:http://mirror.bit.edu.cn/apache/hbase/2.0.5/hbase-2.0.5-bin.tar.gz 注意:我后悔了,版本不能用2.0.5;虽然Hbase2.0以后的版本,Hbase和Hadoop兼容,也都可以正常使用。但是不能与HIVE整合;Hbase与hive的版本兼容如下:(这是官网的解释)
意思是:Hive 1.x将与HBase 0.98.x及更低版本保持兼容。Hive 2.x将与HBase 1.x及更高版本兼容。希望使用Hive 1.x使用HBase 1.x的消费者需要自己编译Hive 1.x流代码。
最后这句需要自己创建流代码是因为hive1.x 与Hbase 1.x 的handler不兼容,需要自己编译handler。
注意 HBase有严格的版本控制
HBase与Hadoop版本控制
Hbase与JDK版本控制
在配Hadoop完全分布式时改的etc/hosts文件 (涂改的地方是IP,三个节点的IP)
开始搭建
下载Hbase解压
tar -zxvf hbase-2.0.5-bin.tar.gz
修改配置文件
修改hbase-env.sh 内容添加如下:
export JAVA_HOME=/usr/java/jdk8
export HBASE_MANAGES_ZK=false
HBASE_MANAGES_ZK=false 的意思是禁用Hbase自带的Zookeeper
修改hbase-site.xml 如下:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,slave1,slave2</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/usr/local/apache-zookeeper-3.5.5-bin/data</value>
</property>
</configuration>
hbase.rootdir:HDFS文件系统路径。区域服务器共享的目录以及HBase持久存在的目录。
hbase.cluster.distributed:默认是false意思是独立模式,设置成true表示分布式
hbase.zookeeper.quorum:逗号分隔的ZooKeeper集合中的服务器列表
hbase.zookeeper.property.dataDir:ZooKeeper的配置zoo.cfg的属性,配置成zookeeper下的data目录
还有很多优化配置查阅官网:http://abloz.com/hbase/book.html#distributed
修改regionservers
master
slave1
slave2
在$HBASE_HOME/conf中建立$HADOOP_HOME/etc/hadoop/hdfs-site.xml的软连接;
在$HBASE_HOME/conf中建立$HADOOP_HOME/etc/hadoop/core-site.xml的软连接;
也可以将这两个文件复制到$HBASE_HOME/conf;
最好是建立软连接;
完成以上配置就可以启动HBase: start-hbase.sh
在浏览器访问如下:
完成!!!!