CentOS 6.4下HBase集群安装

环境:CentOS 6.4,Hadoop 2.6.0,ZooKeeper 3.4.6,HBase 1.0.1.1 

集群角色规划:

HostName

 

HBase Role

 

ZooKeeper

  Hadoop Role  

HDP1

  Master   YES   Slave  

HDP2

 

Backup Master & RegionServer

 

YES

 

Master

 

HDP3

 

RegionServer

 

YES

 

Slave

 

HDP4

 

RegionServer

 

YES

 

Slave

 

 

1. 任意Master(HDP1)节点解压HBase

  sudo tar zxvf hbase-1.0.1.1-bin.tar.gz -C /usr/local/

  sudo mv hbase-1.0.1.1 hbase

  sudo chown -R hdp:hdp hbase

 

2. 修改hbase-env.sh 

   vim conf/hbase-env.sh,出掉JAVA_HOME的注释,并修改为本地的JAVA_HOME

   export JAVA_HOME=/usr/lib/jdk7

   修改HBASE_MANAGES_ZK为false,默认为true,表示HBase托管zookeeper实例,如果是HBase独占的zookeeper,可以设定为true。

    export HBASE_MANAGES_ZK=false

 

3. 修改hbase-site.xml

    以下只配置几个必需要修改的项,其它的项使用默认值。hbase-site.xml的默认配置可以从获得。

 <configuration>

  <property>

    <name>hbase.rootdir</name>

    <value>hdfs://HDP2:9000/hbase</value>

  </property>

  <property>

     <name>hbase.cluster.distributed</name>

     <value>true</value>

  </property>

  <property>

     <name>hbase.master.port</name>

     <value>16000</value>

  </property>

   <property>

    <name>hbase.zookeeper.property.dataDir</name>

    <value>/usr/local/zookeeper/data</value>

  </property>

  <property>

    <name>hbase.zookeeper.quorum</name>

    <value>HDP1,HDP2,HDP3,HDP4</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.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。

 

4. 修改regionservers,将RegionServers写入。

vim conf/regionservers

HDP2,HDP3,HDP4

 

5. 修改backup-masters,将Backup Master写入

vim conf/backup-masters  

HDP2

 

6. 添加环境变量方便调用HBase

  vim /etc/profile

  #HBase Env

  export HBASE_HOME=/usr/local/hbase

  export PATH=$PATH:$HBASE_HOME/bin:$HBASE_HOME/conf

 

7. 将修改好的安装目录分发到所有节点,一并修改环境变量。

 

8. 启动HBase

   在HDP1上调用start-hbase即可。

 

9.通过jps查看进程

HDP1上有HMaster,HDP2上有HMaster和HRegionServer,HDP3和HDP4上是HRegionServer。

 

总结:

    1. hbase.master.port需要指定,不然启动backup-master时会报Already in use的错误。

    2. HMaster(包括backup-master)需要能够passwordless ssh到其它服务器

    3. 我这里的ZooKeeper使用是偶数个节点,其实是不合理的,应该用奇数个节点。

Hadoop+HBase搭建云存储总结 PDF

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/52640d0e8250c4341fefd194cabae2e2.html