目录
[1. 简介](#1. 简介)
[2. 安装](#2. 安装)
[1. HBase依赖Zookeeper、JDK、Hadoop(HDFS),请确保已经完成前面](#1. HBase依赖Zookeeper、JDK、Hadoop(HDFS),请确保已经完成前面)
[2. 【node1执行】下载HBase安装包](#2. 【node1执行】下载HBase安装包)
[3. 【node1执行】,修改配置文件,修改conf/hbase-env.sh文件](#3. 【node1执行】,修改配置文件,修改conf/hbase-env.sh文件)
[4. 【node1执行】,修改配置文件,修改conf/hbase-site.xml文件](#4. 【node1执行】,修改配置文件,修改conf/hbase-site.xml文件)
[5. 【node1执行】,修改配置文件,修改conf/regionservers文件](#5. 【node1执行】,修改配置文件,修改conf/regionservers文件)
[6. 【node1执行】,分发hbase到其它机器](#6. 【node1执行】,分发hbase到其它机器)
[7. 【node2、node3执行】,配置软链接](#7. 【node2、node3执行】,配置软链接)
[8. 【node1、node2、node3执行】,配置环境变量](#8. 【node1、node2、node3执行】,配置环境变量)
[9. 【node1执行】启动HBase](#9. 【node1执行】启动HBase)
[10. 验证HBase](#10. 验证HBase)
[11. 简单测试使用HBase](#11. 简单测试使用HBase)
1. 简介
HBase 是一种 分布式 、可扩展、支持海量数据存储的 NoSQL 数据库。
和 Redis 一样, HBase 是一款 KeyValue 型存储的数据库。
不过和 Redis 设计方向不同
Redis 设计为少量数据,超快检索
HBase 设计为海量数据,快速检索
HBase 在大数据领域应用十分广泛,现在我们来在 node1 、 node2 、 node3 上部署HBase集群。
2. 安装
1. HBase依赖Zookeeper、JDK、Hadoop(HDFS),请确保已经完成前面
1)集群化软件前置准备( JDK)
2) Zookeeper
3) Hadoop
跳转链接:
集群化环境前置准备_时光の尘的博客-CSDN博客
Zookeeper集群安装部署、Kafka集群安装部署_时光の尘的博客-CSDN博客
大数据集群(Hadoop生态)安装部署_时光の尘的博客-CSDN博客
2. 【node1执行】下载HBase安装包
# 下载
wget
http://archive.apache.org/dist/hbase/2.1.0/hbase-2.1.0-bin.tar.gz
# 解压
tar -zxvf hbase-2.1.0-bin.tar.gz -C /export/server
# 配置软链接
ln -s /export/server/hbase-2.1.0 /export/server/hbase
3. 【node1执行】,修改配置文件,修改conf/hbase-env.sh文件
# 在28行配置JAVA_HOME
export JAVA_HOME=/export/server/jdk
# 在126行配置:
# 意思表示,不使用HBase自带的Zookeeper,而是用独立
Zookeeper
export HBASE_MANAGES_ZK=false
# 在任意行,比如26行,添加如下内容:
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"
4. 【node1执行】,修改配置文件,修改conf/hbase-site.xml文件
1 # 将文件的全部内容替换成如下内容:
2 <configuration>
3 - HBase数据在HDFS中的存放的路径 - >
4 <property>
5 <name>hbase.rootdir / name>
6 <value>hdfs: / node1:8020/hbase / value>
7 / property>
8 - Hbase的运行模式。false是单机模式,true是分
布式模式。若为false,Hbase和Zookeeper会运行在同一个JVM里面
>
9 <property>
10 <name>hbase.cluster.distributed / name>
11 <value>true / value>
12 / property>
13 - ZooKeeper的地址 - >
14 <property>
15 <name>hbase.zookeeper.quorum / name>
16 <value>node1,node2,node3 / value>
17 / property>
18 - ZooKeeper快照的存储位置 - >
19 <property>
20
<name>hbase.zookeeper.property.dataDir / name>
21 <value>/export/server/apache-zookeeper-
3.6.0-bin/data / value>
22 / property>
23 - V2.1版本,在分布式情况下, 设置为false - >
24 <property>
25
<name>hbase.unsafe.stream.capability.enforce / name>
26 <value>false / value>
27 / property>
28 / configuration>
部分格式转换时出现错误,图片演示:
5. 【node1执行】,修改配置文件,修改conf/regionservers文件
# 填入如下内容
node1
node2
node3
6. 【node1执行】,分发hbase到其它机器
scp -r /export/server/hbase-2.1.0
node2:/export/server/
scp -r /export/server/hbase-2.1.0
node3:/export/server/
7. 【node2、node3执行】,配置软链接
ln -s /export/server/hbase-2.1.0 /export/server/hbase
8. 【node1、node2、node3执行】,配置环境变量
# 配置在/etc/profile内,追加如下两行
export HBASE_HOME=/export/server/hbase
export PATH=$HBASE_HOME/bin:$PATH
source /etc/profile
9. 【node1执行】启动HBase
请确保: Hadoop HDFS 、 Zookeeper 是已经启动了的
start-hbase.sh
# 如需停止可使用
stop-hbase.sh
由于我们配置了环境变量 export PATH=PATH:HBASE_HOME/bin start-hbase.sh即在 $HBASE_HOME/bin 内,所以可以无论当前目录在哪,均可直接执行
10. 验证HBase
浏览器打开: http: //node1:16010 ,即可看到 HBase 的 WEB UI 页面
11. 简单测试使用HBase
【 node1 执行】
hbase shell
# 创建表
create 'test', 'cf'
# 插入数据
put 'test', 'rk001', 'cf:info', 'itheima'
# 查询数据
get 'test', 'rk001'
# 扫描表数据
scan 'test'