折腾了这么久,hbase终于装好了

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

上篇:

Hadoop3集群搭建之——虚拟机安装

Hadoop3集群搭建之——安装hadoop,配置环境

Hadoop3集群搭建之——配置ntp服务

Hadoop3集群搭建之——hive安装

  1.  

在安装之前,查了一下资料,关于hbase与hadoop兼容性的。

最开始看hadoop的时候,在好像慕课网上看的,hadoop全家桶之间的兼容性问题(以前被java web的各种jar包坑坏了的Java菜鸟,心理有点小阴影),还有特意出的cdh版本(Cloudera 公司出的,每个hadoop的cdh版本,都有对应的其他组件的cdh版本)

然后,感觉就坏了,我装的hadoop 3.0.1是最新出的,hbase的最新版本肯定对应不上啊。

然后我就发现了下面这张,hbase 兼容hadoop的版本图:

  1. "S" = supported
  2.  
  3. "X" = not supported
  4.  
  5. "NT" = Not tested

果然,hadoop3没有对应的hbase版本

下载最新的hbase2.0.2,查看lib目录发现hadoop 的版本是: 2.7.4

犹豫再三

突然想起,公司大神搭的新平台就是hadoop3,里面也有用到hbase,看下版本,得到如下答案:

  1. hbase-1.2.

what fuck? 看不懂,不过不影响,模仿一下。/偷笑/偷笑

然后就去官网: 下载地址    下个了1.2.6。

安装步骤如下:

1、上传安装包到服务器、解压,重命名:

  1. tar -zxvf hbase-1.2.-bin.tar.gz
    mv hbase-1.2.6-bin.tar.gz hbase1.2.6

2、配置hbase环境变量

  1. vi .baserc
  2.  
  3. #添加如下内容

 #hbase
 HBASE_HOME=/opt/hadoop/hbase1.2.6
  export PATH=$HBASE_HOME/bin:$PATH

#使配置文件生效

source .baserc

3、修改 /conf/hbase-env.sh

找到如下两行,关闭注释,修改如下:

  1. export JAVA_HOME=/opt/hadoop/jdk1. #配置jdk路径
  2.  
  3. #使用hbase自带的zookeeper
  4. export HBASE_MANAGES_ZK=true

4、修改/conf/hbase-site.xml

添加如下内容:

  1. <configuration>
  2. <property>
  3.         <name>hbase.rootdir</name> <!-- hbase存放数据目录 -->
  4.         <value>hdfs://venn05:8020/hbase/hbase_db</value>
  5.  
  6.           <!-- 端口要和Hadoop的fs.defaultFS端口一致-->
  7.       </property>
  8.       <property>
  9.         <name>hbase.cluster.distributed</name> <!-- 是否分布式部署 -->
  10.         <value>true</value>
  11.       </property>
  12.       <property>
  13.         <name>hbase.zookeeper.quorum</name> <!-- zookooper 服务启动的节点,只能为奇数个 -->
  14.         <value>venn05,venn06,venn07</value>
  15.       </property>    
  16.  
  17.        <property><!--zookooper配置、日志等的存储位置,必须为以存在 -->
  18.           <name>hbase.zookeeper.property.dataDir</name>
  19.           <value>/opt/hadoop/hbase1.2.6/hbase/zookeeper</value>
  20.        </property>
  21. <property><!--hbase web 端口 -->
  22.           <name>hbase.master.info.port</name>
  23.           <value></value>
  24.        </property>
  25. </configuration>
  1. 注:zookeeper有这样一个特性:集群中只要有过半的机器是正常工作的,那么整个集群对外就是可用的。
    也就是说如果有2zookeeper,那么只要有1个死了zookeeper就不能用了,因为1没有过半,
    所以2zookeeper的死亡容忍度为0;同理,要是有3zookeeper,一个死了,还剩下2个正常的,
    过半了,所以3zookeeper的容忍度为1
    同理你多列举几个:->;->;->;->;->2会发现一个规律,2n2n-1的容忍度是一样的,
    都是n-,所以为了更加高效,何必增加那一个不必要的zookeeper

