实验简介

本次实验学习和了解 HBase 在不同模式下的配置和安装,以及 HBase 后续的启动和停止等。

一、实验环境说明

1. 环境登录

无需密码自动登录,系统用户名shiyanlou,密码shiyanlou

2. 环境介绍

本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到桌面上的程序:

  • XfceTerminal: Linux命令行终端,打开后会进入Bash环境,可以使用Linux命令;
  • Firefox:浏览器,可以用在需要前端界面的课程里,只需要打开环境里写的HTML/JS页面即可;
  • GVim:非常好用的编辑器,最简单的用法可以参考课程Vim编辑器

3. 环境使用

使用GVim编辑器输入实验所需的代码,然后使用XfceTerminal命令行环境进行编译运行,查看运行结果,运行后可以截图并分享自己的实验成果,实验楼提供的截图是后台截图,无法作弊,可以真实有效证明您已经完成了实验。

实验记录页面可以在“我的课程”中查看,其中含有每次实验的截图及笔记,以及每次实验的有效学习时间(指的是在实验桌面内操作的时间,如果没有操作,系统会记录为发呆时间)。这些都是您学习的真实性证明。


二、安装之前 - 检查必要条件

(1) Java (需要安装1.6.x及其以上版本)

在终端输入 java -version 来查看你机子上的 Java 版本;

(2) Hadoop

Hadoop的具体安装可以参见我们以前的课程:Hadoop部署及管理。需要注意的是伪分布模式下,HBase 的版本需要和 Hadoop版本 匹配 ,不然很可能容易出错。你可以在HBase的lib目录下看到对应的Hadoop的Jar文件版本。

在这里,我们使用了Hadoop V2.4.1版本以及HBase V0.98.11版本。

(3) SSH

SSH的安装,在Hadoop部署及管理中也涵盖了这部分内容。SSH用来管理远程Hadoop和HBase守护进程。

本实验环境下,为了大家的方便,我们已经为大家准备好了这些必要条件,你只需要专注于HBase的安装配置即可。


三、安装进行时 - 安装和配置HBase

确认上面的条件我们都准备好了之后,就可以开始安装HBase了。实验开始前,你应该切换到 hadoop 用户:

$ su hadoop

HBase的安装通常分为3种模式:

1. 单机模式 安装

(1)下载和解压

单机模式的安装非常简单,几乎不用对安装文件做什么修改就可以使用。单机模式下,HBase并不使用HDFS,因此将安装文件解压后就几乎可以直接运行。输入命令下载HBase:

$ wget http://labfile.oss.aliyuncs.com/hbase-0.98.11-hadoop2-bin.tar.gz

再将其压缩包解压:

$ tar zxvf hbase-0.98.11-hadoop2-bin.tar.gz

由于解压出来的文件名可能很长,建议修改为较短文件名,例如:

$ mv hbase-0.98.11-hadoop2 hbase

(2)配置 hbase-site.xml

在运行之前,我们需要对HBase进行相关配置。建议大家修改 ${HBase-Dir}/conf/hbase-site.xml 文件,因为即使你修改了hbase-default.xml文件,也会被hbase-site.xml中的配置所覆盖。也就是说,最终是以 hbase-site.xml 中的配置为准的。我们做如下修改:

<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///tmp/hbase-${user.name}/hbase</value>
</property>
</configuration>

注意:修改 ${user.name}为你自己的 hadoop 用户名

2. 伪分布模式 安装

伪分布模式是一个运行在单台机器上的分布式模式。此模式下,HBase所有的守护进程将运行在同一个节点之上,而且需要依赖HDFS,因此在此之前必须保证HDFS已经成功运行,请参考我们前面的课程:Hadoop伪分布模式配置部署。确认无误后,我们就可以开始配置HBase的参数了。

(1)配置 hbase-site.xml 文件

<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
</configuration>

