Hbase 集群部署
1、部署说明
1.1、Java 版本
集群安装的jdk 版本是
[hui@hadoop201 ~]$ chkall.sh echo $JAVA_HOME
-----------hadoop201---------------
/opt/module/jdk1.8
-----------hadoop202---------------
/opt/module/jdk1.8
-----------hadoop203---------------
/opt/module/jdk1.8
官网关于jdk 与 hbase 版本的说明
官网地址
https://hbase.apache.org/book.html#java
1.2、Hadoop 版本
查看集群环境
[hui@hadoop201 ~]$ chkall.sh echo $HADOOP_HOME
-----------hadoop201---------------
/opt/module/hadoop-3.1.3
-----------hadoop202---------------
/opt/module/hadoop-3.1.3
-----------hadoop203---------------
/opt/module/hadoop-3.1.3
本次安装的hbase 版本是 hbase-2.0.5
1.3、zookeeper
hbase 本身依赖于 zk 进行协调服务,所以安装hbase 之前需要先将 zk 进行安装,可以参考
https://www.cnblogs.com/wdh01/p/13934436.html
2、Hbase 安装
2.1、解压安装
[hui@hadoop201 software]$ tar -axvf hbase-2.0.5-bin.tar.gz -C /opt/module/
[hui@hadoop201 module]$ mv hbase-2.0.5-bin hbase-2.0.5
2.2、配置
环境变量
[hui@hadoop201 hbase-2.0.5]$ sudo vim /etc/profile.d/my_env.sh #HBASE_HOME export HBASE_HOME=/opt/module/hbase-2.0.5 export PATH=$PATH:$HBASE_HOME/bin
hbase-env.sh
hui@hadoop201 conf]$ pwd /opt/module/hbase-2.0.5/conf [hui@hadoop201 conf]$ vim hbase-env.sh export JAVA_HOME=/opt/module/jdk1.8 export HBASE_CLASSPATH=/opt/module/hadoop-3.1.3/etc/hadoop/ #日志存放路径 export HBASE_LOG_DIR=/opt/module/hbase-2.0.5/logs #不使用hbase内置的xk管理hbase,使用自己安装的zk export HBASE_MANAGES_ZK=false
hbase-site.xml
<property> <name>hbase.rootdir</name> <value>hdfs://hadoop201:8020/hbase</value> <description> hdfs 存储路径</description> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> <description> 集群模式部署</description> </property> <property> <name>hbase.zookeeper.quorum</name> <value>hadoop201,hadoop202,hadoop203</value> <description> ZK 节点</description> </property> <property> <name>hbase.master.maxclockskew</name> <value>180000</value> <description> regionserver与master的时间差</description> </property>
regionservers 集群节点
[hui@hadoop103 conf]$ cat regionservers
hadoop201
hadoop202
hadoop203
2.3、分发
[hui@hadoop201 module]$ pwd
/opt/module
[hui@hadoop201 module]$ sxync.sh hbase-2.0.5/
[hui@hadoop201 ~]$ /home/hui/bin/sxync.sh /etc/profile.d/my_env.sh
环境变量生效
[hui@hadoop201 ~]$ chkall.sh source /etc/profile
2.4、启动
注意先启动zk 和 hdfs
[hui@hadoop201 ~]$ zk.sh start ---------- zookeeper hadoop201 启动 ------------ ZooKeeper JMX enabled by default Using config: /opt/module/zookeeper-3.5.7/bin/../conf/zoo.cfg Starting zookeeper ... STARTED ---------- zookeeper hadoop202 启动 ------------ ZooKeeper JMX enabled by default Using config: /opt/module/zookeeper-3.5.7/bin/../conf/zoo.cfg Starting zookeeper ... STARTED ---------- zookeeper hadoop203 启动 ------------ ZooKeeper JMX enabled by default Using config: /opt/module/zookeeper-3.5.7/bin/../conf/zoo.cfg Starting zookeeper ... STARTED [hui@hadoop201 ~]$ start-dfs.sh Starting namenodes on [hadoop201] Starting datanodes Starting secondary namenodes [hadoop203] [hui@hadoop201 ~]$ jps.sh -----------hadoop201--------------- 2145 NameNode 2581 Jps 1916 QuorumPeerMain 2301 DataNode -----------hadoop202--------------- 1994 DataNode 1869 QuorumPeerMain 2063 Jps -----------hadoop203--------------- 2132 SecondaryNameNode 2182 Jps 1864 QuorumPeerMain 1997 DataNode
最后启动 hbase
[hui@hadoop201 ~]$ cd /opt/module/hbase-2.0.5/ [hui@hadoop201 hbase-2.0.5]$ bin/start-hbase.sh running master, logging to /opt/module/hbase-2.0.5/logs/hbase-hui-master-hadoop201.out hadoop201: running regionserver, logging to /opt/module/hbase-2.0.5/logs/hbase-hui-regionserver-hadoop201.out hadoop202: running regionserver, logging to /opt/module/hbase-2.0.5/logs/hbase-hui-regionserver-hadoop202.out hadoop203: running regionserver, logging to /opt/module/hbase-2.0.5/logs/hbase-hui-regionserver-hadoop203.out hadoop202: running master, logging to /opt/module/hbase-2.0.5/logs/hbase-hui-master-hadoop202.out
2.5、master 高可用
默认情况下 hbase 有一个master,但是可以通过配置进行配置多个master 在conf 下 创建 backup-masters 文件,输入一个节点名称作为第二个master即可
hui@hadoop201 conf]$ less backup-masters
hadoop202
[hui@hadoop201 conf]$ pwd
/opt/module/hbase-2.0.5/conf
hui@hadoop201 conf]$ sxync.sh backup-masters
重启后高可用生效