hbase-2.2.7分布式搭建文档
一,搭建前准备
1.检查是否已经安装JDK
2.搭建hbase前需要先搭建好hadoop
3.检查zookeeper是否正常启动
#启动zookeeper(三台都要启动)
zkServer.sh start#查看zookeeper状态(一个leader两个follower)
zkServer.sh status
4.到官网或国内镜像站下载hbase安装包(.tar.gz后缀的)
二,开始搭建
1、上传解压配置环境变量
# 1、解压
tar -xvf hbase-2.2.7-bin.tar.gz.gz# 2、配置环境变量
vim /etc/profile# 3、在最后增加配置
export HBASE_HOME=/usr/local/soft/hbase-2.2.7
export PATH=$PATH:$HBASE_HOME/bin# 4、使环境变量剩下
source /etc/profile
2、修改配置文件
#1、修改hbase-env.sh文件
vim hbase-env.sh# 增加配置
export HBASE_MANAGES_ZK=false
export JAVA_HOME=/usr/local/soft/jdk1.8.0_171
#2、修改hbase-site.xml文件
vim hbase-site.xml#下面两个需要添加
<!--指定 zookeeper 服务器 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,node1,node2</value>
</property><!--指定 hbase 根路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</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>
#3、修改regionservers文件
vim regionservers
# 增加配
node1
node2
同步到所有节点(如果是伪分布式不需要同步)
#使用命令不报错即可
scp -r hbase-1.4.6 node1:`pwd`
scp -r hbase-1.4.6 node2:`pwd`
3、启动Hbase集群
hbase启动顺序(zookeeper在三台虚拟机上都要启动):
zookeeper-->hadoop-->hbasehbase关闭顺序:
hbase-->hadoop-->zk# 启动
start-hbase.sh
# hbase web ui
http://master:16010
# 关闭hbase启动
#stop-hbase.sh
三,解决 log4j 兼容性问题
警告信息,不影响使用
LF4J: Class path contains multiple SLF4J bindings.
cd /usr/local/soft/hbase-2.2.7/lib/client-facing-thirdparty# HBase 与 Hadoop 在运行时会出现 log4j 兼容性问题,这是因为 HBase 的 log4j 版本与 Hadoop 的产生了冲突,我们这里将 HBase 的 log4j 设置为备份。
mv slf4j-log4j12-1.7.25.jar slf4j-log4j12-1.7.25.jar.bak
四,补充
#下载该插件用于将文本文件从DOS/MAC格式转换为UNIX格式
yum install -y dos2unix #下载命令
#使用后方法
dos2unix 文件名 或者 ./* (表示将当前目录下所有文本文件从DOS/MAC格式转换为UNIX格式)