HBASE分布式安装
由于我们安装的hbase是基于hdfs存储的,所以需要考虑hadoop兼容性,前期hadoop采用的是2.6.5版本,所以只能安装hbase 1.2.x版(可以参考官方文档)。
在安装hbase之前确保环境已经安装好jdk1.8、hadoop2.6.5、zookeeper.
一、概述
这次安装我们用到了4个节点,分别为node1、node2、node3、node4(主机名的配置可以参考:https://blog.csdn.net/luckyzsion/article/details/97782821),node1为主节点,node4为备份主节点(主节点挂了,自动变成主节点),node2、node3、node4为从节点。
二、配置
1、设置时间同步,保证各节点时间一致(参考:https://blog.csdn.net/luckyzsion/article/details/86735904)
2、秘钥分发:(保证node1可以自动登录node2、node3、node4;node4可以自动登录node2、node3、node1,)
这里举例node1秘钥分发到其他节点,node4类似。
在node1上,
cd ~/.ssh 打开.ssh目录
ssh-****** -t dsa -P '' -f ~/.ssh/id_dsa 产生公钥
scp id_dsa.pub node2:`pwd`/node1.pub 分发到node2
scp id_dsa.pub node3:`pwd`/node1.pub 分发到node3
scp id_dsa.pub node4:`pwd`/node1.pub 分发到node4
在node2--4上,
cd ~/.ssh 打开.ssh目录
cat ~/node1.pub >> ~/.ssh/authorized_keys 追加到认证文件里
3、hbase下载:http://archive.apache.org/dist/hbase/1.2.6/
4、解压: tar -xzvf hbase-1.2.6-bin.tar.gz
5、把解压的文件夹重命名为hbase ,看个人
6、hbase-env.sh配置
export JAVA_HOME=xxxx
export HBASE_MANAGES_ZK=false
注释掉以下两行
#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"
7、hbase-site.xml配置
<property>
<name>hbase.rootdir</name>
<value>hdfs://mycluster/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>node2,node3,node4</value>
</property>
说明:hbase.rootdir根据hadoop hdfs-site.xml配置dfs.nameservices配置值设置
8、regionservers配置,一行一个节点
node2
node3
node4
9、backup-masters配置
node4
10、拷贝hadoop配置文件hdfs-site.xml到hbase配置目录下
11、配置habase到环境变量
vi /etc/profile
加入export HBASE_HOME=/data/software/hbase
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HBASE_HOME/bin
source /etc/profile
12、启动hbase
先启动hdfs start-dfs.sh
启动zookeeper集群 各几点运行zkServer.sh start
启动hbase start-hbase.sh
打开管理页面 http://node1:16010
13、其他
杀死node1主进程,自动切换node4,再使用hbase-daemon.sh start master启动node1主节点