`
genius_bai
  • 浏览: 81741 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hadoop + HBase 集群

阅读更多

Hadoop + HBase 集群

最好在各个服务器的/etc/hosts里面,配置机器名:IP对,以下所有配置文件,都用机器名

192.168.2.79  webdev

192.168.5.11  TEST-A

192.168.5.12  TEST-B    (后来新增)

 

下载最新的HBase

http://labs.renren.com/apache-mirror/hadoop/hbase/hbase-0.20.3/

 

安装步骤

http://hadoop.apache.org/hbase/docs/r0.20.3/api/overview-summary.html#overview_description

 

2.79

cp hbase-0.20.3.tar.gz /home/iic/

cd /home/iic

gzip -d hbase-0.20.3.tar.gz

tar xvf hbase-0.20.3.tar

cd hbase-0.20.3

chmod 700 bin/*

vi conf/hbase-env.sh: export JAVA_HOME=/home/bmb/jdk1.6.0_16

 

修改2.79的conf/hadoop-env.sh,加入对HBASE类库的引用

 

export HBASE_HOME=/home/iic/hbase-0.20.3

(此处的配置要加上$HADOOP_CLASSPATH:,不然会影响Hive的启动)
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HBASE_HOME/hbase-0.20.3.jar:$HBASE_HOME/hbase-0.20.3-test.jar:$HBASE_HOME/conf:${HBASE_HOME}/lib/zookeeper-3.3.0.jar

 

5.11

scp hbase-0.20.3.tar iic@192.168.5.11:/home/iic/

vi conf/hbase-env.sh: export JAVA_HOME=/home/iic/jdk1.6.0_16

 

 

 

1:提高ulimit数量

ulimit -n 2048

2:所有机器的时间必须同步

date -s 10:54:12     

date -s 100412

3:修改 ${HBASE_HOME}/conf/hbase-site.xml,指向2.79 Hadoop集群 (/hbase必须自动创建)

  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://webdev: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>

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

      <value>webdev,TEST-A</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>

4:修改2.79 ${HBASE_HOME}/conf/regionservers

webdev

TEST-A

TEST-B

5:HBase 依赖 ZooKeeper 集群 (本例子使用默认的Hbase启动内嵌的Zookeeper,而不是使用单独Zookeeper集群)

${HBASE_HOME}/conf/hbase-env.sh的变量HBASE_MANAGES_ZK 默认true.  tells HBase whether to start/stop the ZooKeeper quorum servers alongside the rest of the servers.

 

5:让HBase看到Hadoop的HDFS client configuration

 

 

  • Add a pointer to your HADOOP_CONF_DIR to CLASSPATH in hbase-env.sh.
  • Add a copy of hdfs-site.xml (or hadoop-site.xml) to ${HBASE_HOME}/conf, or
  • if only a small set of HDFS client configurations, add them to hbase-site.xml.
  •  

    此功能很重要,比如Hadoop指定了replication是2,如果不按照上面的操作,则Hbase不会跟Hadoop一致。 

    HBase默认的replication是3

    cd /home/iic/hbase-0.20.3

    vi conf/hbase-env.sh

    export HBASE_CLASSPATH=/home/iic/hadoop-0.20.2

     

    启动Hbase集群

    /home/iic/hbase-0.20.3

    启动后,日志hbase-iic-master-webdev.log出现错误:

    Caused by: java.lang.IllegalArgumentException: Wrong FS: hdfs://192.168.2.79:9000/hbase, expected: hdfs://webdev:9000
    修改:hbase-site.xml

    重启后,还是出错:

    尝试把“hbase.zookeeper.quorum”的IP“192.168.2.79,192.168.5.11”,改为机器名“webdev,TEST-A”

    在/etc/hosts中互相添加映射

    192.168.2.79 webdev
    192.168.5.11 TEST-A

    重启后,5.11的zookeeper日志出现错误:org.apache.zookeeper.KeeperException$NodeExistsException: KeeperErrorCode = NodeExists

     

    最后发现5.11的/etc/hosts是如下配置,

    127.0.0.1 TEST-A localhost.localdomain localhost

    由于以上的配置,导致2.79的master.log

     Updated ZNode /hbase/rs/1271048379831 with data 127.0.0.1:60020
     Updated ZNode /hbase/rs/1271048380554 with data 192.168.2.79:60020

    而5.11想再次注册Test-A时,发现已经存在相同的“ data 127.0.0.1:60020”

     修改/etc/hosts成:

    127.0.0.1 localhost.localdomain localhost
    192.168.5.11    TEST-A

     

    重启后,RegionServer运行正常,但是5.11的Zookeeper日志有错误:

    Got exception when processing sessionid:0x124827089980006 type:create cxid:0x1d zxid:0xfffffffffffffffe txntype:unknown n/a
    org.apache.zookeeper.KeeperException$NodeExistsException: KeeperErrorCode = NodeExists

    此错误不影响HBase的运行,临时解决方案是采用单ZK Server
    清空HDFS /hbase目录,可以重新生成Zookeeper节点信息:

    bin/hadoop fs -rmr /hbase

    修改 <value>webdev,TEST-A</value>为 <value>webdev</value>,但QuarmServer

    但是,运行一段时间,仍然出现以上错误。


    升级ZooKeeper版本,把hbase-0.20.3自带的zookeeper-3.2.2.jar,升级到最新版的zookeeper-3.3.0.jar。

    rm -rf /tmp/hbase-iic/zookeeper/

    bin/hadoop fs -rmr /hbase

     出现“2010-04-13 09:40:02,685 INFO org.apache.zookeeper.server.PrepRequestProcessor: Got user-level KeeperException when processing sessionid:0x127f4d2acc70001 type:create cxid:0x4 zxid:0xfffffffffffffffe txntype:unknown reqpath:n/a Error Path:/hbase Error:KeeperErrorCode = NodeExists for /hbase”

    从日志看,这个异常的日志级别是INFO,可能是正常的情况,不影响Hbase运行。

    但是升级Zookeeper以后,带来新的问题,Hadoop不能Map Reduce(是因为换了ZooKeeper,没有重新启动Hadoop?hadoop-env.sh引用旧版的ZooKeeper):

    java.io.IOException: java.io.IOException: Could not find requested method, the usual cause is a version mismatch between client and server.

     

    ps -ef|grep hadoop 得到的NameNode中,Classpath指向/home/iic/hbase-0.20.3/lib/zookeeper-3.2.2.jar org.apache.hadoop.hdfs.server.namenode.NameNode。修改hadoop

    vi conf/hadoop-env.sh

     

     

     

    查看Master

    http://192.168.2.79:60010/master.jsp

     

    查看Region Server

    http://webdev:60030/regionserver.jsp

     

    http://test-a:60030/regionserver.jsp

     

    查看ZK Tree

    http://192.168.2.79:60010/zk.jsp

     

     

     

    批量删除Region Server进程

    kill -9 `ps -ef |grep hbase |grep -v grep |awk '{print $2}' `

    kill -9 `ps -ef |grep hbase.regionserver |grep -v grep  |awk '{print $2}' `

     

     

    bin/hbase-daemon.sh stop zookeeper

    bin/hbase-daemon.sh start zookeeper

     

     

    ----------------------------------------------------------------

    测试Hbase按照是否正确

     

    bin/hbase shell

    create 'scores', 'grade', 'course'

    list

    describe 'scores'

    put 'scores', 'Tom', 'grade:', '1'

    put 'scores', 'Tom', 'course:math', '87'

    put 'scores', 'Tom', 'course:art', '97'

    put 'scores', 'Jerry', 'grade:', '2'

    put 'scores', 'Jerry', 'course:math', '100'

    put 'scores', 'Jerry', 'course:art', '80'

    get 'scores', 'Tom'

     

    get 'scores', 'Jerry'

     

    scan 'scores'

    scan 'scores', ['course:']

     

    ----------------------------------------------------------------

    Hbase Client:D:\7g\Projects\BMB\Hadoop-Projects\Hbase-Learning

    项目中包含hbase-site.xml

    同时覆盖三个参数:<name>hbase.master</name>,<name>hbase.rootdir</name>,<name>hbase.zookeeper.quorum</name>

     

     

     

     

    分享到:
    评论

    相关推荐

      hadoop+hbase集群搭建 详细手册

      Hadoop+HBase集群搭建详细手册 本文将详细介绍如何搭建Hadoop+HBase集群,包括前提准备、机器集群结构分布、硬件环境、软件准备、操作步骤等。 一、前提准备 在搭建Hadoop+HBase集群之前,需要准备以下几个组件:...

      hadoop+hbase+zookeeper集群配置流程及文件

      提供的文档`hadoop_zookeeper_hbase集群配置.docx`应包含详细的步骤和配置示例,而`配置文件.rar`则可能包含了预设的配置模板,可以作为配置参考。在实际操作时,务必根据具体环境调整配置,确保所有节点之间的网络...

      大数据Hadoop+HBase+Spark+Hive集群搭建教程(七月在线)1

      - 在Hadoop集群运行的基础上安装HBase,确保Hadoop的相关环境变量被HBase使用。 - 配置HBase的`hbase-site.xml`以指定Zookeeper地址和集群模式。 - 启动HBase服务,包括Master和RegionServer。 3. **Spark**:...

      Hadoop2.2+Zookeeper3.4.5+HBase0.96集群环境搭建

      Zookeeper是Hadoop和HBase集群环境中的核心组件,负责节点管理和配置管理。安装Zookeeper需要下载zookeeper-3.4.5.tar.gz安装包,然后解压缩并配置Zookeeper。 HBase0.96安装和部署 HBase是基于Hadoop的NoSQL...

      hadoop+hbase集群安装

      本文详细介绍了如何在多台服务器上部署Hadoop + HBase集群的过程,包括了从基础环境配置到Hadoop和HBase的具体安装步骤。通过这些步骤,您可以成功地搭建起一个功能完备的分布式计算和存储平台,为大规模数据处理...

      zookeeper+hadoop+hbase+hive(集成hbase)安装部署教程(超详细).docx

      jdk1.8.0_131、apache-zookeeper-3.8.0、hadoop-3.3.2、hbase-2.4.12 mysql5.7.38、mysql jdbc驱动mysql-connector-java-8.0.8-dmr-bin.jar、 apache-hive-3.1.3 2.本文软件均安装在自建的目录/export/server/下 ...

      Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)

      Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase) 一、Hadoop HA高可用集群概述 在大数据处理中,高可用集群是非常重要的,Hadoop HA高可用集群可以提供高可靠性和高可用性,确保数据处理不中断。该集群由...

      徐老师大数据培训Hadoop+HBase+ZooKeeper+Spark+Kafka+Scala+Ambari

      根据提供的标题、描述、标签及部分内容链接,我们可以推断出这是一个关于大数据技术栈的培训课程,涉及的技术包括Hadoop、HBase、Zookeeper、Spark、Kafka、Scala以及Ambari。下面将针对这些技术进行详细的介绍和...

      Hadoop+Spark+Hive+HBase+Oozie+Kafka+Flume+Flink+ES+Redash等详细安装部署

      在大数据领域,构建一个完整的生态系统是至关重要的,其中包括多个组件,如Hadoop、Spark、Hive、HBase、Oozie、Kafka、Flume、Flink、Elasticsearch和Redash。这些组件协同工作,提供了数据存储、处理、调度、流...

      Hadoop+Hbase搭建云存储总结

      - **Hbase部署:** 在Hadoop集群的基础上安装Hbase,并配置Master节点和RegionServer。 - **数据迁移与同步:** 将现有数据迁移到HDFS中,并在Hbase中建立相应的表结构。 - **系统优化:** 根据业务需求调整HDFS...

      hadoop+HBase教程

      理解HBase的表结构、行键、列族、时间戳以及如何进行数据的增删改查操作是搭建HBase集群的基础。 5. Hadoop和HBase的整合应用。了解如何在Hadoop集群上安装和配置HBase,以及如何将HBase作为数据存储层集成到Hadoop...

      安装笔记:hadoop+hbase+sqoop2+phoenix+kerberos

      【标题】:“安装笔记:hadoop+hbase+sqoop2+phoenix+kerberos” 【描述】:在本文中,我们将探讨如何在两台云主机(实际环境可能需要三台或更多)上安装Hadoop、HBase、Sqoop2、Phoenix以及Kerberos的详细过程,...

      Hadoop+Hbase技术使用文档(整理过的)

      ### Hadoop+Hbase技术使用文档关键知识点 #### 一、文档目的 本文档旨在指导用户如何在单节点上安装并配置Hadoop与Hbase,从而实现数据的分布式存储和处理。通过本教程的学习,读者将能够理解并掌握Hadoop与Hbase的...

      hadoop+hbase+hive集群搭建

      在构建Hadoop+HBase+Hive集群的过程中,涉及了多个关键步骤和技术要点,下面将对这些知识点进行详细的解析。 ### 1. 时间同步:NTP配置 在分布式系统中,时间的一致性至关重要,特别是在处理日志、事件排序以及...

      hadoop+zookeeper+hbase集群搭建配置说明

      在搭建HBase集群时,我们需要配置HBase的主RegionServer(Master)、RegionServer实例以及与Zookeeper的连接。此外,还要设置表和列族的属性,如块大小、缓存设置等,以优化性能。 在实际搭建过程中,首先,你需要...

      HADOOP+HBASE+HIVE整合工程和文档

      在大数据处理领域,Hadoop、HBase和Hive是三个重要的组件,它们分别扮演着不同的角色,共同构建了一个高效、可扩展的数据处理生态系统。本文将详细介绍这三个组件的整合工程和相关文档,帮助读者理解如何在实际项目...

      Centos+Hadoop+Hive+HBase

      以上步骤完成了Centos下的JDK安装及配置,为后续搭建Hadoop集群打下了坚实的基础。 #### 总结 本文详细介绍了如何在Centos虚拟机环境中安装和配置JDK与Hadoop的基本流程。这为后续Hive与HBase等大数据组件的部署...

      hadoop+zookeeper+hbase+hive集群安装配置

      从零开始hadoop+zookeeper+hbase+hive集群安装搭建,内附详细配置、测试、常见error等图文,按照文档一步一步搭建肯定能成功。(最好用有道云打开笔记)

      Hadoop+Zookeeper+Hbase+Hive部署.doc

      大数据平台搭建之 Hadoop+Zookeeper+Hbase+Hive 部署指南 大数据平台搭建是指通过集成多种大数据处理技术,构建一个功能强大、可靠、高效的数据处理平台。本文档主要介绍如何部署 Hadoop、Zookeeper、Hbase、Hive ...

      Docker(Hadoop-3.3.1+HBase-2.4.16+Zookeeper-3.7.1+Hive-3.1.3)配置文件

      Docker(Hadoop_3.3.1+HBase_2.4.16+Zookeeper_3.7.1+Hive_3.1.3 )配置文件 搭建集群环境

    Global site tag (gtag.js) - Google Analytics