hbase.rootdir 指定了HBase存储的根目录是在HDFS的hdfs://master:9000/hbase目录下,该目录要被HBase集群中Region Server共享。不要忘记了,在启动HBase集群之前,在HDFS集群中创建/hbase目录,在master上执行命令hadoop fs -mkdir /hbase即可。
hbase.cluster.distributed 指定了我们使用完全分布的模式进行安装
hbase.zookeeper.property.dataDir 指定了HBase集群使用的ZooKeeper集群的存储目录
hbase.zookeeper.quorum指定了用于协调HBase集群的ZooKeeper集群结点,必须配置奇数个结点,否则HBase集群启动会失败
所以,在启动HBase集群之前,首先要保证ZooKeeper集群已经成功启动。
(4)接下来,检查HBase的lib中的Hadoop的版本是否之前我们启动的HDFS集群使用的版本一致:
rm ~/installation/hbase-0.90.4/lib/hadoop-core-0.20-append-r1056497.jar cp ~/installation/hadoop-0.22.0/*.jar ~/installation/hbase-0.90.4/lib/
我直接将HBase解压缩包中的hadoop的jar文件删除,用当前使用版本的Hadoop的jar文件。这一步很重要,如果不细看官方文档,你可能会感觉很怪异,实际HBase软件包中lib下的Hadoop的版本默认是0.20的,如果你启动的HDFS使用的是0.22,则HBase启动会报版本不一致的错误。(5)修改conf/regionservers文件,配置HBase集群中的从结点Region Server,如下所示:
slave-01 slave-02 slave-03
一行一个主机字符串,上面使用是从结点主机的域名。上面配置,与HDFS的从结点的配置非常类似。(6)经过上面几个骤,基本已经在一台机器上(master)配置好HBase了,这时,需要将上述的全部环境变量配置,也在各个从结点上进行配置,然后将配置好的HBase安装文件拷贝分发到各个从结点上:
scp -r ~/installation/hbase-0.90.4 hadoop@slave-01:/home/hadoop/installation scp -r ~/installation/hbase-0.90.4 hadoop@slave-02:/home/hadoop/installation scp -r ~/installation/hbase-0.90.4 hadoop@slave-03:/home/hadoop/installation