目录:
- 安装模式
- 独立式HBase安装 (使用自带的Zookeeper)
- 独立于HDFS的HBase安装 (使用自带的Zookeeper)
- 伪分布式HBase安装 (使用自带的Zookeeper)
- 伪分布式HBase安装 (不使用自带的Zookeeper)
- 完全分布式安装 (不使用自带的Zookeeper)
- 安装步骤:
注意:各版本之间的兼容
- 基本环境:
- Ubuntu15.10或者 centOS
- jdk1.7
- 安装并启动基础条件,比如:Hadoop-2.7.3、Zookeeper-3.4.10
- 安装HBase-1.2.6
- 下载、上传、解压
- 配置环境变量
- 配置HBase
- 启动HBase
- 验证:HBase Web界面:
http://localhost:60010
一.独立式HBase安装
详细步骤:
- 前提条件:安装 jdk
- 安装HBase
- 上传、解压
第一步:上传到home目录下安装
第二步:解压命令: tar -zxvf hbase-1.2.6-bin.tar.gz -C /home
- 配置环境变量,将bin目录添加到PATH路径下
# vi /etc/profile
在最后添加两行 HBASE_HOME=/home/hbase-1.2.6
PATH=$PATH:$HBASE_HOME/bin
让其生效
#source /etc/profile
- 配置HBase
- 第一步:配置 hbase-env.sh,让HBase关联jdk,并使用自带的zookeeper
# cd /home/hbase-1.2.6/
# vi conf/hbase-env.sh export JAVA_HOME=/home/jdk1.7.0_80
#默认为true,不添加此行也可以,当不使用自带的Zookeeper,改为false即可
export HBASE_MANAGES_ZK=true
- 第二步:配置hbase-site.xml
# mkdir /home/hbase-1.2.6/data
# vim conf/hbase-site.xml <configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///tmp/hbase/data</value>
<!--hbase.rootdir是指定HRegion服务器的位置,即数据存放的位置-->
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hbase-1.2.6/data/zookeeper</value>
<!--hbase zookeeper数据存储地址-->
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>false</value>
<!--hbase.cluster.distributed是设置HBase的运行模式,
false是单机模式,true是分布式模式,默认为false。
如果是false, HBase和Zookeeper会运行在同一个JVM里面。-->
</property>
</configuration>
- 启动HBase
执行bin目录下的start-hbase.sh就可以启动hbase,因为配置了HBase环境变量,在任意目录执行start-hbase.sh都可以启动hbase,以下操作同理 启动:
start-hbase.sh
验证:用jps指令查看,可以看到有HMaster程序:
jps
进入HBase Shell模式:运行bin目录下的hbase shell可进入HBase Shell:
bin/hbase shell
关闭:
stop-hbase.sh
二.独立于HDFS的HBase
简要步骤:
- 前提条件:安装jdk 、Hadoop
- 安装HBase(使用自带的Zookeeper):和 【独立式HBase安装】相比,除了需要提前安装Hadoop外,仅仅hbase-site.xml有所差别
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://192.168.200.10:9000/hbase</value>
<!--hbase.rootdir是数据存放的位置,这里换成hadoop中hdfs上的位置
注意:注意9000的端口要跟hadoop安装目录/etc/hadoop/core-site.xml中的端口号一样
-->
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hbase-1.2.6/data/zookeeper</value>
<!--hbase zookeeper数据存储地址-->
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>false</value>
<!--hbase.cluster.distributed是设置HBase的运行模式,
false是单机模式,true是分布式模式,默认为false。
如果是false, HBase和Zookeeper会运行在同一个JVM里面。-->
</property>
</configuration>
- 启动
先启动Hadoop:start-all.sh
启动HBase:start-hbase.sh
三.伪分布式HBase(使用自带的zookeeper)
简要步骤:
- 前提条件:安装jkd、Hadoop
- 安装HBase(使用自带的Zookeeper):和 【独立式HBase安装】相比,除了需要提前安装Hadoop外,仅仅hbase-site.xml有所差别
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://192.168.200.10:9000/hbase</value>
<!--hbase.rootdir是数据存放的位置,这里换成hadoop中hdfs上的位置
注意:注意9000的端口要跟hadoop安装目录/etc/hadoop/core-site.xml中的端口号一样
-->
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hbase-1.2.6/data/zookeeper</value>
<!--hbase zookeeper数据存储地址-->
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>ture</value>
<!--hbase.cluster.distributed是设置HBase的运行模式,
false是单机模式,true是分布式模式,默认为false。
如果是false, HBase和Zookeeper会运行在同一个JVM里面。-->
</property>
</configuration>
- 启动
先启动Hadoop:start-all.sh
启动HBase:start-hbase.sh
- HBase Web界面访问
注意:需要关闭liunx、windows的防火墙
可以在web端看到hbase的相关信息,在单机上部署,输入网址:http://192.168.200.10:16010 (注意:192.168.200.10是安装hbase的虚拟机ip) 即可看到,注意端口号默认为16010
- 进入hbase shell中,开启hbase的基本操作
进入shell模式:
#bin/hbase shell
查看HBase状态:
status
创建新表
create 'test', 'cf'
第一个参数是表的名字,第二个是列族的名字。不需要定义列,因为列是可以动态增加的
四.伪分布式HBase(不使用自带的zookeeper)
详细步骤:
- 前提条件:安装jdk、Hadoop、zookeeper单机即可
- 安装HBase
- 下载
- 上传
- 解压
- 配置环境变量
- 配置
- hbase-env.sh
export JAVA_HOME=/home/jdk1.7.0_80
#默认为true,不添加此行也可以,当不使用自带的Zookeeper,改为false即可
export HBASE_MANAGES_ZK=false
- hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<!--
可以不配置,如果要配置,需要和zookeeper配置文件zoo.cfg中的dataDir指定的路径相同
zoo.cfg中dataDir=/home/zookeeper-3.4.10/data1
-->
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/zookeeper-3.4.10/data1</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!--如果是zookeeper单机-->
<property>
<name>hbase.zookeeper.quorum</name>
<value>localhost</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<!--如果是zookeeper伪分布式-->
<!--指定zookeeper集群-->
<!--
<property>
<name>hbase.zookeeper.quorum</name>
<value>localhost:2181,localhost:2182,localhost:2183</value>
<!--如果配置了ip映射主机名,可以是<value>kd01,kd02,kd03</value>
</property>
-->
</configuration>
- 启动
- 先启动Hadoop、zookeeper
- 再启动hbase
- web访问
四.完全分布式
可参考博客:hbase集群安装
简要条件:
- 前提条件:安装jdk、Hadoop分布式、Zookeeper分布式
- 安装HBase:和 【独立式HBase安装】相比,除了需要提前安装Hadoop集群和zookeeper集群外,还有如下配置文件有所差别
- hadoop集群安装教程
- zookeeper集群安装教程:zookeeper集群安装教程
- 修改hbase-env.sh配置文件
export JAVA_HOME=/home/jdk1.7.0_80
#默认为true,不添加此行也可以,当不使用自带的Zookeeper,改为false即可
export HBASE_MANAGES_ZK=false
- 修改hbase-site.xml配置文件
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<!--
可以不配置,如果要配置,需要和zookeeper配置文件zoo.cfg中的dataDir指定的路径相同
zoo.cfg中dataDir=/home/zookeeper-3.4.10/data1
-->
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/zookeeper-3.4.10/data1</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!--如果是zookeeper伪分布式-->
<!--
<property>
<name>hbase.zookeeper.quorum</name>
<value>localhost</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
-->
<!--如果是zookeeper集群-->
<!--指定zookeeper集群-->
<property>
<name>hbase.zookeeper.quorum</name>
<value>192.168.100.11,192.168.100.12,192.168.100.13</value>
<!--如果配置了ip映射主机名,可以是<value>kd01,kd02,kd03</value> -->
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
</configuration>
说明 hbase.zookeeper.property.dataDir:hbase zookeeper数据存储地址
hbase.zookeeper.quorum:zookeeper集群的地址
hbase.zookeeper.property.clientPort:zookeeper集群的端口
- 新建backup-masters文件,并做修改
[root@kd01 conf]$ vi backup-masters
# 添加备用hbase-master
kd02
- 修改regionservers配置文件,加入RegionServer节点列表
[root@kd01 conf]$ vi regionservers
# 默认有一行localhost,删除
kd01
kd02
kd03
- 把hadoop的配置文件core-site.xml和hdfs-site.xml复制到hbase的配置文件目录下
- 把hbase安装目录分发给其他节点
- 启动
- 首先启动zookeeper集群
zkServer.sh start
- 然后启动HDFS集群
start-dfs.sh
- 最后启动hbase集群
start-hbase.sh
- 验证:通过jps查看进程或者访问WEB页面进行验证
- HBase如何识别HMaster
如果不在配置文件(hbase-site)中指定master
那么在哪台机器上执行./hbase/bin/start-hbase.sh,哪台机器就会被认为是HMaster。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)