centos搭建hbase

前提:

已经搭建了hadoop,并且启动了hdfs
相关版本:centos7.2、hadoop2.7.1

1、查看hadoop版本下载对于的hbase版本

在这里插入图片描述

2、下载hbase和zookeeper

因为我的hadoop版本是2.7.1 所以就下载hbase2.0.5版本
hbase下载连接
https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/
hbase采用外置zookeeper,hbase也有内置zookeeper,但是内置的zookeeper耦合性比较大,当hbase升级的时候zookeeper自然也会关闭也要跟着升级,也许会影响部分业务,建议还是使用外置zookeeper利于维护。
zookeeper下载地址
https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
下载之后 上传服务器,解压

3、配置
1)配置hase

解压之后进入hbase安装包
cd /home/hadoop/hbase-2.0.5/conf/
(1) 配置hbase-env.sh
vim hbase-env.sh
在这里插入图片描述
配置jdk路径
export JAVA_HOME=/home/hadoop/jdk1.8.0_25
默认为true使用内部Zookeeper,由于我使用的外部ZK因此此处改为false
export HBASE_MANAGES_ZK=false
(2) 配置hbase-site.xml
vim hbase-site.xml
添加如下配置

 <!--集群服务器的地址列表,用逗号  master,slave1,slave2-->
    <property>
      <name>hbase.zookeeper.quorum</name>
      <value>master</value>
    </property>
     <!-- Hbase 配置端口 -->
   <property>
     <name>hbase.master.port</name>
     <value>16000</value>
    </property>
    <property>
      <name>hbase.master.info.port</name>
       <value>16010</value>
    </property>
     <property>
       <name>hbase.regionserver.port</name>
       <value>16201</value>
     </property>
      <property>
        <name>hbase.regionserver.info.port</name>
        <value>16301</value>
      </property>
    <!--region server的共享目录,用来持久化Hbase 放在hdfs中的 '/hbase'目录-->
        <!-- file:///tmp/hbase-${user.name}/hbase 默认是放在本地重启之后消失-->
    <property>
      <name>hbase.rootdir</name>
      <value>hdfs://master:9000/hbase</value>
    </property>
    <!--zookeeper客户端连接的端口-->
    <property>
      <name>hbase.zookeeper.property.clientPort</name>
      <value>2181</value>
    </property>
    <!--Hbase的运行模式。false是单机模式,true是分布式模式 若为false,Hbase和Zookeeper会运行在同一个JVM里面。-->
    <property> 
		<name>hbase.cluster.distributed</name> 
		<value>true</value> 
	</property> 

(3) 配置regionservers
vim regionservers
添加集群的服务器名称 (把原有的localhost删除)
master
slave1
slave2
(4)将hbase安装包和配置分发到slave1和slave2 (hbase-2.0.5为安装包)

 scp  -r  hbase-2.0.5 slaver1:/home/hadoop/
 scp  -r  hbase-2.0.5 slaver2:/home/hadoop/
2)配置zookeeper

(1) 外置Zookeeper集群配置
进入zookeeper的安装文件
cd /home/hadoop/zookeeper-3.4.14/conf

(2)配置zookeeper的环境变量
vim /etc/profile
添加如下配置

export ZK_HOME=/home/hadoop/zookeeper-3.4.14
export PATH=$PATH:$ZK_HOME/bin

在这里插入图片描述
使配置生效
source /etc/profile

(3)配置zoo.cfg
将zoo_sample.cfg重命名为zoo.cfg
cp zoo_sample.cfg zoo.cfg
新建文件夹
mkdir -p /home/hadoop/zookeeper-3.4.14/data
vim zoo.cfg

server.0=master:2888:3888
server.1=slave1:2888:3888
server.2=slave2:2888:3888
  <!--zookeeper存储数据的地址 -->
dataDir=/home/hadoop/zookeeper-3.4.14/data
  <!--默认端口-->
clientPort=2181

端口说明:
2888端口号是zookeeper服务之间通信的端口。
3888端口是zookeeper与其他应用程序通信的端口。
2181端口是zookeeper客户端请求接口。

(4)将zookeeper安装包和配置分发到slave1和slave2 (hbase-2.0.5为安装包)

     cd /home/hadoop/
     scp  -r  zookeeper-3.4.14 slaver1:/home/hadoop/
     scp  -r  zookeeper-3.4.14 slaver2:/home/hadoop/

在每个节点(master,slave1,slave2)的/home/hadoop/zookeeper-3.4.14/data下面建立个文件
touch myid
在此文件中写入
在这里插入图片描述

4、启动

启动顺序 hadoop ->zookeeper->hbase
关闭顺序 hbase->zookeeper->hadoop
1)首先在hadoop中开启
./start-dfs.sh
或者
./start-all.sh
2)启动zookeeper集群
先查看zookeeper配置是否正确
进入bin文件中(master,slave1,slave2都要启动zookeeper)

./zkServer.sh   start      启动
./zkServer.sh   status    查看状态
./zkServer.sh    stop     停止/关闭

在这里插入图片描述
原因:是jdk的环境变量配置有问题
export在这里插入图片描述
在这里插入图片描述
这个jdk是openjdk已经被我删除了,重新搭建了本地的jdk,
只要在 vim /etc/profile改掉JAVA_HOME并且source /etc/profile 刷新配置就好了;
3)再次启动zookeeper集群
在这里插入图片描述
4)启动Hbase集群(master,slalve1,slave2都要启动)
进入hbase包下的bin文件夹中
/home/hadoop/hbase-2.0.5/bin
启动hbase
./start-hbase.sh
查看进程
jps
在这里插入图片描述
5)启动zookeeper客户端查看节点
在这里插入图片描述
查看节点,发现了hbase节点
在这里插入图片描述
6)启动hbase命令行
进入hbase的bin下面
./hbase shell
在这里插入图片描述
7)远程连接hbase
上面配置了远程web页面的端口号16010
打开地址:16010
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/k393393/article/details/92036721