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

Hbase zookeeper 单机安装

 
阅读更多

环境前提

1、JDK 1.8

2、Centos7

3、Hadoop 3.2安装

 

Hbase使用外部(非自带)zookeeper搭建伪分布式环境

1)下载 hbase-2.1.4-bin.tar.gz

2)解压和取别名

tar -zxvf ~/Downloads/hbase-2.1.4-bin.tar.gz -C ~/applications/

3)配置

环境变量

export HBASE_HOME=/opt/applications/hbase
export PATH=$HBASE_HOME/bin:$PATH

3.1 hbase-env.sh

修改conf/hbase-env.sh中的HBASE_MANAGES_ZK为false

 

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

export HBASE_LOG_DIR=/wls/log/hbase/logs

export JAVA_HOME=/usr/local/java/jdk/

 

- -如果你是使用hbase自带的zk就是true,如果使用自己的zk就是false
创建sudo mkdir -p /wls/log/hbase/logs

3.2 配置 hbase-site.xml

<!--默认情况下HBase是写到/tmp的。无此配置,数据会在重启的时候丢失-->
<property>
<name>hbase.rootdir</name>  
<value>hdfs://master/hbase</value
</property>
<property>
<name>hbase.cluster.distributed</name> 
<value>true</value>
</property>
<property> 
<name>hbase.zookeeper.property.clientPort</name> 
<value>2181</value> 
</property> 
<property> 
<name>hbase.zookeeper.quorum</name> 
<value>master</value> 
</property> 
<!--ZooKeeper的zoo.conf中的配置-->

<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/Data/zk/data</value>
</property>

<!-- 此处必须为true,不然hbase仍用自带的zk -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>

<!-- hbase主节点的位置 -->
<property>
<name>hbase.master.info.bindAddress</name>
<value>master</value>
<description>Enter the HBase Master server hostname</description>
</property>
<!--客户端与zk连接超时时间,默认值:180000(3min),线上配置:1200000(20min)-->
<property>
        <name>zookeeper.session.timeout</name>
        <value>1200000</value>
    </property>
   <!--Client端与zk发送心跳的时间间隔,默认值:6000(6s),线上配置:6000(6s)-->
<property>
        <name>hbase.zookeeper.property.tickTime</name>
        <value>6000</value>
    </property> 
<property>
        <name>dfs.support.append</name>
        <value>true</value>
    </property>
<property>
<name>hbase.regionserver.handler.count</name>
<value>60</value>

<!--默认: 10,RegionServers受理的RPC Server实例数量。对于Master来说,这个属性是Master受理的handler数量.-->
</property>

 <property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
    <description>
      Controls whether HBase will check for stream capabilities (hflush/hsync).

      Disable this if you intend to run on LocalFileSystem, denoted by a rootdir
      with the 'file://' scheme, but be mindful of the NOTE below.

      WARNING: Setting this to false blinds you to potential data loss and
      inconsistent system state in the event of process and/or node failures. If
      HBase is complaining of an inability to use hsync or hflush it's most
      likely not a false positive.
    </description>
  </property>

启动 start-hbase.sh,(启动的hbase的时候要保证hadoop集群已经启动)

报错

2019-04-04 15:07:06,126 ERROR [main] regionserver.HRegionServer: Failed construction RegionServer
java.lang.NoClassDefFoundError: org/apache/htrace/SamplerBuilder

解决方案,网上下载htrace-core-3.1.0-incubating.jar/wls/log/hadoop-yarn/apps

cp htrace-core-3.1.0-incubating.jar $HBASE_HOME/lib/

[xx@master hbase]$ start-hbase.sh
running master, logging to /wls/log/hbase/logs/hbase-xx-master-master.out
: running regionserver, logging to /wls/log/hbase/logs/hbase-xx-regionserver-master.out
[xx@master hbase]$ jps
16704 JobHistoryServer
17170 HRegionServer
11748 QuorumPeerMain
15943 ResourceManager
16104 NodeManager
15548 DataNode
15389 NameNode
17517 Jps
16991 HMaster

启动的HMaster十几秒后消失

查看hbase-xx-master-master.log

报错信息

hbase.rootdir: hdfs://master:9000/hbase

java.net.ConnectException: Call From localhost/127.0.0.1 to master:9000 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused

原因分析:

