HBase的集群能正常工作的前提条件是:安装并启动了 hadoop 和 zookeeper。
- hadoop提供HDFS 给 HBase存储。 安装文档参考: Hadoop的安装部署
- zookeeper保证HBase集群的master选举和切换。 安装文档参考: Zookeeper的安装部署
1- 下载安装包
官网下载链接:Apache HBase – Apache HBase Downloads
本例版本为 1.3.1 : Index of /dist/hbase/1.3.1 (apache.org)
下载 bin.tar.gz 的文件 Hbase-1.3.1-bin.tar.gz
2- 解压安装包
本例安装到 /opt/cluster/server 上,
在node121 节点上执行
tar -zxvf hbase-1.3.1-bin.tar.gz -C /opt/cluster/server
3- 修改配置文件
3.1- 拷贝 Hadoop的配置文件到Hbase的conf下
因为依赖 hadoop,需要知道它们的配置。所以需要拷贝到HBase的安装目录下的conf。
也可以通过软连接实现。本例是通过软连接,将hadoo的配置文件core-site.xml和hdfs-site.xml连接到Hbase的安装目录的conf下
ln -s /opt/cluster/server/hadoop-2.9.2/etc/hadoop/core-site.xml /opt/cluster/server/hbase-1.3.1/conf/core-site.xml
ln -s /opt/cluster/server/hadoop-2.9.2/etc/hadoop/hdfs-site.xml /opt/cluster/server/hbase-1.3.1/conf/hdfs-site.xml
3.2- 修改 hbase-env.sh
依赖zookeeper,指定使用外部zookeeper,并配置 JDK的路径。
vi <$HBASE_HOME>/conf/hbase-env.sh (<$HBASE_HOME>是你HBase的安装目录)
#添加java环境变量
export JAVA_HOME=/opt/cluster/server/jdk1.8.0_231
#指定使用外部的zk集群
export HBASE_MANAGES_ZK=FALSE
3.3- 修改 hbase-site.xml
指定 hbase存储到hdfs的路径, hbase的模式是集群模式,依赖的zookeeper地址。
vi <$HBASE_HOME>/conf/hbase-site.xml (<$HBASE_HOME>是你HBase的安装目录)
<configuration>
<!-- 指定hbase在HDFS上存储的路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://node121:9000/hbase</value>
</property>
<!-- 指定hbase是分布式的 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zk的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>node121:2181,node122:2181,node123:2181</value>
</property>
</configuration>
3.4- 编辑 regionServers 文件
告知集群,regionserver的节点。 我这里是三个节点都规划了 regionServer。
node121
node122
node123
3.5- 在 conf下,创建 backup-masters
告知 备用master在那个节点上。 我这里是规划到 node122
node122
4- 配置HBase的环境变量
vi /etc/profile
export HBASE_HOME=/opt/cluster/server1/hbase-1.3.1
export PATH=$PATH:$HBASE_HOME/bin
source /etc/profile
5- 在其他节点上进行同样操作。
可以通过 SCP 直接拷贝到其他节点上。也可以通过rsync命令同步。
rsync的脚本可以参考用VM虚拟机搭建大数据学习集群(3节点)_zhang5324496的博客-CSDN博客
SCP命令则如下
scp -r /opt/server/hbase-1.3.1 node122:/opt/
scp -r /opt/server/hbase-1.3.1 node122:/opt/
6- 拷贝环境变量文件, 并在各自节点上执行命令使之生效
scp /etc/profile node122:/opt/
scp /etc/profile node123:/opt/
source /etc/profile
7- 启动集群
前提是启动了 hadoop 和 zk。 因为 HBase依赖于 这两个组件
在 node121 上执行, start-hbase.sh
8- 验证集群是否安装启动成功。
8.1- 在各个节点上执行 JPS,查看进程信息。
按照规划, node121 上要有 regionserver 和 HMaster
node121上 要有 regionserver 和 HMaster
node123上游 regionserver。
8.2- 如果在本机上window配置了虚拟机的相关信息。也可以在浏览器直接访问
node121:16010