本篇介绍两种HBase的安装方式:本地安装方式和伪分布式安装方式。

安装的前提条件是已经安装成功了hadoop,并且hadoop的版本号要和hbase的版本号相匹配。

我将要安装的hbase是hbase-0.94.11版本号,须要的hadoop是hadoop-1.2.1版本号。

hbase下载地址:http://mirror.bit.edu.cn/apache/hbase/hbase-0.94.11/

将下载的hbase-0.94.11解压到对应的文件夹,如/usr/hbase-0.94.11

将hbase-0.90.4重命名为hbase

mv hbase-0.94.11 hbase

首先须要将hbase下的bin文件夹加入到系统的path中,改动/etc/profile,加入例如以下的内容:

export  PATH=$PATH:/usr/hbase/bin

1.单机安装  改动hbase下的conf文件夹下的配置文件hbase-env.sh

首先,改动hbase-env.sh中的例如以下属性:

export JAVA_HOME=/usr/java/jdk1.6

export HBASE_MANAGES_ZK=true  //此配置信息,设置由hbase自己管理zookeeper,不须要单独的zookeeper。

2.伪分布式安装  改动hbase-0.90.4下的conf文件夹下的配置文件hbase-env.sh和hbase-site.xml

首先,改动hbase-env.sh中的例如以下属性:

export JAVA_HOME=/usr/java/jdk1.6 

export HBASE_CLASSPATH=/usr/hadoop/conf 

export HBASE_MANAGES_ZK=true

然后,改动hbase-site.xml文件

<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://192.168.70.130:9000/hbase</value> >//此属性要依据自己的hadoop的配置信息进行对应的改动
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property> </configuration>

完毕以上操作,就能够正常启动Hbase了,启动顺序:先启动Hadoop——>再启动Hbase,关闭顺序:先关闭Hbase——>再关闭Hadoop。

首先启动hadoop,(假设hadoop已经正常启动能够不再启动,直接查看进程是否正确,假设进程不对,那么必须又一次调试hadoop确保hadoop正常执行后再启动hbase),这里还要让HDFS处于非安全模式:bin/hadoop dfsadmin -safemode leave

start-all.sh    //启动hadoop
jps //查看进程

2564 SecondaryNameNode
2391 DataNode
2808 TaskTracker
2645 JobTracker
4581 Jps
2198 NameNode

启动hbase:

start-hbase.sh    

jps 查看:

2564 SecondaryNameNode
2391 DataNode
4767 HQuorumPeer
2808 TaskTracker
2645 JobTracker
5118 Jps
4998 HRegionServer
4821 HMaster
2198 NameNode

能够看到,HBase的相关进程已经启动了

hbase shell 

进入shell模式

HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.94.12, r1524863, Fri Sep 20 00:25:45 UTC 2013 hbase(main):001:0>

通过:http://localhost:60010/master-status ,能够訪问HBase状态

停止hbase 假设在操作Hbase的过程中错误发生,能够通过hbase安装主文件夹下的logs子文件夹查看错误原因

先停止hbase

stop-hbase.sh

再停止hadoop

stop-all.sh

错误解决方法:

1.报错例如以下: localhost:  Exception in thread "main" org.apache.hadoop.ipc.RPC$VersionMismatch: Protocol  org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 42,  server
=  41) 所以假设遇到以上错误,就通过替换jar包解决。(一般使用新版本号的hadoop 和 hbase不会出现这样的错误)

替换Hbase中的jar包 须要用{HADOOP_HOME}下的hadoop-1.2.1-core.jar  替换掉{HBASE_HOME}/lib文件夹下的hadoop-1.2.1-append-r1056497.jar  。假设不替换jar文件Hbase启动时会由于hadoop和Hbase的client协议不一致而导致HMaster启动异常。

2.错误例如以下:

SLF4J: Class path contains multiple SLF4J bindings.

SLF4J: Found binding in [jar:file:/........../lib/slf4j-log4j12-1.5.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: Found binding in [jar:file:/........../slf4j-log4j12-1.5.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]

SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.

:hadoop中lib里slf4j-api-1.4.3.jar、slf4j-log4j12-1.4.3.jar和hbase中lib里相应的这两个jar包版本号不一致导致冲突,把hbase里的替换成hadoop里的就能够了

3.有时候安装hbase全然分布式时会出现奇怪的问题,先去查下集群中各个server时间,是否相差太多,最好一致

NTP:集群的时钟要保证主要的一致。稍有不一致是能够容忍的,可是非常大的不一致会 造成奇怪的行为。 执行 NTP 或者其它什么东西来同步你的时间.

假设你查询的时候或者是遇到奇怪的故障,能够检查一下系统时间是否正确!

设置集群各个节点时钟:date -s “2012-02-13 14:00:00”

4.2014-10-09 14:11:53,824 WARN org.apache.hadoop.hbase.master.AssignmentManager: Failed assignment of -ROOT-,,0.70236052 to 127.0.0.1,60020,1412820297393, trying to assign
elsewhere instead; retry=0

org.apache.hadoop.hbase.client.RetriesExhaustedException: Failed setting up proxy interface org.apache.hadoop.hbase.ipc.HRegionInterface to /127.0.0.1:60020 after attempts=1

at org.apache.hadoop.hbase.ipc.HBaseRPC.waitForProxy(HBaseRPC.java:242)

at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getHRegionConnection(HConnectionManager.java:1278)

at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getHRegionConnection(HConnectionManager.java:1235)

at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getHRegionConnection(HConnectionManager.java:1222)

at org.apache.hadoop.hbase.master.ServerManager.getServerConnection(ServerManager.java:496)

at org.apache.hadoop.hbase.master.ServerManager.sendRegionOpen(ServerManager.java:429)

at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1592)

