欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

HBase分布式环境安装部署

程序员文章站 2024-03-18 09:59:28
...

HBase分布式环境安装部署


HBase 的安装有两种方式:单机安装和分布式安装。HBase的单机安装了解即可,大家重点掌握HBase 分布式集群的安装。下面我们分别进行介绍。

HBase 单机安装

HBase 需要运行在 Hadoop 基础之上,因此安装HBase 的前提是必须安装 Hadoop 环境。Hadoop 环境的安装可以参考前面课程的内容。下载与Hadoop2.2.0或者 Hadoop2.6.0相匹配的hbase-0.98.11-hadoop2-bin.tar.gz 软件包。

HBase 的安装步骤如下所示:

步骤一: 下载解压HBase

将hbase-0.98.11-hadoop2-bin.tar.gz 安装包解压到指定的目录(这里是在/usr/java),然后重命名为hbase,最后将hbase操作权限分配给hadoop用户(运行hadoop的账户)。

[aaa@qq.com java]$ tar -zxvf hbase-0.98.11-hadoop2-bin.tar.gz
[aaa@qq.com java]$ mv hbase-0.98.11-hadoop2 hbase
[aaa@qq.com java]$ chown -R hadoop:hadoop hbase

步骤二:配置HBase环境变量

打开/etc/profile 文件,配置 HBase 的环境变量。

[aaa@qq.com java]$ vi /etc/profile
HBASE_HOME=/usr/java/hbase
PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HBASE_HOME/bin:$PATH

修改并保存/etc/profile文件后,使配置文件立即生效。

[aaa@qq.com java]$ source /etc/profile

步骤三: 修改HBase配置文件

修改 conf/hbase-env.sh 配置文件。

1) 去掉 JAVA_HOME 前的 "#",并将其修改成自己安装的 Java 路径。

2) 去掉 HBASE_MANAGES_ZK 前的 "#",并将其值设置为 true(HBase 管理自己的 ZooKeeper,这样就不需要单独安装 ZooKeeper)。

[aaa@qq.com hbase]$vi  conf/hbase-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_51
export HBASE_MANAGES_ZK=true

修改 conf/hbase-site.xml配置文件,添加如下内容。

[aaa@qq.com hbase]$ vi conf/hbase-site.xml
		<configuration>
<property>
    <name>hbase.rootdir</name>
    <value>hdfs://dajiangtai:9000/hbase</value>
</property>
<property>
    <name>hbase.cluster.distributed</name>
    <value>false</value>
</property>
<property>
    <name>hbase.Zookeeper.quorum</name>
    <value>dajiangtai</value>
</property>
<property>
    <name>Zookeeper.session.timeout</name>
    <value>60000</value>
</property>
<property>
    <name>hbase.Zookeeper.property.clientPort</name>
    <value>2181</value>
</property>
<property>
    <name>hbase.tmp.dir</name>
    <value>/home/hadoop/data/hbase/tmp</value>
</property>
<property>
    <name>hbase.client.keyvalue.maxsize</name>
    <value>10485760</value>
</property>
</configuration>

hbase.rootdir 属性的值需要与 Hadoop 目录下这个conf/core-site.xml 文件中的 fs.default.name 属性值对应。

fs.default.name 设置为hdfs://dajiangtai:9000/
hbase.rootdir 设置为hdfs://dajiangtai:9000/hbase
hbase.ZooKeeper.quorum 设置为 dajiangtai
hbase.tmp.dir 设置为之前创建的 tmp 目录:/home/hadoop/data/hbase/tmp

步骤四:启动Hbase

1、首先启动Hadoop伪分布集群

[aaa@qq.com hadoop]$ sbin/start-all.sh
[aaa@qq.com hadoop]$ jps
2995 Jps
2134 NameNode
2234 DataNode
2412 SecondaryNameNode
2573 ResourceManager
2671 NodeManager

2、启动HBase

[aaa@qq.com hbase]$ bin/start-hbase.sh
[aaa@qq.com hbase]$ jps
3426 HRegionServer
3474 Jps
2134 NameNode
2234 DataNode
3228 HQuorumPeer
2412 SecondaryNameNode
3293 HMaster
2573 ResourceManager
2671 NodeManager

