完全分布式安装HBase

HBase是一个基于Hadoop的分布式的、面向列的开源数据库,它以Google的BigTable为原型。

高可用性、高性能、列存储、可伸缩、实时读写。

完全分布式安装HBase是在完全分布式安装好Hadoop的基础上进行的。

HBase的版本和Hadoop的版本需要匹配得上,尽量不要选择最新的版本,应该选稳定版本的。

我这里用的是Hadoop-0.20.2和HBase-0.90.5。

以下操作在hadoop的namenode主节点上进行,在主节点上配置好之后,再复制到各个从节点。

1、下载并安装HBase

1)我这里把hbase-0.90.5.tar.gz放到/home/coder/目录下。

2)解压hbase-0.90.5.tar.gz到/home/coder/hbase-0.90.5/

[coder@h1 ~]$ tar -zxvf hbase-0.90.5.tar.gz

 

2、配置hbase-env.sh文件

该文件在hbase-0.90.5/conf/目录下。

1)配置JDK安装目录

# The java implementation to use.  Java 1.6 required.
 export JAVA_HOME=/usr/java/jdk1.6.0_37

2)配置Hadoop安装目录

# Extra Java CLASSPATH elements.  Optional.
 export HBASE_CLASSPATH=/home/coder/hadoop-0.20.2/conf

3)配置由HBase负责启动和关闭zookeeper

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

 

3、配置hbase-site.xml文件

该文件在hbase-0.90.5/conf/目录下,文件内容配置如下:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
/**
 * Copyright 2010 The Apache Software Foundation
 *
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-->
<configuration>
        <property>
                <!--指定HBase数据的存放位置-->
                <name>hbase.rootdir</name>
                <value>hdfs://h1:9000/hbase</value>
        </property>
        <property>
                <!--启动分布模式-->
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
        <property>
                <!--指定HBase主节点的主机名和端口-->
                <name>hbase.master</name>
                <value>h1:60000</value>
        </property>
        <property>
                <!--设置所有zookeeper节点的主机名或IP-->
                <name>hbase.zookeeper.quorum</name>
                <value>h2,h3</value>
        </property>
        <property>
                <!--指定zookeeper目录-->
                <name>hbase.zookeeper.property.dataDir</name>
                <value>/home/coder/hbase-0.90.5/zookeeper</value>
        </property>
</configuration>

 

4、配置regionservers文件

该文件在hadoop-0.90.5/conf/目录下,我这里配置了两个从节点h2和h3作为Region服务器,该文件内容如下:

h2                     
h3                               

 

5、替换HBase的hadoop核心jar包

进入到hbase-0.90.5/lib/目录下。

1)将原来的hadoop-core-0.20-append-r1056497.jar做个备份,或者直接删掉

[coder@h1 lib]$ mv hadoop-core-0.20-append-r1056497.jar hadoop-core-0.20-append-r1056497.jar.bak

2)将Hadoop安装目录中的hadoop-0.20.2-core.jar复制到hbase-0.90.5/lib/目录中

[coder@h1 lib]$ cp /home/coder/hadoop-0.20.2/hadoop-0.20.2-core.har /home/coder/hbase-0.90.5/lib/ 

 

6、到这里,最简单HBase配置已经ok了。现在需要把配置好的Hbase复制到其他节点,执行如下命令

[coder@h1 ~]$ scp -r hbase-0.90.5 h2:/home/coder/
[coder@h1 ~]$ scp -r hbase-0.90.5 h3:/home/coder/

 

7、先启动Hadoop,再启动HBase。

1)启动hadoop,进入hadoop安装目录,执行:

[coder@h1 hadoop-0.20.2]$ bin/start-all.sh

2)启动HBase,进入HBase安装目录,执行:

[coder@h1 hbase-0.90.5]$ bin/start-hbase.sh

3)查看是否启动成功:

主节点h1:

[coder@h1 hbase-0.90.5]$ jps
2167 NameNode
2777 Jps
2300 SecondaryNameNode
2657 HMaster
2376 JobTracker
[coder@h1 hbase-0.90.5]$ 

从节点h2:

[coder@h2 ~]$ jps
2051 DataNode
2342 HRegionServer
2279 HQuorumPeer
2105 TaskTracker
2905 Jps
[coder@h2 ~]$ 

从节点h3:

[coder@h3 ~]$ jps
2353 HRegionServer
2116 TaskTracker
2933 Jps
2292 HQuorumPeer
2062 DataNode
[coder@h3 ~]$ 

 

 8、HBase的shell模式

1)进入shell模式

[coder@h1 hbase-0.90.5]$ bin/hbase shell
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.90.5, r1212209, Fri Dec  9 05:40:36 UTC 2011

hbase(main):001:0>

2)使用status命令查看HBase的运行状况

hbase(main):001:0> status
2 servers, 0 dead, 1.0000 average load

hbase(main):002:0> 

3)退出shell

hbase(main):002:0> exit

 

9、HBase用户界面

1)master界面,通过http://192.168.0.129:60010/master.jsp访问,192.168.0.129是我主节点ip

2)zookeeper页面,通过master页面中master属性提供的zookeeper链接进入。

3)用户表页面,也可以通过master页面的相应链接进入。

4)Region服务器页面,也可以通过master页面的Region Servers信息提供的链接进入。

9、停止HBase

在主节点上执行

[coder@h1 hbase-0.90.5]$ bin/stop-hbase.sh

 


<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值