base.rootdir

  • 这个目录是 RegionServer 的共享目录,用来持久化 HBase。URL 需要是 “完全正确” 的,还要包含文件系统的 scheme。 例如 “/hbase” 表示 HBase 在 HDFS 中占用的实际存储位置,HDFS 的 NameNode 运行在主机名为 master 的 8020 端口,则 hbase.rootdir 的设置应为 “hdfs://master5:8020/hbase”。在默认情况下 HBase 是写在 /tmp 中的。
  • 不修改这个配置的话,数据会在重启的时候丢失。特别注意的是 hbase.rootdir 里面的 HDFS 地址是要跟 Hadoop 的 core-site.xml 里面的 fs.defaultFS 的 HDFS 的 IP 地址或者域名、端口必须一致
  • 前面hbase-site.xml配置为hdfs://master:9000/hbase

解决方案:

  • hbase-site.xml配置为hdfs://master/hbase,和Hadoop 的 core-site.xml 里面的 fs.defaultFS 的 HDFS 的 IP 地址或者域名、端口一致

 

新的异常

java.lang.IllegalStateException: The procedure WAL relies on the ability to hsync for proper operation during component failures, but the underlying filesystem does not support doing so. Please check the config value of 'hbase.procedure.store.wal.use.hsync' to set the desired level of robustness and ensure the config value of 'hbase.wal.dir' points to a FileSystem mount that can provide it.

hbase-site.xml增加配置 

<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>

<description>

Controls whether HBase will check for stream capabilities (hflush/hsync). Disable this if you intend to run on LocalFileSystem, denoted by a rootdir with the 'file://' scheme, but be mindful of the NOTE below. WARNING: Setting this to false blinds you to potential data loss and inconsistent system state in the event of process and/or node failures. If HBase is complaining of an inability to use hsync or hflush it's most likely not a false positive.

</description>

</property>

验证:

1)hdfs dfs -ls / 可以查看hbase是否在HDFS文件系统创建成功

[xx@master logs]$ hdfs dfs -ls /
Found 3 items
drwxr-xr-x - xx supergroup 0 2019-04-04 16:52 /hbase
drwxr-xr-x - xx supergroup 0 2019-04-04 16:10 /tmp

drwx------ - xx supergroup 0 2019-04-04 16:46 /user

其中hdfs会为每个用户都建一个回收站,用户删除文件时,文件并不是彻底地消失了,而是mv到了/user/用户名/.Trash/这个文件下,在一段时间内,用户可以恢复这些已经删除的文件。如果用户没有主动删除,那么系统会根据用户设置的时间把文件删除掉(某些默认设置是360分钟,用户也可以自己设置这个删除的时间设置),用户也可以手动清空回收站,这样删除的文件就再也找不回来了

2)通过webui验证: http://master:16010

3)使用hbase shell

分享到:
评论

