Fork me on GitHub

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

引言

在上一篇中搭建了Hadoop的单机环境,这一篇则搭建HBase的单机环境

环境准备

1,服务器选择

阿里云服务器:入门型(按量付费)
操作系统:linux CentOS 6.8
Cpu:1核
内存:1G
硬盘:40G

2,配置选择

JDK:1.8 (jdk-8u144-linux-x64.tar.gz)
Hadoop:2.8.2 (hadoop-2.8.2.tar.gz)
HBase:1.6.2 (hbase-1.2.6-bin.tar.gz)

3,下载地址

官网地址:
JDK:
http://www.oracle.com/technetwork/java/javase/downloads

Hadopp:
http://www.apache.org/dyn/closer.cgi/hadoop/common
HBase:
http://mirror.bit.edu.cn/apache/hbase/

百度云:
链接:https://pan.baidu.com/s/1jIemnA2 密码:3ykr

二、服务器的相关配置

在配置Hadoop之前,应该先做一下配置

1,更改主机名

首先更改主机名,目的是为了方便管理。
输入:
hostname
查看本机的名称
然后输入:

vim /etc/sysconfig/network

修改主机名称
将HOSTNAME 的名称更改为你想要设置的名称
这里写图片描述
:主机名称更改之后,要重启(reboot)才会生效。

输入

vim /etc/hosts

添加 主机IP 和对应的主机名称,做映射。

这里写图片描述
注:在配置文件中使用主机名的话,这个映射必须做!

2,关闭防火墙

关闭防火墙,方便外部访问。
CentOS 7版本以下输入:
关闭防火墙
service iptables stop
CentOS 7 以上的版本输入:
systemctl stop firewalld.service

3,时间设置

输入:
date
查看服务器时间是否一致,若不一致则更改
更改时间命令

date -s ‘MMDDhhmmYYYY.ss’

三、HBase环境安装

1,下载HBase

将下载下来的HBase的配置文件进行解压
在linux上输入:

 tar  -xvf   hbase-1.2.6-bin.tar.gz

然后移动到/opt/hbase 里面
输入

mv  hbase-1.2.6  /home/hbase

2,HBase环境配置

3.2.1 环境配置

编辑 /etc/profile 文件
输入:

export HBASE_HOME=/home/hbase/hbase-1.2.6
export PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HBASE_HOME}/bin:$PATH

这里写图片描述
输入:

source  /etc/profile

使配置生效
输入

hbase version 

查看版本
这里写图片描述

3.2.2 修改配置文件

在 root目录下新建文件夹

mkdir  /root/hbase  
mkdir  /root/hbase/tmp  
mkdir  /root/hbase/pids

这里写图片描述
切换到 /home/hbase/hbase-1.2.6/conf 下

3.2.2.1 修改hbase-env.sh

编辑 hbase-env.sh 文件,添加以下配置

export JAVA_HOME=/home/java/jdk1.8
export HADOOP_HOME=/home/hadoop/hadoop2.8
export HBASE_HOME=/home/hbase/hbase-1.2.6
export HBASE_CLASSPATH=/home/hadoop/hadoop2.8/etc/hadoop
export HBASE_PID_DIR=/root/hbase/pids
export HBASE_MANAGES_ZK=false

这里写图片描述
说明:配置的路径以自己的为准。HBASE_MANAGES_ZK=false 是不启用HBase自带的Zookeeper集群。

3.2.2.2 修改 hbase-site.xml

编辑hbase-site.xml 文件,在添加如下配置

<!-- 存储目录 -->
<property>  
 <name>hbase.rootdir</name>  
 <value>hdfs://test1:9000/hbase</value>  
 <description>The directory shared byregion servers.</description>  
</property>  
<!-- hbase的端口 -->
<property>  
 <name>hbase.zookeeper.property.clientPort</name>  
 <value>2181</value>  
 <description>Property from ZooKeeper'sconfig zoo.cfg. The port at which the clients will connect.  
 </description>  
</property>  
<!--  超时时间 -->
<property>  
 <name>zookeeper.session.timeout</name>  
 <value>120000</value>  
</property>  
<!--  zookeeper 集群配置。如果是集群,则添加其它的主机地址 -->
<property>  
 <name>hbase.zookeeper.quorum</name>  
 <value>test1</value>  
</property>  
<property>  
 <name>hbase.tmp.dir</name>  
 <value>/root/hbase/tmp</value>  
</property>  
<!-- false是单机模式,true是分布式模式  -->
<property>  
 <name>hbase.cluster.distributed</name>  
 <value>false</value>  
</property>

这里写图片描述
说明:hbase.rootdir:这个目录是region server的共享目录,用来持久化Hbase 。hbase.cluster.distributed :Hbase的运行模式。false是单机模式,true是分布式模式。若为false,Hbase和Zookeeper会运行在同一个JVM里面。

4,HBase启动

在成功启动Hadoop之后
切换到HBase目录下
cd /home/hbase/hbase-1.2.6/bin
输入:
./start-hbase.sh
这里写图片描述

在浏览器输入:
http://39.108.208.105:16010/
这里写图片描述

显示这个界面则成功!

HBase shell 使用

HBase启动之后
输入:
HBase shell
进入hbase
然后输入list 查询有哪些表
因为HBase是列式存储结构,所以在建表方面和传统的关系型数据库不一样
新建一个用户表 t_user
添加两个列族 st1 和 st2

create 't_user','st1','st2'

给这张表添加数据
添加 主键 、列 和值

put 't_user','1001','st1:age','18'
put 't_user','1001','st2:name','zhangsan'

然后 查询该表数据

scan 't_user'

查看表结构

describe 't_user'

删除记录

delete't_user','1001','st1:age'

删除表
删除表首先要屏蔽该表

disable 't_user'

删除

drop 't_user'

这里写图片描述
这里写图片描述

posted @ 2017-12-10 15:49  虚无境  阅读(12488)  评论(8编辑  收藏  举报