一、部署规划
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
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下加入
cat >> /etc/profile << 'EOF'
#HBASE
HBASE_HOME=/usr/local/hbase
PATH=$HBASE_HOME/bin:$PATH
export PATH HBASE_HOME
EOF
source /etc/profile
2.2 修改配置
cd $HBASE_HOME/conf
hbase-env.sh
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
cat > hbase-site.xml << 'EOF'
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<!-- 指定 hbase在HDFS上存储的路径, mycluster为hdfs的nameservice名称-->
<name>hbase.rootdir</name>
<value>hdfs://mycluster/hbase</value>
</property>
<property>
<!-- 指定 hbase 是分布式的 -->
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<!-- 指定 zk 的地址,多个用“,”分割 -->
<name>hbase.zookeeper.quorum</name>
<value>slave1:2181,slave2:2181,slave3:2181</value>
</property>
</configuration>
EOF
指定访问端口
<property> <name>hbase.master.info.port</name> <value>16010</value> </property>
regionservers
cat > regionservers << EOF
master
secondmaster
slave1
slave2
slave3
EOF
backup-masters
cat > backup-masters << EOF
secondmaster
EOF
拷贝hadoop核心配置
cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml $HBASE_HOME/conf/cp $HADOOP_HOME/etc/hadoop/core-site.xml $HBASE_HOME/conf/
2.3 同步配置
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/
并在节点上创建软连接
ln -s /opt/hadoop/hbase-2.3.6 /usr/local/hbase
2.4 启动
master节点集群方式启/停hbase集群
$HBASE_HOME/bin/start-hbase.sh$HBASE_HOME/bin/stop-hbase.sh
单节点手动启动方式
hbase-daemon.sh start masterhbase-daemon.sh start regionserver
四、验证启动状态
5.1 命令查看
查看zk数据
zkCli.shls /hbase[backup-masters, draining, hbaseid, master, master-maintenance, rs, splitWAL, table]
JPS查看
master节点
// JPS命令查看15928 HMaster
slave节点
// JPS命令查看14425 HRegionServer
5.2 web页面查看
访问master和secondmaster的16010端口, 查看hbase主页
五、高可用验证
停止master节点Master进程, 访问secondmaster的spark页面,查看状态是否切换为ALIVE