博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HBase完全分布式安装过程详解
阅读量:4121 次
发布时间:2019-05-25

本文共 2513 字,大约阅读时间需要 8 分钟。

转自:

HBase是Apache Hadoop的数据库,能够对大型数据提供随机、实时的读写访问。它的运行依赖于其他文件系统,如HDFS。

HBase 是一个在HDFS 上开发的面向列的分布式数据库。如果需要实时地随机读/写超大规模数据集,就可以使HBase 这一 Hadoop 应用。

HBase模仿并提供了基于Google文件系统(GFS)中的bigtable数据库的所有功能。

HBase的目标是存储并处理大型的数据,更具体来说是仅需要使用普通的硬件配置就能处理由成千上万的行和列所组成的大型数据。

HBase有三种运行模式,分别为:单机、伪分布式和全分布式。

本文主要介绍HBase的全分布式的安装与配置:

由于HBase是基于其他文件存储系统的,因此在分布式模式下安装Hadoop是必不可少的。

Hadoop的安装过程参见:

另一个先决条件是安装了jdk1.6以上的JVM。

下面进入正题,安装全分布hbase。

1.HBase的下载与解压

下载地址:http://mirror.esocc.com/apache/hbase

下载HBase版本: (,0.94版本的安装完成之后会出现HMaster进程启动一会又自动消失的情况,原因不详)

解压到指定的安装目录下:

tar -xzvf (注意解压完成之后将得到hbase-0.96.2文件夹,最好将文件夹的名字改为hbase)(mv hbase-0.96.2 hbase)

2.配置hbase-env.sh

在此文件中打开JAVA_HOME的配置并修改,如下所示;

# The java implementation to use.  Java 1.6 required.

export JAVA_HOME=/usr/jdk1.7.0_45/

3.配置hbase-site.xml

[html] 
  1. <configuration>  
  2.   <property>  
  3.      <name>hbase.rootdir</name>  
  4.      <value>hdfs://master:9000/hbase</value>  
  5.   </property>  
  6.   <property>  
  7.       <name>hbase.cluster.distributed</name>  
  8.       <value>true</value>  
  9.    </property>   <property>  
  10.         <name>hbase.zookeeper.quorum</name>  
  11.         <value>master,slave1,slave2</value>  
  12.     </property>  
  13.     <property>  
  14.          <name>hbase.zookeeper.property.dataDir</name>  
  15.          <value>/home/haduser/zookeeper/zookeeper-3.4.5/data</value>  
  16.      </property>  
  17. </configuration>  

在上面的配置文件中,第一个属性指定本机的hbase的存储目录;第二个属性指定hbase的运行模式,true代表全分布模式;第三和第四个属性是关于Zookeeper集群的配置。我的Zookeeper安装在master,slave1和slave2上。

说明:全分布式的HBase集群需要Zookeeper实例运行,并且需要所有的HBase节点能够与Zookeeper实例通信。默认情况下Hbase自身维护着一组默认的Zookeeper实例。不过用户可以配置独立的Zookeeper实例,这样能使HBase系统更加健壮。

要使用独立的Zookeeper实例,需要修改conf/hbase-env.sh配置文件,修改其中的

export HBASE_MANAGES_ZK=false

默认值为true,如将其修改为false,表示不使用默认的Zookeeper实例。

有关Zookeeper集群的安装可以参见:(先去将zookeeper安装完后并启动,在来安装hbase)

4.配置regionservers

 regionservers文件列出了所有运行hbase的机器(即HRegionServer)。此文件的配置和Hadoop中的slaves文件十分相似,每行指定一台机器的主机名。当HBase启动的时候,会将此文件中列出的所有机器启动。关闭时亦如此。

在此我们配置如下内容:

slave1

slave2

这就意味着,HBase RegionServer运行在slave1和slave2上面。

slave1
slave2

5. 向其它3个结点复制Hbase相关配置

scp -r HBase/ slave1:/home/haduser/HBase

scp -r HBase/ slave2:/home/haduser/HBase

6.添加HBase相关环境变量 (注意三个节点上的/etc/profile都需要修改)

#set hbase environment

export HBASE_HOME=/home/haduser/HBase/hbase-0.94.16
export PATH=$PATH:$HBASE_HOME/bin

将hadoop的配置文件(最少需要hdfs-site.xml)copy到hbase0.96的conf目录下

hadoop

的配置文件(最少需要

hdfs-site.xml

copy

hbase0.96

conf

目录下

 

hadoop

的配置文件(最少需要

hdfs-site.xml

copy

hbase0.96

conf

目录下

 

8.启动Hbase

由于HBase是基于hdfs文件存储系统之上的,故应该先启动hdfs。另外,由于我们在此使用独立的Zookeeper实例,故需要先手动的启动Zookeeper实例。

确认Zookeeper启动之后,我们接下来启动HBase(bin/start-hbase.sh)。如下图所示:

启动完成之后,可以进入hbase shell(bin/hbase shell),执行一下create或者list命令。

你可能感兴趣的文章
JS 跟随光标的提示框
查看>>
SQLServer2005 判断数据库中是否存在某张表或是查找库中的所有表名,然后删除
查看>>
JS 横向图片跑马灯效果
查看>>
JS 横向图片跑马灯效果
查看>>
JS 横向图片跑马灯效果
查看>>
MySql 表的主键索引问题
查看>>
SQLServer2005 基本语句
查看>>
Ajax (部分二:prototype.js代码)总结页面向后台传Form值、单个值和后台向前台传一个或是一组值
查看>>
OGNL表达式语言介绍
查看>>
Java_WEB开发_struts2学习的总结_Iterate标签遍历
查看>>
Java_WEB开发_struts2学习的总结_Iterate标签遍历
查看>>
Java_算法_求素数
查看>>
Java_反射应用_通过Java反射调用方法
查看>>
Java_error与Exception的区别,以及受控异常与运行时异常的区别
查看>>
Java_HashMap与HashTable的区别
查看>>
MyEclipse中将Java项目装换为Web项目
查看>>
MyEclipse中改变选择JDK版本
查看>>
DWR_各种方法调用、配置总结
查看>>
Java_web开发_SSH spring中取得Bean实例的方法
查看>>
Java类文件中取得request、response、session的方法
查看>>