相关推荐

    hbase和zookeeper配置

    HBase 和 ZooKeeper 配置详解 HBase 和 ZooKeeper 是两个非常重要的分布式系统组件,分别用于分布式数据库和分布式协调服务。今天,我们将详细介绍如何配置 HBase 和 ZooKeeper,以便更好地理解它们之间的交互。 ...

    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/下 ...

    centos7 安装 hbase单机版

    首先下载hbase安装包 wget http://mirror.bit.edu.cn/apache/hbase/stable/hbase-2.2.3-bin.tar.gz ...第二部 设置zookeeper选择 为true为hbase自带zookeeper ,false为自己部署的zookeeper export H

    hbase安装与使用

    1. **概述**:单机模式是 HBase 默认的安装模式,适用于测试和开发环境。在此模式下,HBase 使用本地文件系统存储数据,不依赖于 Hadoop 和 HDFS。 2. **启动 HBase**:在根用户下启动 HBase 服务。 ```bash bin...

    Hbase的安装过程及基本操作

    在实际应用中,还需要根据具体需求进一步配置Hbase,如设置Zookeeper地址、优化性能参数等。同时,理解Hbase的核心概念,如Region、RegionServer、WAL和HFile,对于高效使用Hbase至关重要。在实践中不断学习和探索,...

    hbase-2.4.17-bin 安装包

    因此,在安装HBase之前,需要确保Hadoop和Zookeeper已经正确安装并运行。 五、HBase优化与扩展 1. Region分裂与合并:随着数据增长,Region会自动分裂,保持大小均衡。必要时,可以手动合并Region。 2. ...

    Hadoop Zookeeper HBase集群

    标题 "Hadoop Zookeeper HBase集群" 涉及到的是大数据处理领域中的三个关键组件:Hadoop、Zookeeper和HBase。这三个组件在构建分布式系统中起着至关重要的作用。 首先,Hadoop是Apache软件基金会开发的一个开源框架...

    Hbase 安装与基本使用

    如果是单机模式,可以使用`start-hbase.sh --nonInteractive`避免交互式确认。 2. **检查状态**:通过`hbase zkcli -server localhost:2181`连接ZooKeeper,然后用`ls /hbase`命令查看HBase是否正常启动。 3. **停止...

    hbase-2.3.5单机一键部署工具

    注意:zookeeper3.4.13和hbase2.3.5都是采用docker-compose方式部署 原文链接:https://blog.csdn.net/m0_37814112/article/details/120915194 说明:使用外部zookeeper3.4.13之hbase2.3.5一键部署工具,支持部署、...

    基于 HBase 安装 OpenTSDB 单机环境

    整体来看,安装OpenTSDB单机环境的整个过程涉及到了多个组件的配置和测试,包含了对操作系统环境的搭建、Java环境的配置、Zookeeper的安装和配置、HBase的安装以及OpenTSDB的安装和测试。每个步骤都需要细心操作,...

    大数据技术基础实验报告-HBase安装配置和应用实践.doc

    - 修改`/usr/local/hbase/conf/hbase-env.sh`,设置`JAVA_HOME`为JDK的安装路径,并设置`HBASE_MANAGES_ZK`为`true`,表示HBase管理自己的ZooKeeper实例。 - 配置`/usr/local/hbase/conf/hbase-site.xml`,尤其是`...

    Linux环境Hadoop2.6+Hbase1.2集群安装部署

    ### Linux环境Hadoop2.6+Hbase1.2集群安装部署 #### 一、概述 在本篇文章中,我们将详细介绍如何在Linux环境下搭建Hadoop 2.6和HBase 1.2集群。该教程涵盖了从环境准备、Hadoop与HBase的安装配置到集群的测试等全...

    windows中安装Hadoop与Hbase

    在Windows系统中安装和配置Hadoop和Hbase,是为了建立起一个适合单机测试和开发的本地大数据环境。Hadoop是一个由Apache基金会开发的开源框架,用于存储和处理大规模数据,它通过可靠的分布式存储(HDFS)和分布式...

    hadoop-0.20.205.0和hbase-0.90.5,集群和单机 安装配置

    ### Hadoop与HBase集群及单机安装配置详解 #### 一、背景介绍 随着大数据技术的发展,Hadoop和HBase成为了处理大规模数据集的重要工具。Hadoop是一种能够存储和处理大量数据的分布式计算框架,而HBase则是在Hadoop...

    hbase2.2安装文件

    3. **配置HBase**:编辑`conf/hbase-site.xml`文件,设置必要的配置参数,如`hbase.rootdir`(HBase的数据目录,通常在HDFS上)、`hbase.zookeeper.quorum`(Zookeeper集群的服务器列表)等。 4. **配置Hadoop**:...

    hbase单机搭建文档1

    在搭建 HBase 单机环境时,首要任务是确保你的系统已经安装了 Java 环境。HBase 的运行依赖于 Java,因此需要设置 `JAVA_HOME` 环境变量指向 JDK 的安装路径。例如,在这个环境中,`JAVA_HOME` 被设置为 `/usr/local...

    HBase1.4.13安装步骤

    在单机模式下,HBase的配置主要涉及到设置JAVA环境变量,并在 `hbase-env.sh` 文件中设置 `HBASE_MANAGES_ZK` 为 `true`,这表示HBase将管理ZooKeeper实例。同时,我们需要配置 `hbase-site.xml` 文件,以定义HBase...

    hbase-2.2.2单机一键部署工具

    注意:zookeeper3.4.13和hbase2.2.2都是采用docker-compose方式部署 原文链接:https://blog.csdn.net/m0_37814112/article/details/118794130 说明:使用外部zookeeper之hbase2.2.2一键部署工具,支持部署、启动、...

    hbase-2.0.1-bin.tar

    《HBase 2.0.1 单机安装教程详解》 HBase,全称Apache HBase,是一款基于Google Bigtable理念设计的开源分布式数据库,是Hadoop生态系统中的重要组件。它提供了高度可靠、高性能、分布式、列式存储的多版本、实时的...

Global site tag (gtag.js) - Google Analytics