栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

centOS安装hbase(完全分布式)

centOS安装hbase(完全分布式)

一、准备

1.hadoop已经安装
我是三台虚拟机hadoop102、hadoop103、hadoop104
2.zookeeper已经安装

##二、 zookeeper安装
安装文件apche-zookeeper-bin.tar.gz(看清楚是带bin的!!)
清华源下载

# 解压
tar zxvf apche-zookeeper-bin-***.tar.gz -C /opt/module/
# 改名
mv zookeeper-版本号 zookeeper
# 改掉zookeeper的conf文件名,因为zookeeper默认使用zoo.cfg 配置文件 如果没有回提示找不到配置文件
#在/zookeeper/conf目录下
cp zoo_sample.cfg zoo.cfg
# zookeeper下创建
mkdir -p zkdata
sudo chmod 766 zkdata
# 修改zoo.cfg
dataDir=/opt/module/zookeeper/zkdata
# 增加下面配置
#######################cluster##########################
server.2=hadoop102:2888:3888
server.3=hadoop103:2888:3888
server.4=hadoop104:2888:3888
#其中 dataDir是zookeeper数据存放位置,server.y=XXXX:2888:3888是zookeeper每台配置的信息,y代表zookeeper编号及myid文件对应的内容,XXXX是服务器对应的IP地址或者主机名


在/opt/module/zookeeper/zkData目录下创建一个myid的文件

touch myid


vi myid

添加对应id,比如2

xsync同步(分布式必要):没有同步脚本就要scp传送了

xsync /opt/module
# scp
scp -r /opt/module/zookeeper ownyoung@hadoop103:/opt/module
scp -r /opt/module/zookeeper ownyoung@hadoop104:/opt/module

再把hadoop103的myid改成3,hadoop104的myid改成4

启动zookeeper
bin/zkServer.sh start

关闭:bin/zkServer.sh stop
每台都要单独启动

成功!

可以看到选出三号为leader
参考:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119511593

安装hbase

hadoop版本和hbase有对应关系,我是3.1.3和hbase2.2.2

同样,下载完hbase进行tar解压到/opt/module/

tar zxvf hbase-2.2.2-bin.tar.gz -C /opt/module/

然后mv改名

mv hbase-2.2.2 hbase
配置环境变量

这里可能会有差异,要看你的配置文件是哪个了
一般是/etc/profile,我是sudo vim /etc/profile.d/my_env.sh

vim /etc/profile
# 添加
export Hbase_HOME=/opt/module/hbase
export PATH=$PATH:$Hbase_HOME/bin
# wq保存退出,更新环境变量使生效
source /etc/profile
# 就可以查看hbase version
hbase version
配置文件修改

hbase目录下有个conf
cd conf
我们要修改hbase-site.xml和hbase-env.sh
1)修改hbase-env.sh

#添加环境变量
export JAVA_HOME=/opt/module/jdk1.8.0_212
export HADOOP_HOME=/opt/module/hadoop-3.1.3
export Hbase_HOME=/opt/module/hbase

# 修改Hbase_MANAGES_ZK的值为false
export Hbase_MANAGES_ZK=false
# export Hbase_MANAGES_ZK=true,如果为true,表示hbase使用自带的zookeeper,这种只适合单机模式

(2)配置文件hbase-site.xml


  
  
    hbase.zookeeper.quorum
      hadoop102,hadoop103,hadoop104
  
  
  
    hbase.zookeeper.property.dataDir
    /export/zookeeper
  
  
  
    hbase.rootdir
    hdfs://hadoop102:8020/hbase
  
  
  
    hbase.cluster.distributed
        true
  
  
  
  hbase.unsafe.stream.capability.enforce
  false




回到hadoop的core-site.xml文件:

 
 

 
     
     
        fs.defaultFS 
        hdfs://hadoop102:8020 
     

 

(3)conf目录下修改regionservers文件,从节点的主机名

hadoop102
hadoop103
hadoop104

(4)(可省略)添加backup-masters,配置hmaster的备份节点

$ vim backup-masters

hadoop104

(5)(必要,避免后面的拒绝连接问题)将hadoop的hdfs-site.xml 和 core-site.xml 放在hbase的conf目录下

cp /opt/module/hadoop-3.1.3/etc/hadoop/core-site.xml /opt/module/hbase/conf/
cp /opt/module/hadoop-3.1.3/etc/hadoop/hdfs-site.xml /opt/module/hbase/conf/

同步,文件较大时间挺长

xsync /opt/module/hbase

启动hbase集群:

start-hbase.sh

可能报错:

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]

都是关于SLF4J的,说的是jar包有重复,我们删掉hbase目录下的就行,根据提示的路径:

# 进到目录
cd /opt/module/hbase/lib/client-facing-thirdparty
# 删除,建议mv命令,慎用rm
sudo mv slf4j-log4j12-1.7.25.jar /home/
# 三台都要这么操作

解决后成功启动:

[ownyoung@hadoop102 bin]$ jps
11076 HMaster
11557 Jps
8006 NodeManager
7704 DataNode
11258 HRegionServer
8172 QuorumPeerMain
7533 NameNode
启动顺序:

|-------zookeeper------zkServer.sh start--------zkServer.sh stop—|

|-------dfs-------------start-dfs.sh-------------stop-dfs.sh---------|

|-------yarn-----------start-yarn.sh------------stop-yarn.sh------- |

|-------hbase----------start-hbase.sh ---------stop-hbase.sh------|

|------spark—/opt/module/spark/sbin/start-all.sh–stop–all.sh-|

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/676014.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号