如何搭建一个HBase集群
在大数据集群中,HDFS 是基础设施,所以搭建环境会有一些麻烦,HBase 作为上层应用,搭建会简单很多。
本文介绍一种搭建 HBase 集群的方式。
搭建 HBase 集群所需的软件和环境:
- 搭建了 HDFS 和 Zookeeper 集群的环境
- HBase-1.6.0
对于搭建 HDFS 和 Zookeeper 集群,可以参照我之前的文章。
本文继续在之前的环境中进行,具体的机器名称及 IP 以自己的实际环境为准。
软件安装
将 HBase 安装包拷贝到 bigdata1(192.168.56.3)虚拟机中,然后解压到目标目录下
$ tar -zxvf hbase-1.6.0-bin.tar.gz -C /opt/module/
并将目录改名:
$ cd /opt/module
$ mv hbase-1.6.0-bin hbase-1.6.0
软件配置
进入到 hbase 目录之后,开始配置 HBase 的环境,首先需要配置 JDK 环境,然后要禁用 HBase 中自带的 zookeeper,在后面会与我们之前就配置好的 zookeeper 集群进行集成。
$ cd /opt/module/hbase-1.6.0
$ vi conf/hbase-evn.sh
export JAVA_HOME=/opt/module/java-se-8u41-ri/
export HBASE_MANAGES_ZK=false
接下来需要配置 hbase-site.xml 文件,这是 HBase 的核心配置文件:
$ vi conf/hbase-site.xml
首先需要配置 hdfs 的地址,并且要把 HBase 配置为分布式模式,然后在配置好 HBase 的端口号。
再接下来需要配置好 zookeeper 的地址,上面说到了要禁用 HBase 自带的 zookeeper。
<property>
<name>hbase.rootdir</name>
<value>hdfs://bigdata1:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master.port</name>
<value>16000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>bigdata1:2181,bigdata2:2181,bigdata3:2181</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/module/apache-zookeeper-3.6.1/zkData/</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
接下来需要配置 HBase 集群的机器,编辑 regionservers 文件,将三台虚拟机的名称填充进去:
$ vi regionservers
bigdata1
bigdata2
bigdata3
HBase 需要依赖 hdfs 作为底层存储,在 Hbase的配置中,还需要依赖 hadoop 的配置文件,当然也可以直接将配置文件拷贝过来,但是使用软连接是一种更加合理的方式。
下面软连接 hadoop 配置文件到 hbase:
$ ln -s /opt/module/hadoop-2.9.2/etc/hadoop/core-site.xml /opt/module/hbase-1.6.0/conf/core-site.xml
$ ln -s /opt/module/hadoop-2.9.2/etc/hadoop/hdfs-site.xml /opt/module/hbase-1.6.0/conf/hdfs-site.xml
到这里,HBase 的配置基本就完成了,然后将配置好的HBase 同步到另外两台虚拟机上:
$ rsync -rvl /opt/module/hbase-1.6.0/ root@192.168.56.4:/opt/module/hbase-1.6.0
$ rsync -rvl /opt/module/hbase-1.6.0/ root@192.168.56.5:/opt/module/hbase-1.6.0
启动集群
配置完成之后,就可以来启动 HBase 集群了,输入以下命令:
$ bin/start-hbase.sh
如果正常启动的话,就可以通过 http://bigdata1:16010 来进入到 HBase 的管理页面
如果要停止 HBase 集群的话,使用下面的命令就可以。
$ bin/stop-hbase.sh
文 / Rayjun