代码改变世界

CentOS6.5安装HBase集群及多HMaster配置

2016-05-08 14:47  猎手家园  阅读(829)  评论(0编辑  收藏  举报

1、配置SSH免登录

请参考:http://www.cnblogs.com/hunttown/p/5470357.html

服务器配置:

Hadoop-NN-01 主
Hadoop-NN-02 备
Hadoop-DN-01 RegionServer
Hadoop-DN-02 RegionServer
Hadoop-DN-03 RegionServer

 

2、解压HBase并重命名

[root@Hadoop-NN-01 ~]# tar xzvf hbase-1.2.1-bin.tar.gz -C /usr/local/
[root@Hadoop-NN-01 ~]# cd /usr/local/
[root@Hadoop-NN-01 local]# mv hbase-1.2.1 hbase

 

3、修改/usr/local/hbase/conf/hbase-env.sh

[root@Hadoop-NN-01 ~]$ vim /usr/local/hbase/conf/hbase-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_73
export HBASE_MANAGES_ZK=false   #设置HBASE_MANAGES_ZK为true时使用HBase自带的ZooKeeper管理集群

 

4、修改/usr/local/hbase/conf/hbase-site.xml

vim /usr/local/hbase/conf/hbase-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://mycluster/hbase</value>
        <description>这里必须与你的Hadoop集群的core-site.xml文件配置保持完全一致才行,如果你Hadoop的hdfs使用了其它端口,请在这里也修改。</description>
    </property>
    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
    <property>
        <name>hbase.master.port</name>
        <value>16000</value>
        <description>指定Master端口</description>
    </property>
    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>Hadoop-DN-01,Hadoop-DN-02,Hadoop-DN-03</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/home/hadoopuser/zookeeper-3.4.5-cdh5.6.0/data</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.clientPort</name>
        <value>2181</value>
    </property>
</configuration>

hbase.rootdir:Region Servers共享的HBase持久化数据的存储地址。需要使用包含文件系统scheme的完全限定地址。

hbase.cluster.distributed:指定Hbase集群是否以分布式方式运行。

hbase.master 指定了HMaster的位置和端口

hbase.master.port:Master绑定的端口,包括backup-master.

hbase.zookeeper.property.dataDir:这个是ZooKeeper配置文件zoo.cfg中的dataDir。zookeeper存储数据库快照的位置。

hbase.zookeeper.quorum:ZooKeeper的所有成员服务器列表,服务器名之间用逗号分隔。

hbase.zookeeper.property.clientPort:这个是ZooKeeper配置文件zoo.cfg中的clientPort。ZooKeeper提供给客户端连接的端口,默认是2181。

 

5、修改/usr/local/hbase/conf/regionservers

vim /usr/local/hbase/conf/regionservers

# 如果不希望Master做regionserver,则无须填写。
Hadoop-DN-01
Hadoop-DN-02
Hadoop-DN-03

 

6、修改/usr/local/hbase/conf/backup-masters

vim /usr/local/hbase/conf/backup-masters

#启用多HMaster时需要指定备Master
Hadoop-NN-02

 

7、配置环境变量  #各节点

vim /etc/profile

#HBase
export HBASE_HOME=/usr/local/hbase
export PATH=$PATH:$HBASE_HOME/bin

配置Host  #各节点

vim /etc/hosts

#否则HRegionServer启动时报UnknownHostException
192.168.254.151    mycluster

 

8、节点分发

scp -r hbase/ root@Hadoop-DN-01:/usr/local
scp -r hbase/ root@Hadoop-DN-02:/usr/local
......

 

9、启动HBase

在Hadoop-NN-01上调用start-hbase即可。

[hadoopuser@Hadoop-NN-01 ~]$ hbase/bin/start-hbase.sh         #启动HBase集群
[hadoopuser@Hadoop-NN-01 ~]$ hbase-daemon.sh start master     #启动备Master节点
[hadoopuser@Hadoop-NN-01 ~]$ hbase-daemon.sh start regionserve  #如果有某一台RegionServer没有启动,可以单独启动RegionServer节点

停止HBase

[hadoopuser@Hadoop-NN-01 ~]$ hbase/bin/stop-hbase.sh         #停止HBase集群
[hadoopuser@Hadoop-NN-01 ~]$ hbase-daemon.sh stop master     #停止备Master节点
[hadoopuser@Hadoop-NN-01 ~]$ hbase-daemon.sh stop regionserve  #如果有某一台RegionServer没有停止,可以单独停止RegionServer节点

 

10、jps查看

NameNode节点有此进程,说明安装成功:124969 HMaster

DataNode节点有此进程,说明安装成功:35578 HRegionServer

 

11、浏览器查看

http://192.168.107.82:16010/

 

注:需要提前安装好zookeeper集群

 

12、进入HBase界面:hbase shell