一, 前言
1, 前面我们搭建好了高可用的 Hadoop 集群, 本文正式开始搭建 HBase
2,HBase 简介
(1)Master 节点负责管理数据, 类似 Hadoop 里面的 namenode, 但是他只负责建表改表等操作, 如果挂掉了也不会影响使用
(2)RegionServer 节点负责存储数据, 类似 Hadoop 里面的 datanode, 通过 Zookeeper 进行通信
(3) 可以看出 HBase 实际上是基于 HDFS 的分布式数据库, 但是单机模式下也可以直接用普通文件系统存储数据
二, HBase 环境搭建
1, 下载 tar.gz 包, 并解压
tar zxvf /work/soft/installer/hbase-1.2.2-bin.tar.gz
2, 由于 HBase 是依赖 Zookeeper 的, 所以 HBase 自带 Zookeeper, 我们先从单机模式搭建开始学习, 先把之前搭建的集群停掉
3, 进入到 HBase 目录的 conf/hbase-site.xml 文件, 配置 HBase 的目录, 以下目录 HBase 会自动创建
- VIM /work/soft/hbase-1.2.2/conf/hbase-site.xml
- <property>
- <name>hbase.rootdir</name>
- <value>file:///work/hbase/root</value>
- </property>
- <property>
- <name>hbase.zookeeper.property.dataDir</name>
- <value>/work/hbase/zookeeper/data</value>
- </property>
4, 启动 HBase 单机模式
/work/soft/hbase-1.2.2/bin/start-hbase.sh
5, 通过 jps 查看进程是否存在
6, 进入 HBase 的命令行
/work/soft/hbase-1.2.2/bin/hbase shell
7, 我们尝试一下建表, 插入数据, 查询的操作, 看到结果就说明单机模式成功搭建!
- create 'testTable','testFamily'
- put 'testTable','row1','testFamily:name','jack'
- scan 'testTable'
8, 接下来搭建分布式模式, 先停掉单机模式
/work/soft/hbase-1.2.2/bin/stop-hbase.sh
9, 然后删除刚刚自动创建的目录
- rm -rf /work/hbase/root
- rm -rf /work/hbase/zookeeper/data
10, 由于 HBase 默认自动开启自带的 Zookeeper, 所以我们设置为不开启, 用自己的 Zookeeper
- VIM /work/soft/hbase-1.2.2/conf/hbase-env.sh
- export HBASE_MANAGES_ZK=false
11, 手动创建日志文件夹
mkdir /work/hbase/logs
12, 配置 hbase-env.sh
(1) 配置 Hadoop 的配置文件目录
(2) 配置日志文件夹的目录 (也就是刚刚手动创建的那个目录)
- VIM /work/soft/hbase-1.2.2/conf/hbase-env.sh
- export HBASE_CLASSPATH=/work/soft/hadoop-2.6.4/etc/hadoop
- export HBASE_LOG_DIR=/work/hbase/logs
13, 配置 hbase-site.xml
(1) 配置我们的 Hadoop 集群 id
(2) 开启分布式开关
(3) 配置 Zookeeper 集群
- VIM /work/soft/hbase-1.2.2/conf/hbase-site.xml
- <property>
- <name>hbase.rootdir</name>
- <value>hdfs://stormcluster/hbase</value>
- </property>
- <property>
- <name>hbase.cluster.distributed</name>
- <value>true</value>
- </property>
- <property>
- <name>hbase.zookeeper.quorum</name>
- <value>storm1,storm2</value>
- </property>
- <property>
- <name>hbase.zookeeper.property.dataDir</name>
- <value>/work/hbase/zookeeper/data</value>
- </property>
14, 启动 HBase 集群
(1) 首先启动我们的 Hadoop 集群
(2) 启动 Master
/work/soft/hbase-1.2.2/bin/hbase-daemon.sh start master
(3) 用 jps 命令查看进程是否存在
(4) 启动 RegionServer
/work/soft/hbase-1.2.2/bin/hbase-daemon.sh start regionserver
(5) 用 jps 命令查看进程是否存在
(6) 通过 16010 端口访问 HBase 的控制台, 可以看到刚刚开启的 regionserver, 到此 HBase 搭建成功!
来源: https://www.cnblogs.com/orange911/p/9995690.html