环境介绍

tuge1 tuge2 tuge3 tuge4
NameNode NameNode DataNode DataNode
ZooKeeper ZooKeeper ZooKeeper ZooKeeper
JournalNode JournalNode JournalNode
ZKFC ZKFC
HMaster HMaster/HRegionServer HRegionServer HRegionServer

HBase 1.3.6

Hadoop 2.6.5

ZooKeeper 3.5.5

Java JDK 7

从官网可知兼容性:

Java的兼容性:

HBase版本 JDK 7 JDK 8 JDK 9(非LTS) JDK 10(非LTS) JDK 11
2.1+ × HBASE-20264 HBASE-20264 HBASE-21110
1.3+ × HBASE-20264 HBASE-20264 HBASE-21110

Hadoop的兼容性:

HBase-1.3.x HBase-1.4.x HBase-1.5.x HBase-2.1.x HBase-2.2.x
Hadoop-2.4.x × × × ×
Hadoop-2.5.x × × × ×
Hadoop-2.6.0 × × × × ×
Hadoop-2.6.1 + × × × ×
Hadoop-2.7.0 × × × × ×
Hadoop-2.7.1以上 × ×
Hadoop-2.8。[0-2] × × × × ×
Hadoop-2.8。[3-4] × ×
Hadoop-2.8.5 +
Hadoop-2.9。[0-1] × × × × ×
Hadoop-2.9.2 +
Hadoop-3.0。[0-2] × × × × ×
Hadoop-3.0.3 + × × × ×
Hadoop-3.1.0 × × × × ×
Hadoop-3.1.1 + × × ×

注意事项:(这里不配置的化,会导致HMaster总是宕机)

tuge1和tuge2作为HMaster服务器,需要设置tuge1对tuge2,tuge3,tuge4免密钥

设置tuge2对tuge1,tuge3,tuge4免密钥

设置举例:

ssh-keygen -t rsa

ssh-copy-id tuge1

HBase搭建

前提:已经搭建完HDFS和ZooKeeper环境。

我这里在之前搭建的基础上继续操作。

1. 下载HBase安装包
  • 在/opt/下面新建hbase文件夹

​ cd /opt

​ mkdir hbase

​ cd hbase

  • 下载

镜像地址

​ wget http://mirror.bit.edu.cn/apache/hbase/hbase-1.3.6/hbase-1.3.6-bin.tar.gz

  • 解压

​ tar -xvf hbase-1.3.6-bin.tar.gz

2. 配置环境变量

​ vim /etc/profile

添加如下内容:

export JAVA_HOME=/opt/java/jdk1.8.0_221
export HADOOP_HDFS_HOME=/opt/hadoop/hadoop-2.6.5
export HADOOP_CONF_DIR=$HADOOP_HDFS_HOME/etc/hadoop
export HADOOP_HOME=/opt/hadoop/hadoop-2.6.5
export ZK_HOME=/opt/zookeeper/apache-zookeeper-3.5.5-bin
export HIVE_HOME=/opt/hive/apache-hive-1.2.2-bin
export HBASE_HOME=/opt/hbase/hbase-1.3.6 PATH=$JAVA_HOME/bin:$PATH:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$ZK_HOME/bin:$HIVE_HOME/bin:**$HBASE_HOME/bin**
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH CLASSPATH
3. 配置文件设置

进入到conf里面,开启分布式集群,配置集群地址,配置HMaster备用服务器地址,配置HRegionService地址配置HBase在HDFS中的路径,配置Active Master。设置使用外部环境ZooKeeper,而不是自身ZooKeeper。

  • 编辑hbase-site.xml (开启分布式集群,配置集群地址,配置HMaster备用服务器地址。)
<property>   <!--配置根路径为HDFS路径-->
<name>hbase.rootdir</name>
<value>hdfs://mycluster/hbase</value><!--mycluster和hdfs-site.xml配置对应,要将文件复制到conf下面。-->
</property>
<property><!--HBase根据此路径找到要使用的ZooKeeper-->
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/zookeeper/apache-zookeeper-3.5.5-bin/temp</value>
</property>
<property><!--配置hbase分布式集群-->
<name>hbase.zookeeper.quorum</name>
<value>tuge2,tuge3,tuge4</value>
<description>the pos of zk</description>
</property>
<property><!--允许分布式-->
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property><!--配置hbase master主节点-->
<name>hbase.master</name>
<value>tuge1:60000</value>
</property>
  • 编辑backup-masters(配置hbase master备机)
vim backup-masters

在里面加入备机名称,以换行符作为区分。我这里只添加了一台 tuge2

  • 编辑hbase-env.sh(配置Java路径,禁止HBase使用自带的ZooKeeper)
vim hbase-env.sh
  • 在里面设置
export HBASE_MANAGES_ZK=false<!--禁用使用默认的ZooKeeper-->
export JAVA_HOME=/opt/java/jdk1.8.0_221
  • 编辑regionservers(配置HRegionServer)
vim regionservers
  • 在里面添加regionserver机器,以换行符作为区分,我这里添加了三台
 tuge2
tuge3
tuge4
4. 将hdfs-site.xml 文件复制到conf下面
 cp /opt/hadoop/hadoop-2.6.5/etc/hadoop/hdfs-site.xml /opt/hbase/hbase-1.3.6/conf/
