约定:
安装目录:/opt目录下
使用版本hbase-1.2.6.tar.gz
下载地址:http://archive.apache.org/dist/hbase
hadoop、zookeeper、java
~~~>分布式安装:
解压 opt]# tar -zxf soft/hbase-1.1.5-bin.tar.gz
重命名 opt]# mv hbase-1.1.5-bin hbase
添加至环境变量 export HBASE_HOME=/opt/hbase
配置 $HBASE_HOME/conf/hbase-env.sh、hbase-site.xml
$HBASE_HOME/conf/hbase-env.sh
export JAVA_HOME=/opt/jdk
export HBASE_MANAGES_ZK=false
注意:若是JDK1.8,需要在脚本文件【hbase-env.sh】注释掉下述两行配置信息:
# Configure PermSize. Only needed in JDK7. You can safely remove it for JDK8+
export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
$HBASE_HOME/conf/hbase-site.xml
<!--保存在hdfs上根目录的名的定制/hbase-->
<property>
<name>hbase.rootdir</name>
<value>hdfs://ns1/hbase</value>
</property>
<!-- 启用分布式集群的配置-->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zookeeper集群-->
<property>
<name>hbase.zookeeper.quorum</name>
<value>LENOVO01,LENOVO02,LENOVO03</value>
</property>
在上述的基础之上,只需要再配置一个conf/regionservers,添加两行内容:
LENOVO02
LENOVO03
拷贝LENOVO01上面的数据到LENOVO02和LENOVO03(注意:为了加快copy的速度,跨机器copy前,可以将 /opt/hbase/docs目录删除掉)
scp -r /opt/hbase root@LENOVO02:/opt
scp -r /opt/hbase root@LENOVO03:/opt
同样在LENOVO02和LENOVO03上面添加相关环境变量
scp /etc/profile.d/bigdata-etc.sh root@LENOVO02:/etc/profile.d/
scp /etc/profile.d/bigdata-etc.sh root@LENOVO03:/etc/profile.d/
让脚本文件中的环境变量立即生效:
source /etc/profile.d/bigdata-etc.sh
注意:
如果已经配置过单机版,需要将hbase在hdfs上面的目录、以及hbase在zk中的目录清除,以免和集群版本操作冲突
只是第一次的时候操作:
zk
rmr /hbase
hdfs
hdfs dfs -rm -R /hbase
启动hbase集群(前提:启动zookeeper~>hadoop集群)
只需要在LENOVO01节点上启动即可
sh $HBASE_HOME/bin/start-hbase.sh
这个时候在LENOVO01机器上面,有一个进程HMaster,在LENOVO02和LENOVO03上面分别有一个HRegionServer