irpas技术客

centOS安装hbase(完全分布式)_OwnYoung_centos hbase

网络投稿 8092

一、准备

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

<configuration> <!-- 指定zk的地址,多个用逗号分隔 --> <property> <name>hbase.zookeeper.quorum</name> <value>hadoop102,hadoop103,hadoop104</value> </property> <!-- ZooKeeper的zoo.conf中的配置 --> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/export/zookeeper</value> </property> <!-- hbase在hdfs上的存储路径 ip:port要和hadoop/core-site.xml中的fs.defaultFS保 持一致 --> <property> <name>hbase.rootdir</name> <value>hdfs://hadoop102:8020/hbase</value> </property> <!-- 指定hbase为分布式的 --> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <!-- 解决hmaster down掉问题 --> <name>hbase.unsafe.stream.capability.enforce</name> <value>false</value> </property> </configuration>

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

<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <!-- 指定 NameNode 的地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop102:8020</value> </property> </configuration>

(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-|


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #CentOS #HBase #解压tar #zxvf #C