前言
HBase是一个分布式的、面向列的,基于HDFS的开源数据库。
安装前提
- linux环境
- 搭建好的HDFS环境(hadoop分布式文件系统)
- HBase1.1.3
- 三台linux主机用户运行hbase。三台主机已配置ssh免密码登录,并配置主机名分别为h2、h3、h4
注:hbase有三种运行模式:单击模式、伪分布式模式和分布式模式。其中windows下只可运行单击模式。本文只搭建分布式模式,前两种模式请自行学习搭建。
下载解压hbase
修改hbase配置文件
注:三台机器上使用的hbase配置文件是完全一样的。
- 修改${HBASE_HOME}/conf/hbase-site.xml
<configuration>
<!-- hbase暴露服务的主机 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://h2:9000/hbase</value>
</property>
<!-- hbase内置zookeeper的数据存放路径 -->
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/root/zookeeper</value>
</property>
<!-- 启用分布式存储 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 运行了hbase的主机名 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>h2,h3,h4</value>
</property>
</configuration>
- ${HBASE_HOME}/conf/hbase-env.sh
export JAVA_HOME=你的jdk路径
注:hbase运行时,使用ssh来进行通信,此时/etc/profile
不会被执行,因此配置在其中的环境变量也不会被执行,所以这里需要显示指定jdk的路径。
- 修改${HBASE_HOME}/conf/regionservers
h2
h4
注:配置regin服务器
- 修改${HBASE_HOME}/conf/backup-masters
h3
注:配置backup服务器,当h4宕机后,hbase服务会自动切换到h3
启动hbase
在h2机器上的hbase的bin目录下,执行如下命令来启动hbase(前提是hdfs服务已经启动):
./start-hbase.sh
此时可看到如下几个进程:
HQuorumPeer
HReginServer
HMaster
其在h4机器上可看到如下进程:
HQuorumPeer
HReginServer
备份机器h3可看到如下进程:
HQuorumPeer
HMaster
HMaster
是暴露hbase服务的进程,HReginServer
是实际存储数据的进程。这里可以看到数据HReginServer
是运行在h4机器上的。如果我们把h4机器上的集成杀掉,就会发现h3机器上的HReginServer
进程被启动了。
执行./stop-hbase.sh
可以停止hbase服务。
全文完。