5、配置slaver

修改 regionservers 文件,删除localhost,添加region server 的ip

  1. [hadoop@venn05 conf]$ more regionservers
  2. venn06
  3. venn07
  4. venn08

5、发送.baserc 和hbase到其他节点

  1. scp .bashrc venn06:/opt/hadoop/
  2. scp .bashrc venn07:/opt/hadoop/
  3. scp .bashrc venn08:/opt/hadoop/
  4. scp -r hbase1.2.6 venn06:/opt/hadoop/
  5. scp -r hbase1.2.6 venn07:/opt/hadoop/
  6. scp -r hbase1.2.6 venn08:/opt/hadoop/

配置完成,启动看下效果

hbase 启动命令:

  1. start-all.sh #启动hadoop
    start-hbase.sh #会自动启动其他节点

查看主节点进程:

  1. [hadoop@venn05 conf]$ jps
  2. NodeManager
  3. Jps
  4. NameNode
  5. SecondaryNameNode
  6. HMaster
  7. Main
  8. ResourceManager
  9. HQuorumPeer

查看其他节点进程:

  1. [hadoop@venn06 ~]$ jps
  2. HQuorumPeer
  3. HRegionServer
  4. NodeManager
  5. DataNode
  6. Jps

查看web界面:

地址:http://venn05:16010 如下:

启动成功,尝试一下:

启动hbase 客户端:

[hadoop@venn05 ~]$ hbase shell  #启动hbase客户端
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/hadoop/hbase1.2.6/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/hadoop/hadoop3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/hadoop/hive2.3.3/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 1.2.6, rUnknown, Mon May 29 02:25:32 CDT 2017

hbase(main):001:0> create 'test','cf'  #创建一个test表,一个cf 列簇
0 row(s) in 2.4480 seconds

=> Hbase::Table - test
hbase(main):002:0> list #查看hbase 所有表
TABLE
test
venn
2 row(s) in 0.0280 seconds

=> ["test", "venn"]
hbase(main):003:0> put 'test','1000000000','cf:name','venn' #put一条记录到表test,rowkey 为 1000000000,放到 name列上
0 row(s) in 0.1650 seconds

hbase(main):004:0> put 'test','1000000000','cf:sex','male'  #put一条记录到表test,rowkey 为 1000000000,放到 sex列上
0 row(s) in 0.0410 seconds

hbase(main):005:0> put 'test','1000000000','cf:age','26'    #put一条记录到表test,rowkey 为 1000000000,放到 age列上
0 row(s) in 0.0170 seconds

hbase(main):006:0> count 'test'  #查看表test 有多少条数据
1 row(s) in 0.1220 seconds

=> 1
hbase(main):007:0> get 'test','cf'
COLUMN CELL
0 row(s) in 0.0240 seconds

hbase(main):008:0> get 'test','1000000000'  #获取数据
COLUMN CELL
cf:age timestamp=1526571007485, value=26
cf:name timestamp=1526571006326, value=venn
cf:sex timestamp=1526571006411, value=male
3 row(s) in 0.0250 seconds

hbase(main):009:0> disable 'test'  #禁用表 test
0 row(s) in 2.2670 seconds

hbase(main):010:0> drop 'test'  #删除表
0 row(s) in 1.2490 seconds

hbase(main):011:0> list
TABLE
venn
1 row(s) in 0.0100 seconds

=> ["venn"]

搞定,收工