5. 启动HBase
  • 进入到bin目录下

    cd bin

  • 运行

start-hbase.sh
  • 如下图所示:

6. 停止HBase
stop-hbase.sh

系列传送门

入门大数据---Hbase搭建的更多相关文章

  1. 入门大数据---HDFS-HA搭建

    一.简述 上一篇了解了Zookeeper和HDFS的一些概念,今天就带大家从头到尾搭建一下,其中遇到的一些坑也顺便记录下. 1.1 搭建的拓扑图如下: 1.2 部署环境:Centos3.1,java1 ...

  2. 入门大数据---Hbase是什么?

    一.Hbase是什么? Hbase属于NoSql的一种. NoSql数据库分为如下几类: Key-Value类型数据库 这类数据库主要会使用到一个哈希表,这个表有一个特定的键和一个指针指向特定的数据. ...

  3. 入门大数据---Hbase的SQL中间层_Phoenix

    一.Phoenix简介 Phoenix 是 HBase 的开源 SQL 中间层,它允许你使用标准 JDBC 的方式来操作 HBase 上的数据.在 Phoenix 之前,如果你要访问 HBase,只能 ...

  4. 入门大数据---HBase Shell命令操作

    学习方法 可以参考官方文档的简单示例来 点击查看 可以直接在控制台使用help命令查看 例如直接使用help命令: 从上图可以看到,表结构的操作,表数据的操作都展示了.接下来我们可以针对具体的命令使用 ...

  5. 入门大数据---Hbase 过滤器详解

    一.HBase过滤器简介 Hbase 提供了种类丰富的过滤器(filter)来提高数据处理的效率,用户可以通过内置或自定义的过滤器来对数据进行过滤,所有的过滤器都在服务端生效,即谓词下推(predic ...

  6. 入门大数据---Hbase协处理器详解

    一.简述 Hbase 作为列族数据库最经常被人诟病的特性包括:无法轻易建立"二级索引",难以执 行求和.计数.排序等操作.比如,在旧版本的(<0.92)Hbase 中,统计数 ...

  7. 入门大数据---Hbase容灾与备份

    一.前言 本文主要介绍 Hbase 常用的三种简单的容灾备份方案,即CopyTable.Export/Import.Snapshot.分别介绍如下: 二.CopyTable 2.1 简介 CopyTa ...

  8. 入门大数据---Storm搭建与应用

    1.Storm在Linux环境配置 主机名 tuge1 tuge2 tuge3 部署环境 Zookeeper/Nimbus Zookeeper/Supervisor Zookeeper/Supervi ...

  9. 入门大数据---Elasticsearch搭建与应用

    项目版本 构建需要: JDK1.7 Elasticsearch2.2.1 junit4.10 log4j1.2.17 spring-context3.2.0.RELEASE spring-core3. ...

随机推荐

  1. DFA最小化

    1.将DFA最小化:教材P65 第9题 2.构造以下文法相应的最小的DFA S→ 0A|1B A→ 1S|1 B→0S|0 3.自上而下语法分析,回溯产生的原因是什么? 文法中,对于某个非终结符号的规 ...

  2. Chisel3 - util - Math vs. CircuitMath

    https://mp.weixin.qq.com/s/8lC8vQnBdKW9C39H0QFFkA     对数相关的辅助方法,Math通过软件方法实现,CircuitMath通过硬件方法实现.   ...

  3. Java实现 LeetCode 701 二叉搜索树中的插入操作(遍历树)

    701. 二叉搜索树中的插入操作 给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树. 返回插入后二叉搜索树的根节点. 保证原始二叉搜索树中不存在新值. 注意,可能存在多种有效的插入 ...

  4. Java实现 LeetCode 687 最长同值路径(递归)

    687. 最长同值路径 给定一个二叉树,找到最长的路径,这个路径中的每个节点具有相同值. 这条路径可以经过也可以不经过根节点. 注意:两个节点之间的路径长度由它们之间的边数表示. 示例 1: 输入: ...

  5. Java实现 LeetCode 144 二叉树的前序遍历

    144. 二叉树的前序遍历 给定一个二叉树,返回它的 前序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3] /** * Definition for a ...

  6. Java实现 洛谷 P1328 生活大爆炸版石头剪刀布

    import java.util.Scanner; public class Main{ private static int[] duel(int playerA, int playerB){ in ...

  7. Python学习之求阶乘篇

    描述 给定一个数n,范围为0≤n≤100,请你编程精确的求出n的阶乘n!. 输入 输入数据有多行,每行一个整数n,当n<0时输入结束. 输出 输出n的阶乘. 样例输入 1234-1 样例输出 1 ...

  8. Python——day3

    看到右边的时钟了吗?  我想世界最公平的一件事就是每个人的每一小时.每一天.每一年都是相同的,每个人的时间都是一样的. 一直保持温热感是一件很了不起的事,加油,屏幕前的你和我. 明天,还在等你 回顾d ...

  9. k8s学习-文档&概念

    1.文档大全 kubernetes objects文档(yaml文件编写): https://kubernetes.io/docs/concepts/overview/working-with-obj ...

  10. 跟着视频学python,Day1

    python介绍 发展史 安装 Hello World程序 变量 用户输入 模块初识 数据类型初识 条件表达式if...elif...else 循环表达式while 循环表达式for python介绍 ...