HBase完全分布式集群搭建详细教程

11.准备环境

hadoop完全分布式的搭建环境

例如三个节点:hadoop101、hadoop102、hadoop103

2.开启hadoop完全分布式服务

3.将hbase的安装文件上传到 hadoop101服务器/opt 目录下

4.将hbase安装文件解压到/usr/local/software/ 目录下

bash 复制代码
tar -zxvf /opt/hbase-2.5.6-hadoop3-bin.tar.gz -C /usr/local/software/

5.解压后压缩文件的重命名

bash 复制代码
mv hbase-2.5.6-hadoop3/ hbase

6.环境变量的配置

bash 复制代码
vim /etc/profile.d/my_env.sh

添加:
export HBASE_HOME=/usr/local/software/hbase
export PATH=(之前的内容):$HBASE_HOME/bin

7.使环境变量生效

bash 复制代码
source /etc/profile

8.测试hbase是否安装成功

bash 复制代码
hbase version

9.hbase配置文件的修改

9.1hbase-env.sh 配置文件

打开此文件,在文件末尾添加如下内容:

XML 复制代码
#指定jdk目录
export JAVA_HOME=/usr/local/software/jdk
#指定hadoop目录
export HADOOP_HOME=/usr/local/software/hadoop
#配置hbase是否使用内置的zookeeper
#true:使用内置的, false: 不使用
export HBASE_MANAGES_ZK=false
# 最重要的: 禁用对haddop classpath的查找
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"
export HBASE_HEAPSIZE=1G
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP=true

9.2hbase-site.xml 配置文件

XML 复制代码
<!-- mycluster是根据hdfs-site.xml的dfs.nameservices的value进行配置 -->
<property>
    <name>hbase.rootdir</name>
    <value>hdfs://laoma/hbase</value>
</property>
<property>
    <name>hbase.master</name>
    <value>8020</value>
</property>
<!-- zookeeper集群 -->
<property>
    <name>hbase.zookeeper.quorum</name>
    <value>hadoop101:2181,hadoop102:2181,hadoop103:2181</value>
</property>
<property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
</property>
<property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
</property>

10.指定RegionServers服务器

在/hbase/conf 目录下,修改 regionservers 文件,并设置如下内容:

bash 复制代码
hadoop101
hadoop102
hadoop103

11.置备份节点

在 /hbase/conf目录下,创建backup-masters,设置需要使用的备份服务器:

例如:hadoop102服务

在 backup-masters 文件中,添加 hadoop102

12.将hbase分发到其它的服务器上

bash 复制代码
scp -r /usr/local/software/hbase root@hadoop102:/usr/local/software
scp -r /usr/local/software/hbase root@hadoop103:/usr/local/software

13.将环境变量进行分发

注意:判断三台服务器中的环境变量是否一样,如果不一样,不要进行分发。则在每一台服务器上单独配置hbase的环境变量:例如:hadoop101上安装过flume、hadoop103上安装过hive,则目前环境变则不同,无法进行分发

13.1 如果可以分发则执行如下命令:

bash 复制代码
scp -r /etc/profile.d/my_env.sh root@hadoop102:/etc/profile.d/
scp -r /etc/profile.d/my_env.sh root@hadoop103:/etc/profile.d/

13.2 如果不能分发,则每一台服务器上执行如下命令

bash 复制代码
vim /etc/profile.d/my_env.sh

添加:
export HBASE_HOME=/usr/local/software/hbase
export PATH=(之前的内容):$HBASE_HOME/bin

14.使hadoop102、hadoop103 服务中的环境变量生效

bash 复制代码
source /etc/profile

15.将 hadoop/etc/hadoop目录下的hdfs-site.xml 文件,复制到 hbase/conf目录下

16.启动hbase

在第一台服务器节点上,启动hbase

bash 复制代码
start-hbase.sh

查看进程

17.测试

访问 http://IP地址:16010 查看是否能访问hbase首页面

相关推荐
万邦科技Lafite2 小时前
淘宝开放API批量上架商品操作指南(2025年最新版)
开发语言·数据库·python·开放api·电商开放平台·淘宝开放平台
wtrees_松阳2 小时前
分布式锁实战指南:Redis、ZooKeeper、etcd 三大方案深度对比与避坑指南(附代码)
redis·分布式·zookeeper
Slow菜鸟2 小时前
Java基础架构设计(四)| 通用响应与异常处理(单体/分布式通用增强方案)
java·开发语言·分布式
Angletank2 小时前
SpringBoot中JPA组件深入查询业务实现
数据库·spring boot·后端·mysql
梦里不知身是客112 小时前
mysql的B+Tree介绍
数据库·mysql
..空空的人2 小时前
C++基于protobuf实现仿RabbitMQ消息队列---服务器模块认识1
服务器·开发语言·c++·分布式·rabbitmq·protobuf
西安光锐软件2 小时前
asp.net core 项目开发部署上线流程
数据库
云和数据.ChenGuang2 小时前
elk日志运维工程师技术之故障处理
运维·数据库·elk·jenkins·运维工程师
yumgpkpm2 小时前
Hadoop如何用Flink支持实时数据分析需求
大数据·hadoop·分布式·hdfs·flink·kafka·cloudera