Neal's Space
  • Introduction
  • Algorithm
    • 数学基础
    • Normal
      • 一致性哈希分布
      • A star 寻路
      • 蓄水池抽样 Reservoir Sampling
    • Machine Learning
      • k-近邻算法
      • k-平均演算法
      • kd-Tree算法
      • TF-IDF 特征加权
      • 机器学习模型评价
      • 数据的归一化和标准化
      • 线性回归 - "模型之母"
      • 逻辑回归 - "出场率最高算法"
      • 决策树
  • Programming Language
    • Java
      • Lombok
      • 多数据源分页查询拼接订单
      • 集群 分布式 微服务
      • 反射
      • JAVA类加载器
      • JVM内存
      • Garbage Collection(JVM的垃圾回收机制)
      • Synchronized
      • Java跨域访问
    • Scala
      • Scala使用
  • MySQL
    • MySQL事务
    • MySQL插入多条数据时遇到的问题
    • MySQL经典50题
  • Linux
    • Linux
      • Vim
      • Ubuntu换源
      • Linux内存
    • Docker
      • Docker
      • Docker容器
      • Docker镜像
      • Docker创建本地镜像
  • Data
    • DataWarehouse
      • Sqoop
      • 多维计算
    • Hadoop
      • Hadoop
        • Docker运行Hadoop
      • Hdfs
        • HDFS块丢失过多导致进入安全模式
        • NameNode内存解析
        • HDFS的Router-Based Federation
    • Hive
      • Hive安装配置
      • Hive使用DDL
      • Hive引擎Tez
      • Sqoop与Hive出现的问题
      • Hive与Hook
    • Flume
    • Hbase
      • Hbase安装配置
      • Hbase的Bloom Filters
    • Spark
      • Spark基础
      • Spark SQL
      • Spark Streaming
      • Spark On Yarn
      • Tuning Spark 数据序列化和内存调整
      • Tuning Spark Job
    • Kafka
      • Kafka文件存储
      • 偏移量提交 与 分区再平衡
    • Flink
      • Flink遇到的坑
Powered by GitBook
On this page
  • HBase与Hadoop的版本选择
  • Java support by release line
  • Hadoop version support matrix
  • 安装
  • 单机节点配置
  • 伪分布式
  • 完全分布式

Was this helpful?

  1. Data
  2. Hbase

Hbase安装配置

HBase与Hadoop的版本选择

X : not supported 已知功能不完整或者存在CVE,因此放弃了支持 Y : supported 经过测试全功能支持 NT : Not tested 未经过测试

Java support by release line

HBase Version

JDK 7

JDK 8

JDK 9+

2.1+

X

Y

NT

1.3+

Y

Y

NT

Hadoop version support matrix

HBase-1.3.x

HBase-1.4.x

HBase-1.5.x

HBase-2.1.x

HBase-2.2.x

Hadoop-2.4.x

Y

X

X

X

X

Hadoop-2.5.x

Y

X

X

X

X

Hadoop-2.6.0

X

X

X

X

X

Hadoop-2.6.1

Y

X

X

X

X

Hadoop-2.7.0

X

X

X

X

X

Hadoop-2.7.1+

Y

Y

X

Y

X

Hadoop-2.8.[0-2]

X

X

X

X

X

Hadoop-2.8.[3-4]

NT

NT

X

Y

X

Hadoop-2.8.5+

NT

NT

Y

Y

Y

Hadoop-2.9.[0-1]

X

X

X

X

X

Hadoop-2.9.2

NT

NT

Y

NT

Y

Hadoop-3.0.[0-2]

X

X

X

X

X

Hadoop-3.0.3+

X

X

X

Y

X

Hadoop-3.1.0

X

X

X

X

X

Hadoop-3.1.1+

X

X

X

Y

Y

安装

下载并解压

配置环境变量:

export HBASE_HOME=/opt/framework/hbase
export PATH=$PATH:$HBASE_HOME/bin

hbase-env.sh

export JAVA_HOME=/opt/framework/jdk

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=true

单机节点配置

hbase-site.xml

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>file:///opt/framework/hbase/hbasedata</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/opt/framework/hbase/zkdata</value>
  </property>
</configuration>

启动Hbase

$ start-hbase.sh
$ jps
...
4593 HMaster
...

伪分布式

hbase-site.xml

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://hadoop:9000/hbase</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/opt/framework/hbase/zkdata</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
</configuration>

启动Hbase

$ start-hbase.sh
$ jps
...
11283 HMaster
11411 HRegionServer
11212 HQuorumPeer
...

完全分布式

HBASE是一个分布式系统 其中有一个管理角色: HMaster(一般2台,一台active,一台backup) 其他的数据节点角色: HRegionServer(很多台,看数据容量)

实际上,需要一个完全分布式的配置来全面测试HBase,并在实际场景中使用它。在分布式配置中,集群包含多个节点,每个节点运行一个或多个HBase守护进程。这些包括主实例和备份主实例、多个ZooKeeper节点和多个RegionServer节点。

角色分配

hadoop1:namenode hmaster
hadoop2:datanode regionserver zookeeper backup-hmaster
hadoop3:datanode regionserver zookeeper
hadoop4:datanode regionserver zookeeper

hbase-env.sh

export JAVA_HOME=/usr/local/java/jdk1.8.0_45

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false

hbase-site.xml

<configuration>
  <!-- 指定hbase在HDFS上存储的路径 -->
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://hadoop1:9000/hbase</value>
  </property>
  <!-- 指定hbase是分布式的 -->
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <!-- 指定zk的地址,多个用“,”分割 -->
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>hadoop2:2181,hadoop3:2181,hadoop4:2181</value>
  </property>
</configuration>

regionservers

hadoop2
hadoop3
hadoop4

在hbase的conf目录下创建backup-masters文件,并添加主机名hadoop2

baskup-masters

hadoop2

分发至所有节点

for i in 2 3 4; do scp -r hbase hadoop${i}:/opt/framework/
  1. 启动Hbase

  2. 先启动zookeerper

  3. 再启动hbase:使用start-hbase.sh

PreviousHbaseNextHbase的Bloom Filters

Last updated 5 years ago

Was this helpful?