hbase.rootdir:该参数制定了HReion服务器的位置,即数据存放的位置。主要端口号要和Hadoop相应配置一致。hbase.cluster.distributed:HBase的运行模式。false是单机模式,true是分布式模式。若为false, HBase和Zookeeper会运行在同一个JVM里面。默认为false.

(2)设置环境变量

另外,我们需要设置一些环境变量。修改HBase下的conf目录中的hbase-env.sh文件(你的jdk路径可能不一样):

export JAVA_HOME=/usr/local/jdk1.7.0_67
export HBASE_MANAGES_ZK=true

export HBASE_MANAGES_ZK=true 此配置信息,表示设置由hbase自己管理zookeeper,不需要单独的zookeeper, 本文搭建的 Hbase 用的是自带的 zookeeper,故设置为true.

最后修改添加PATH, 则输入:

$ sudo vim /etc/profile

来修改 /etc/profile 文件:

# set hbase path
export PATH=$PATH:/usr/local/hadoop/hbase/bin

3. 完全分布模式 安装

由于完全分布模式需要多台机器,在这里我们就不给出演示了。


四、安装之后 - 运行和停止 HBase

正如上面我们提到的,HBase安装分为3个模式,因此HBase的运行自然也分为同样的3个模式。

1. 单机模式 运行

(1)启动

单机模式下不需要HDFS,因此不需要事先启动Hadoop,直接启动HBase即可。终端下输入命令:./start-hbase.sh

注意:路径要正确,应为:$HBASE_HOME/bin 目录,否则会找不到 start-hbase.sh 这个文件,就会出现错误

(2)查看进程

我们可以通过 jps 来查看当前 HBase 的进程:

(3)停止 HBase 服务

输入 ./stop-hbase.sh

2. 伪分布模式 运行

(1)启动和查看进程

前面我们提到过,伪分布模式下,必须先确保 HDFS 已经启动。因此,我们先启动 HDFS,输入命令: ./start-all.sh

使用 jps 查看目前 Hadoop 的进程:

HDFS 成功启动之后,我们再启动 HBase,这里和单机模式下启动 HBase 的方法一样,输入命令: ./start-hbase.sh

此时再使用 jps查看,可以看到多了HBase的相关进程:

(2)进入 HBase Shell

通过HBase Shell用户可以方便地创建、删除以及修改表,还可以向表中添加数据、列出表中的相关相信等。

输入 help 来查看其所支持的命令,可以根据自己的需要选择。

(3)停止 HBase

根据依赖关系,我们需要先关闭HBase, ./stop-hbase.sh

通过 jps 可以看到,HBase相关的进程没有了:

再关闭HDFS, ./stop-all.sh.

最后,再通过 jps 发现 HDFS 的进程也没有了:

3. 完全分布模式 运行

略。


作业

有条件的同学,可以尝试 HBase 的完全分布模式下的配置与安装。


参考文档

