一、部署规划
hadoop高可用集群部署参考: Hadoop3.X分布式高可用集群部署
1.1 版本说明
| 软件 |
版本 |
| 操作系统 |
CentOS Linux release 7.8.2003 (Core) |
| JAVA |
jdk-8u271-linux-x64 |
| Hadoop |
hadoop-3.2.2 |
| Hbase |
hbase-2.3.6 |
1.2 集群规划
| hostname |
IP |
组件 |
|
|
|
|
| master |
172.16.20.200 |
|
NameNode |
|
|
Hbase-HMaster |
| secondmaster |
172.16.20.201 |
|
NameNode |
|
|
Hbase-HMaster |
| slave1 |
172.16.20.202 |
Zookeeper |
|
DataNode |
NodeManage |
Hbase-HRegionServer |
| slave2 |
172.16.20.203 |
Zookeeper |
|
DataNode |
NodeManage |
Hbase-HRegionServer |
| slave3 |
172.16.20.204 |
Zookeeper |
|
DataNode |
NodeManage |
Hbase-HRegionServer |
二、Hbase集群部署
2.1 下载解压
下载地址: https://archive.apache.org/dist/hbase/2.3.6/hbase-2.3.6-bin.tar.gz
1 2
| tar -zxf hbase-2.3.6-bin.tar.gz -C /opt/hadoop/ ln -s /opt/hadoop/hbase-2.3.6 /usr/local/hbase
|
各节点配置环境变量, /etc/profie下加入
1 2 3 4 5 6 7 8
| cat >> /etc/profile << 'EOF'
HBASE_HOME=/usr/local/hbase PATH=$HBASE_HOME/bin:$PATH export PATH HBASE_HOME
EOF source /etc/profile
|
2.2 修改配置
hbase-env.sh
1 2 3 4
| cat > hbase-env.sh << 'EOF' export JAVA_HOME=/usr/java/jdk1.8/jdk1.8.0_271 export HBASE_MANAGES_ZK=false EOF
|
export HBASE_MANAGES_ZK=false #指定不使用hbase自带的zookeeper
hbase-site.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| cat > hbase-site.xml << 'EOF' <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration> <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>slave1:2181,slave2:2181,slave3:2181</value> </property> </configuration> EOF
|
指定访问端口
1 2 3 4
| <property> <name>hbase.master.info.port</name> <value>16010</value> </property>
|
regionservers
1 2 3 4 5 6 7
| cat > regionservers << EOF master secondmaster slave1 slave2 slave3 EOF
|
backup-masters
1 2 3
| cat > backup-masters << EOF secondmaster EOF
|
拷贝hadoop核心配置
1 2
| cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml $HBASE_HOME/conf/ cp $HADOOP_HOME/etc/hadoop/core-site.xml $HBASE_HOME/conf/
|
2.3 同步配置
1 2 3 4
| rsync -av /opt/hadoop/hbase-2.3.6 root@sm:/opt/hadoop/ rsync -av /opt/hadoop/hbase-2.3.6 root@s1:/opt/hadoop/ rsync -av /opt/hadoop/hbase-2.3.6 root@s2:/opt/hadoop/ rsync -av /opt/hadoop/hbase-2.3.6 root@s3:/opt/hadoop/
|
并在节点上创建软连接
1
| ln -s /opt/hadoop/hbase-2.3.6 /usr/local/hbase
|
2.4 启动
master节点集群方式启/停hbase集群
1 2
| $HBASE_HOME/bin/start-hbase.sh $HBASE_HOME/bin/stop-hbase.sh
|
单节点手动启动方式
1 2
| hbase-daemon.sh start master hbase-daemon.sh start regionserver
|
四、验证启动状态
5.1 命令查看
查看zk数据
1 2 3
| zkCli.sh ls /hbase [backup-masters, draining, hbaseid, master, master-maintenance, rs, splitWAL, table]
|
JPS查看
master节点
1 2
| // JPS命令查看 15928 HMaster
|
slave节点
1 2
| // JPS命令查看 14425 HRegionServer
|
5.2 web页面查看
访问master和secondmaster的16010端口, 查看hbase主页
五、高可用验证
停止master节点Master进程, 访问secondmaster的spark页面,查看状态是否切换为ALIVE