at org.apache.hadoop.hbase.master.AssignmentManager.assign(AssignmentManager.java:1329)

at org.apache.hadoop.hbase.master.AssignCallable.call(AssignCallable.java:44)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

at java.util.concurrent.FutureTask.run(FutureTask.java:138)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)

at java.lang.Thread.run(Thread.java:662)

Caused by: java.net.ConnectException: Connection refused

解决例如以下:

/etc/hosts里边配置出的问题

127.0.1.1 后边是相应的主机名

将127.0.1.1改为127.0.0.1,问题解决


hbase总结(二)-hbase安装的更多相关文章

  1. HBase 系列(二)安装部署

    HBase 系列(二)安装部署 本节以 Hadoop-2.7.6,HBase-1.4.5 为例安装 HBase 环境.HBase 也有三种模式:本地模式.伪分布模式.分布模式. 一.环境准备 (1) ...

  2. Hbase入门(二)——安装与配置

    本文讲述如何安装,部署,启停HBase集群,如何通过命令行对Hbase进行基本操作. 并介绍Hbase的配置文件. 在安装前需要将所有先决条件安装完成. 一.先决条件 1.JDK 和Hadoop一样, ...

  3. 最新hadoop+hbase+spark+zookeeper环境安装(vmmare下)

    说明:我这里安装的版本是hadoop2.7.3,hbase1.2.4,spark2.0.2,zookeeper3.4.9 (安装包:链接:http://pan.baidu.com/s/1c25hI4g ...

  4. Hadoop集群中Hbase的介绍、安装、使用

    导读 HBase – Hadoop Database,是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群. 一.Hbase ...

  5. 大数据学习系列之二 ----- HBase环境搭建(单机)

    引言 在上一篇中搭建了Hadoop的单机环境,这一篇则搭建HBase的单机环境 环境准备 1,服务器选择 阿里云服务器:入门型(按量付费) 操作系统:linux CentOS 6.8 Cpu:1核 内 ...

  6. Ubuntu16.04下伪分布式环境搭建之hadoop、jdk、Hbase、phoenix的安装与配置

    一.准备工作 安装包链接: https://pan.baidu.com/s/1i6oNmOd 密码: i6nc 环境准备 修改hostname: $ sudo vi /etc/hostname why ...

  7. HBase的概述和安装部署

    一.HBase概述 1.HBase是Hadoop数据库,是一个分布式.可扩展的大数据存储. HBase是用于对大数据进行随机.实时读写访问的非关系型数据库,它的目标托管非常大的表——数十亿行N百万列. ...

  8. 【转载】Hadoop 2.7.3 和Hbase 1.2.4安装教程

    转载地址:http://blog.csdn.net/napoay/article/details/54136398 目录(?)[+]   一.机器环境 系统:MAC OS Hadoop:2.7.3 H ...

  9. Hadoop生态圈-hbase介绍-伪分布式安装

    Hadoop生态圈-hbase介绍-伪分布式安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HBase简介 HBase是一个分布式的,持久的,强一致性的存储系统,具有近似最 ...

  10. HBase(二)CentOS7.5搭建HBase1.2.6HA集群

    一.安装前提 1.HBase 依赖于 HDFS 做底层的数据存储 2.HBase 依赖于 MapReduce 做数据计算 3.HBase 依赖于 ZooKeeper 做服务协调 4.HBase源码是j ...

随机推荐

  1. Study notes for Latent Dirichlet Allocation

    1. Topic Models Topic models are based upon the idea that documents are mixtures of topics, where a ...

  2. 遍历关联数组 index by varchar2

    --字符串序列要这样 declare     type t   is table of number(3) index by varchar2(3);    hash_t t;      l_row ...

  3. HTML语言简单回顾

    简单复习一下html语言. html的基本结构如下: <html> <head> <title></title> </head> <b ...

  4. 【zigbee】开启及清除NV_RESTORE信息的方法

    1.NV_RESTORE宏的作用 问:coo和终端都已经组网成功 1.这时将coo断电,又一次上电,组网后终端的短地址是否不变? 2.这时终端断电,又一次上电,组网后终端的短地址是否不变? 3.这时C ...

  5. RStudio版本号管理 整合Git

    本文为原创,转载注明出处. 系统环境: win7 x64 R-3.1.0-win.exe RStudio-0.98.507.exe 前置条件:必须拥有github仓库: 如:https://githu ...

  6. ALV前导零的问题

    ALV的IT_FIELDCAT参数中L_ZERO 选项置位的话,对NUM类型的前导0是可以输出的,但是有个很重要的前提条件,NO_ZERO不可以置位,否则L_ZERO是失效的.

  7. Android——与查询联系人相关的3张表

  8. 在 SSIS package 中使用FTP

    在ssis 包中使用FTP 实际上很简单, 直接拿一个FTP控制流(FTP 任务) ,配置一下FTP 服务器就可以了, 但是当我想在SQL Server Job 中使用这个功能时却报了个错(如下), ...

  9. HTML——使用表格对表单进行布局

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3Vuc2h1bWlu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...

  10. Python+Django+SAE系列教程15-----输出非HTML内容(图片/PDF)

    一个Django视图函数 必须 接受一个HttpRequest 实例作为它的第一个參数 返回一个HttpResponse 实例 从一个视图返回一个非HTML 内容的关键是在构造一个 HttpRespo ...