HBase 安装(分布式)_skybin090804ChinaUnix博客

HBase 安装(分布式)_skybin090804-ChinaUnix博客

HBase 安装(分布式)
(2012-01-11 16:06)

安装包:
公司本地:http://192.168.1.3/hbase/hbase-0.90.5.tar.gz
官网下载:http://www.apache.org/dyn/closer.cgi/hbase/

官网的安装步骤:单机模式、伪分布式、分布式,但安装步骤比较简单,本次记录的是分布式安装。

hbase-0.90.5据官网文档说吻合hadoop-0.2x版本

安装步骤:
PS:前提已安装了jdk和hadoop;本人环境是hadoop-0.21 ; 可以独立安装zookeeper,但本次安装中使用hbase中
自带服务进行运行。

1. cd /data && wget http://192.168.1.3/hbase/hbase-0.90.5.tar.gz
2. tar -zxvf hbase-0.90.5.tar.gz && chown -R hadoop:hadoop hbase-0.90.5 (我hadoop环境和hive环境都是运行
在hadoop用户和组上,所以为了统一也把hadoop运行在hadoop用户上)
3. 修改hbase-env.sh 设置相应的环境变量
jdk环境变量: export JAVA_HOME=/usr/java/jdk1.6.0_21/
日志环境变量: export HBASE_LOG_DIR=${HBASE_HOME}/log/hbase
                    如果启动的时候发现寻找不了HBASE_HOME可以添加 export HBASE_HOME=/data/hbase-0.90.5
打开zk管理: export HBASE_MANAGES_ZK=true

4. 修改hbase-site.xml,配置hbase
配置hbase中在hadoop的根路径
<property>
    <name>hbase.rootdir</name>
    <value>hdfs://hadoop-29-63:9000/hbase</value>
    <description>The directory shared by region servers.</description>
</property>

打开集群模式

<property>
            <name>hbase.cluster.distributed</name>
            <value>true</value>
            <description>The mode the cluster will be in. Possible values are
              false: standalone and pseudo-distributed setups with managed Zookeeper
              true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)
            </description>
  </property>
hbase.cluster.distributed设置为true,表明是完全分布式的hbase集群


配置hbase所使用端口
<property>  
    <name>hbase.master</name>  
    <value>hdfs://hadoop-29-63:60000</value>  
</property> 

配置多路zookeeper,官网提示的个数最好为奇数(3,5,7)
<property>
    <name>hbase.zookeeper.quorum</name>
    <value>hadoop-29-74,hadoop-29-86,hadoop-29-115</value>
    <description>Comma separated list of servers in the ZooKeeper Quorum.      For example, "host1.mydomain.com,host2.mydomain.com,host3.mydomain.com".      By default this is set to localhost for local and pseudo-distributed modes      of operation. For a fully-distributed setup, this should be set to a full      list of ZooKeeper quorum servers. If HBASE_MANAGES_ZK is set in hbase-env.sh      this is the list of servers which we will start/stop ZooKeeper on.
    </description>
</property>

<property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/opt/log/zookeeper</value>
    <description>Property from ZooKeeper's config zoo.cfg.
        The directory where the snapshot is stored.
    </description>
</property>




5. 编辑regionservers文件,设置regionservers的服务器,和hadoop的slaves一样即可

6. 将本机已配置好的hbase,整个打一一个包,传输到其它各个节点中。

7. 启动hbase
${HBASE_HOME}/bin/start-hbase.sh (停止为${HBASE_HOME}/bin/stop-hbase.sh)

------------------------------------------------------------------------------------
Hbase默认只有一个Master,我们可以也启动多个Master:

${HBASE_HOME}/bin/hbase-daemon.sh start master
不过,其它的Master并不会工作,只有当主Master down掉后其它的Master才会选择接管Master的工作
------------------------------------------------------------------------------------



启动中可能出现这样的问题:
org.apache.hadoop.ipc.RPC$VersionMismatch: Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 42, server = 41) 

hadoop 与 hbase版本兼容问题
我是这样解决的:
把/data/hadoop-0.20.2/hadoop-0.20.2-core.jar /data/hbase-0.90.5/lib/hadoop-core-0.20-append-r1056497.jar 进行复制
(复制前可以备份一下被覆盖的jar包),copy过来后,记得文件的权限用户归属的也要和前jar包一样。
然后重启,就可以让hbase正常运行。

8.登录hbase
/data/hbase-0.90.5/bin/hbase shell

见到如上见面可以说明你的hbase安装成功

http://192.168.29.63:60010/master.jsp 通过连点查看信息


通过http://192.168.239.63:60010/zk.jsp 查看zookeeper信息

博客推荐文章
原文地址:https://www.cnblogs.com/lexus/p/2390309.html