HBase学习01--Hbase的安装

来源:互联网 发布:淘宝隐藏优惠券插件 编辑:程序博客网 时间:2024/06/10 19:53

HBase学习01–Hbase的安装

一、单机模式:

1.1 解压软件包

tar -zxvf hbase-1.1.3-bin.tar.gz

1.2 配置JAVA_HOME环境变量

cd /usr/local/hbase-1.1.3/confvi hbase-env.sh    添加JAVA_HOME=/usr/java/jdk1.7.0_79,如下:# The java implementation to use.  Java 1.7+ required.export JAVA_HOME=/usr/java/jdk1.7.0_79/

1.3 配置hbase-site.xml

需要配置HBase的路径和zookeeper的data dir.

cd /usr/local/hbase-1.1.3/confvi hbase-site.xml   添加如下:<configuration>  <property>    <name>hbase.rootdir</name>    <value>file:///usr/local/hbase-1.1.3</value>  </property>  <property>    <name>hbase.zookeeper.property.dataDir</name>    <value>/usr/local/hbase-1.1.3/zookeeper</value>  </property></configuration>

1.4 启动单点hbase

启动hbase

cd /usr/local/hbase-1.1.3/./bin/start-hbase.sh

使用jps, 发现HMaster服务起来了

进入命令行模式

./bin/hbase shellType "exit<RETURN>" to leave the HBase ShellVersion 1.1.3, r72bc50f5fafeb105b2139e42bbee3d61ca724989, Sat Jan 16 18:29:00 PST 2016hbase(main):001:0> listTABLE0 row(s) in 3.4040 seconds=> []hbase(main):002:0>操作成功

二、完全分布式HBase

前期工作, 关闭防火墙, selinux, 配置无密码登陆, 在Hadoop集群中已经撇孩子。
接下了,需要配置HBase

2.1 配置Hbase-site.xml

  • hbase.rootdir: 该参数制定了HReion服务器的位置,即数据
    存放的位置。主要端口号要和Hadoop相应配置一致。
  • hbase.zookeeper.property.dataDir zookeeper的数据写入目录
  • hbase.cluster.distributed: HBase的运行模式。false是单机模
    式,true是分布式模式。
    若为false, HBase和Zookeeper会运行在同一个JVM里面。默认为f
    alse.
  • hbase.zookeeper.quorum:
    下面为基本配置:
<configuration><property>    <name>hbase.rootdir</name>    <value>hdfs://TEST:9000/hbase</value></property><property>  <name>hbase.zookeeper.quorum</name>  <value>TEST,TEST1,TEST2</value></property><property>  <name>hbase.zookeeper.property.dataDir</name>  <value>/usr/local/hbase-1.1.3/zookeeper</value></property><property>  <name>hbase.cluster.distributed</name>  <value>true</value></property></configuration>

2.2 配置RegionServer

配置RegionServer节点

vi regionservers添加集群hostnameTESTTEST1TEST2

2.3 在HBase中配置Hadoop的路径

  • 将Hadoop的配置文件目录配到HBase的CLASSPATH
  • 配置JAVA_HOME
  • HBASE_MANAGES_ZK:#此配置信息,表示设置由hbase自己管理zookeeper,不需要单独的
    zookeeper, 本文搭建的 Hbase 用的是自带的 zookeeper,故设置
    为true.
  • 默认情况下pid文件保存在/tmp目录下,/tmp目录下的文件很容易丢
    失,
    • 解决办法:在hbase-env.sh中修改pid文件的存放路径

配置如下:

vi /hbase-env.sh#export HBASE_CLASSPATH=/usr/local/hadoop/etc/hadoop#配置JAVA环境变量export JAVA_HOME=/usr/java/jdk1.7.0_79#export HBASE_MANAGES_ZK=false#pid目录export HBASE_PID_DIR=/usr/local/hbase-1.1.3/tmp/pidsi

2.4 在/etc/profile配置HBase的环境变量

vi /etc/profile#hbase export HBASE_HOME=/usr/local/hbase-1.1.3export PATH=$PATH:$HBASE_HOME/bin保存,使其生效source  /etc/profile

2.5 分发到其他节点

scp -r ./hbase-1.1.3 root@TEST1:/usr/local/scp -r ./hbase-1.1.3 root@TEST1:/usr/local/

2.6 、启动hbase 集群

cd /usr/local/hbase-1.1.3/bin./start-hbase.sh 

通过jps 查看三个节点都有HMaster和HRegionServer

于是将backup-masters清空

重启hbase之后,只有TEST上有HMaster, 但是出现一个问题
1、TEST2上的HRegionServer挂了, 不知道为什么
2、查看TEST的日志:发现是系统时间不一致导致,
这里写图片描述
3、修改时间

- date -s '13:40:40'

4、重启HRegionServer

cd /usr/local/hbase-1.1.3/bin./hbase-daemon.sh start regionserver

5、检查TEST2的HRegionServer已经起来了
这里写图片描述

3、转过去检查TEST, TEST1 发现他俩的HRegionServer也挂了

WEB界面上是两个死的Region Server

这里写图片描述

TEST2 刚才起来了 ,再查WEB界面 发现有了TEST2

这里写图片描述

尝试启动所有的HRegionServer

这里写图片描述

注意修改完成后单独启动HRegionServer节点:

启动集群中所有的regionserver

  • ./hbase-daemons.sh start regionserver

启动某个regionserver

  • ./hbase-daemon.sh start regionserver

三个总算都起来了

这里写图片描述

但是每次系统时间不一致都会导致hadoop 、hbase出问题
所以要都三台节点进行时间同步,安装ntpd

0 0
原创粉丝点击