3、通过 HBase 的 WebUI 查看 HBase 是否安装成功。

HBase分布式环境安装部署

到这里 HBase 单机版已经安装成功。

HBase 分布式集群安装

在安装HBase 分布式集群之前,相信大家应该已经成功搭建Hadoop集群, 有了这个基础再安装HBase应该就比较简单了。接下来我们一起搭建HBase集群。

步骤一: HBase集群架构

HBase分布式环境安装部署

在我们搭建HBase之前,首先要规划好HBase核心角色的节点分配。这里我们是搭建5节点的HBase集群,上图我们将djt11和djt12节点配置为Master,将djt13、djt14和djt15节点配置为RegionServer。如果大家虚拟机有限,也可以搭建3节点的HBase集群,各个角色合理分配即可。

步骤二: HBase集群安装

1、配置conf/regionservers

[aaa@qq.com conf]$ vi regionservers
djt13
djt14
djt15

2、配置 Hbase master 的备份节点

[aaa@qq.com conf]$ vi backup-masters 
djt12

3、配置conf/hbase-site.xml

[aaa@qq.com conf]$ vi  hbase-site.xml
		<configuration>
        <property>
                <name>hbase.zookeeper.quorum</name>
                <value>djt11,djt12,djt13,djt14,djt15</value><!—指定ZooKeeper集群位置>
        </property>
        <property>
                <name>hbase.zookeeper.property.dataDir</name>
                <value>/home/hadoop/data/zookeeper</value><!—Zookeeper写数据目录(与ZooKeeper集群上配置相一致)>
        </property>
        <property>
                <name>hbase.zookeeper.property.clientPort</name>
                <value>2181</value><!—Zookeeper的端口号>
        </property>
		<property>
                <name>hbase.rootdir</name>
                <value>hdfs://cluster/hbase</value><!—RegionServers 共享目录>
        </property>
        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value><!—开启分布式模式>
        </property>
        <property>
                <name>hbase.master</name>
                <value>hdfs://djt11:60000</value><!—指定Hbase的master的位置>
        </property>
</configuration>

备注:配置这个hbase.rootdir属性的时候,需要将hdfs的core-site.xml和hdfs-site.xml两个配置文件copy到hbase的conf或者lib目录下,否则regionserver不能识别cluster逻辑名称。

4、配置hbase-env.sh

[aaa@qq.com conf]$ vi hbase-env.sh
#配置jdk安装路径
export JAVA_HOME=/home/hadoop/app/jdk1.7.0_79
#使用独立的Zookeeper集群
export HBASE_MANAGES_ZK=false 

5、配置环境变量

[aaa@qq.com conf]# vi /etc/profile
HBASE_HOME=/home/hadoop/app/hbase
PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$HADOOP_HOME/bin:$HBASE_HOME/bin:$PATH
export HBASE_HOME

6、Hbase 安装包远程同步到其它节点

[aaa@qq.com app]$
deploy.sh hbase /home/hadoop/app/ slave

7、启动Hbase集群

需按照以下顺序来启动Hbase集群
1)启动Zookeeper
[aaa@qq.com app]$ runRemoteCmd.sh "/home/hadoop/app/zookeeper/bin/zkServer.sh start" all
2)启动HDFS
[aaa@qq.com hadoop]$ sbin/start-dfs.sh
3)启动Hbase
[aaa@qq.com hbase]$ bin/start-hbase.sh 
4)jps查看各节点进程的状态
[aaa@qq.com hbase]$ jps
1564 JournalNode
2134 Jps
1370 NameNode
1693 DFSZKFailoverController
1224 QuorumPeerMain
2031 Hmaster
[aaa@qq.com hbase]$ jps
1625 HMaster
1152 QuorumPeerMain
1357 DFSZKFailoverController
1276 JournalNode
1653 Jps
1212 NameNode
[aaa@qq.com ~]$ jps
1599 Jps
1135 QuorumPeerMain
1410 HRegionServer
1264 JournalNode
1204 DataNode

8、通过web ui 查看HBase

http://djt11:60010/master-status

HBase分布式环境安装部署

http://djt12:60010/master-status

HBase分布式环境安装部署

如果上述操作都ok,说明你的 HBase 集群安装成功。