HBase安装

发布于 2022-01-25  64 次阅读


安装hbase前 请安装hadoop、zookeeper 并保证hadoop集群和zk集群正常运行

安装

解压hbase-2.2.4-bin.tar.gz

tar zxvf hbase-2.2.4-bin.tar.gz -C /opt/softwares

创建软链接

ln -sf /opt/softwares/hbase-2.2.4 /opt/links/hbase

配置环境变量

vi ~/.bashrc

####__HBASE_CONF__####
export HBASE_HOME=/opt/links/hbase
export PATH=$PATH:$HBASE_HOME/bin

执行命令使配置生效

source /etc/profile

配置

与hadoop一样,hbase也有单机模式、伪分布式、全分布式三种部署模式

以下配置文件均在$HBASE_HOME/conf下

单机模式【独立模式】

hbase-env.sh

将第28行改成:export JAVA_HOME=/opt/links/jdk 将126行改成:export HBASE_MANAGES_ZK=true

hbase-site.xml

<configuration>
	<property>
		<name>hbase.rootdir</name>
		<value>file:///opt/links/hbase/data</value>
	</property>
</configuration>

启动

hbase shell

注意: hbase本身自带zookeeper,通过HBASE_MANAGES_ZK控制是否使用

伪分布式

hbase-env.sh

第28行改成: export JAVA_HOME=/opt/links/jdk 第116行改成: export HBASE_PID_DIR=/opt/links/hbase/pids 第126行改成: export HBASE_MANAGES_ZK=false

hbase-site.xml

<configuration>
	<!-- 配置HBase存放数据的目录为HDFS集群中的目录  -->
	<property>
		<name>hbase.rootdir</name>
		<value>hdfs://192.168.31.130:9000/hbase</value>
	</property>
	<!-- 配置HBase连接Zookeeper的地址 -->
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>192.168.31.130:2181</value>
	</property>
	<!-- 配置HBase为集群模式 -->
	<property>
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>
	<!-- 配置数据流的兼容性,不要求强制 -->
	<property>
		<name>hbase.unsafe.stream.capability.enforce</name>
		<value>false</value>
	</property>
</configuration>

regionservers

填写从节点的IP地址或者主机名,一行一个

伪分布式模式集群在该文件中只需要填写本机的IP地址或者主机名即可

作用:告诉主节点有哪些从节点 用途:一键启动/停止

启动

由于在伪分布式模式集群中配置了HBase集群的数据的存放位置是HDFS集群,所以需要先启动HDFS集群,并且配置HBase所使用Zookeeper是自己搭建的Zookeeper,所以接着需要启动Zookeeper;

#启动HBase集群:
#一键启动【只能在主节点上执行】
start-hbase.sh
#非一键启动:
启动主节点【HMaster】:hbase-daemon.sh start master
启动从节点【HRegionServer】:hbase-daemon.sh start regionserver
#验证是否启动成功:
#执行jps命令:
HMaster
HRegionServer
#访问Web页面:
http://192.168.31.130:16010

全分布式

说明:

  • 全分布式的搭建跟伪分布式没有任何区别,所有节点上的配置都一模一样
  • 在主节点上启动主节点进程:HMaster,在所有从节点上启动从节点进程HRegionServer
  • HBase各个节点之间的时间差不能超过30秒;对于HBase集群的所有节点,都可以通过ntp服务进行时间同步
  • HBase在某些时候会进行域名反向解析;所以在搭建Hbase集群的时候,务必在/etc/hosts文件中填写IP地址到主机名的映射关系