Hadoop3集群搭建之——hbase安装及简单操作的更多相关文章

  1. Hadoop3集群搭建之——hive安装

    Hadoop3集群搭建之——虚拟机安装 Hadoop3集群搭建之——安装hadoop,配置环境 Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hbase安装及简单操作 现在到 ...

  2. Hadoop3集群搭建之——虚拟机安装

    现在做的项目是个大数据报表系统,刚开始的时候,负责做Java方面的接口(项目前端为独立的Java web 系统,后端也是Java web的系统,前后端系统通过接口传输数据),后来领导觉得大家需要多元化 ...

  3. BigData--hadoop集群搭建之hbase安装

    之前在hadoop-2.7.3 基础上搭建hbase 详情请见:https://www.cnblogs.com/aronyao/p/hadoop.html 基础条件:先配置完成zookeeper 准备 ...

  4. Hadoop3集群搭建之——安装hadoop,配置环境

    接上篇:Hadoop3集群搭建之——虚拟机安装 下篇:Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hive安装 Hadoop3集群搭建之——hbase安装及简单操作 上篇已 ...

  5. Hadoop3集群搭建之——hive添加自定义函数UDTF (一行输入,多行输出)

    上篇: Hadoop3集群搭建之——虚拟机安装 Hadoop3集群搭建之——安装hadoop,配置环境 Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hive安装 Hadoo ...

  6. Hadoop3集群搭建之——hive添加自定义函数UDTF

    上篇: Hadoop3集群搭建之——虚拟机安装 Hadoop3集群搭建之——安装hadoop,配置环境 Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hive安装 Hadoo ...

  7. Hadoop3集群搭建之——hive添加自定义函数UDF

    上篇: Hadoop3集群搭建之——虚拟机安装 Hadoop3集群搭建之——安装hadoop,配置环境 Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hive安装 Hadoo ...

  8. Hadoop3集群搭建之——配置ntp服务

    上篇: Hadoop3集群搭建之——虚拟机安装 Hadoop3集群搭建之——安装hadoop,配置环境 下篇: Hadoop3集群搭建之——hive安装 Hadoop3集群搭建之——hbase安装及简 ...

  9. Hadoop集群搭建-03编译安装hadoop

    Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...

随机推荐

  1. php数组去重(一维数组)

    <?php $arr = ['1', '1', 'PHP', 'PHP', 2, 3]; print_r($arr); echo "<br>"; print_r( ...

  2. [转] react-router4 实现按需加载

    按需加载的背景 https://juejin.im/post/58f9717e44d9040069d06cd6?utm_source=tuicool&utm_medium=referral R ...

  3. Angular 中后台前端解决方案 - Ng Alain 介绍

    背景 之前项目使用过vue.js+iview,习惯了后端开发的我,总觉得使用不习惯,之前分析易企秀前端代码,接触到了angular js,完备的相关功能,类似后端开发的体验,让人耳目一新,全新的ang ...

  4. Asp.Net Core 2.0 项目实战(4)ADO.NET操作数据库封装、 EF Core操作及实例

    Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...

  5. vue中mixin的一点理解

    vue中提供了一种混合机制--mixins,用来更高效的实现组件内容的复用.最开始我一度认为这个和组件好像没啥区别..后来发现错了.下面我们来看看mixins和普通情况下引入组件有什么区别?     ...

  6. python连接mysql、sqlserver、oracle、postgresql数据库的一些封装

    包括python连接数据库,以及django下配置连接数据库 # -*- coding:utf-8 -*- import psycopg2 import pymysql import pymssql ...

  7. request中获取post的json对象数据content-type=“text/plain”

    其实采用http://www.cnblogs.com/SimonHu1993/p/7295750.html中的方法一都能获取到,就是通过获取request中的流数据,拿到json数据,理论上应该适用各 ...

  8. Openvas安装

    Openvas简介 Openvas是开源的,是Nessus项目分支,用于管理目标系统的漏洞,检测目标网络或主机的安全性.它的评估能力来源于数万个漏洞测试程序,openvas 早起版本还有一个客户端,现 ...

  9. Linux学习之常用网络通信命令与shell简单应用技巧(四)

    (一)常用网络通信命令 (1)ping命令 (2)write命令 (3)wall命令 (4)ifconfig命令 (5)shutdown命令 (6)reboot命令 (二)shell简单应用技巧 (1 ...

  10. CTFlearn Inj3ction Time --sql注入python多线程脚本练习

    0x00前言: 本题是国外的一个CTF平台的题目,题目不难,但学习了波多线程payload写法 先看题目描述,提示"union是个有用的命令",估计是用联合查询就能出答案的(因为前 ...