HBase 的安装与配置的更多相关文章

  1. HBase学习笔记之HBase的安装和配置

    HBase学习笔记之HBase的安装和配置 我是为了调研和验证hbase的bulkload功能,才安装hbase,学习hbase的.为了快速的验证bulkload功能,我安装了一个节点的hadoop集 ...

  2. Centos7上HBase的安装和配置

    注意事项 HBase配置必须使用主机名,不支持直接配置IP地址.我尝试过,如果不使用主机名直接用IP,会导致HBase连接zk超时. > 设置主机名 hostnamectl set-hostna ...

  3. Ubuntu16.04下HBase的安装与配置

    一.环境 os : Ubuntu 16.04 LTS 64bit jdk : 1.8.0_161 hadoop : mysql : hive : hbase: -hadoop2 安装HBase前,系统 ...

  4. 网站用户行为分析——HBase的安装与配置

    Hbase介绍 HBase是一个分布式的.面向列的开源数据库,源于Google的一篇论文<BigTable:一个结构化数据的分布式存储系统>.HBase以表的形式存储数据,表有行和列组成, ...

  5. HBase的安装、配置与实践

    本教程运行环境是在Ubuntu-64位系统下,HBase版本为hbase-1.1.2,这是目前已经发行的已经编译好的稳定的版本,带有src的文件是未编译的版本,这里我们只要下载bin版本hbase-1 ...

  6. Hbase的安装和配置

    1,准备好hbase的linux环境下的压缩包,这里hadoop版本为hadoop2.5.0,hbase版本为 2,解压缩这个版本,不选src的,其实两个任一都行 进入到hbase安装包目录,我这里的 ...

  7. HBase的安装与配置

  8. Hbase简介安装配置

    HBase —— Hadoop Database的简称 ,hbase 是分布式,稀疏的,持久化的,多维有序映射,它基于行键rowkey,列键column key,时间戳timestamp建立索引.它是 ...

  9. hbase安装与配置-分布式

    HBASE安装与配置 备注: 1:本文在hadoop的完全分布式基础上部署hbase 2:本文使用的是小博主自己搭建的zookpeer服务,未使用hbase本身的zookpeer服务 本文内容在以下前 ...

随机推荐

  1. Java 多线程 锁 存款 取款

    http://jameswxx.iteye.com/blog/806968 最近想将java基础的一些东西都整理整理,写下来,这是对知识的总结,也是一种乐趣.已经拟好了提纲,大概分为这几个主题: ja ...

  2. android.intent.action.MAIN 与 android.intent.category.LAUNCHER 的验证理解

    第一种情况:有MAIN,无LAUNCHER,程序列表中无图标 原因:android.intent.category.LAUNCHER决定应用程序是否显示在程序列表里  第二种情况:无MAIN,有LAU ...

  3. javascript的setTimeout以及setInterval休眠问题。

    前端码农们在做项目中时候,必定不可少的需要做到轮播效果.但是有些特殊的需求,比如: 需要做到第一个容器内容轮播滚动之后,第二个容器内部再轮播滚动,再第三个容器内容轮播滚动. 这时候我的一开始的思路是: ...

  4. 面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结

    基础篇:操作系统.计算机网络.设计模式 一:操作系统 1. 进程的有哪几种状态,状态转换图,及导致转换的事件. 2. 进程与线程的区别. 3. 进程通信的几种方式. 4. 线程同步几种方式.(一定要会 ...

  5. SQL动态更新表字段 传入字段可能为空

    小技巧: 项目组有修改产品的基本信息字段 但有时候传入的字段可能为空 也可能不为空  动态修改表中字段. USE [BetaProductMarket_DB] GO )) BEGIN DROP PRO ...

  6. 详解Javascript中的Array对象

    基础介绍 创建数组 和Object对象一样,创建Array也有2种方式:构造函数.字面量法. 构造函数创建 使用构造函数的方式可以通过new关键字来声明,如下所示: 12 var arr = new ...

  7. 【 Quartz】使用 JobListener (任务监听器可实现) 我想在一个任务执行后在执行第二个任务怎么办呢

    http://liuzidong.iteye.com/blog/1147528 Quartz之JobExecutionException 博客分类: Java Quartz quartzjobexec ...

  8. 10个优秀的Objective-C和iOS开发在线视频教程

    如果你自己开发iOS应用,你肯定会发现网上有很多资源.学习编程的一个最好的方法就是自己写代码,而开始写代码的最快的方式就是看其他人怎么写.我们从海量视频和学习网站中整理出了我 如果你自己开发iOS应用 ...

  9. sql查找最小缺失值与重用被删除的键(转载)

    转载自:http://blog.csdn.net/yanghua_kobe/article/details/6262550 在数据处理时,我们经常会使用一些“自增”的插入方式来处理数据.比如学生学号: ...

  10. easy ui 给表单元素赋值input,combobox,numberbox

    ①给input控件 class="easyui-textbox" <input class="easyui-textbox" data-options=& ...