一、版本介绍

linux : CentOS7

Hadoop : 2.7.6

zookeeper : 3.4.6

hbase : 1.4.6

jdk : jdk1.8.0_171

三个节点的主机名分别为:master、node1、node2

二、安装Hadoop

HBase 是在 Hadoop 这种分布式框架中提供持久化的数据存储与管理的工具。在使用 HBase 的分布式集群模式时,前提是必须有 Hadoop 系统,所以我们需要先安装Hadoop,进行到这一步相信大家已经安装过Hadoop环境了,如果没有安装的可以参考下面的链接。

https://www.cnblogs.com/yy-yang/p/14615048.html

三、安装zookeeper

zookeeper安装步骤

hbase Client客户端、Master、Region都会通过心跳机制(RPC通信)与zookeeper保持联系

1、上传安装包到master并解压

tar -zxvf zookeeper-3.4.6.tar.gz

我这里压缩包存放在/usr/local/module下,解压到/usr/local/soft目录下,读者需要根据自己的实际情况安装,下面的环境变量也需要根据自己实际情况配置



2、配置环境变量

vim /etc/profile

在配置文件中加入以下内容

export ZOOKEEPER_HOME=/usr/local/soft/zookeeper-3.4.6
export PATH=$PATH:$ZOOKEEPER_HOME/bin

使环境变量生效

source /etc/profile

输入zk按tab键,如果有提示说明环境变量配置的没问题

3、修改配置文件

cd /usr/local/soft/zookeeper-3.4.6/conf

cp zoo_sample.cfg zoo.cfg

修改zoo.cfg

data目录下面会创建

注意:路径要与自己的一致

dataDir=/usr/local/soft/zookeeper-3.4.6/data

增加以下内容

注意:主机名要改成自己的

server.0=master:2888:3888
server.1=node1:2888:3888
server.2=node2:2888:3888



4、同步到其它节点

该命令在/usr/local/soft下面执行

scp -r zookeeper-3.4.6 node1:`pwd`
scp -r zookeeper-3.4.6 node2:`pwd`

同步配置node1和node2的环境变量

下面写的为绝对路径,可以在任意地方执行

scp /etc/profile node1:/etc/
scp /etc/profile node2:/etc/

在所有节点执行使新配置的环境变量生效

source /etc/profile

4、创建/usr/local/soft/zookeeper-3.4.6/data目录,所有节点都要创建

mkdir /usr/local/soft/zookeeper-3.4.6/data

在data目录下创建myid文件

vim /usr/local/soft/zookeeper-3.4.6/data/myid

master,node1,node2分别加上0,1,2

这个数字用来唯一标识这个服务,一定要保证唯一性,zookeeper会根据这个id来取出server.x上的配置



5、同步时间

zookeeper节点之间需要实时监听节点是否存活

如果没有ntpdate命令,可以yum命令先安装:

yum install ntp -y

从网络服务器同步时间(需要虚拟机联网):

ntpdate -u s2c.time.edu.cn

(经常挂起虚拟机,可能会导致时间停止,可使用crontab做成定时同步)

   crontab -e // 进入crontab命令编辑模式

   加入以下内容(每十分钟同步一次):

   */10 * * * * ntpdate -u s2c.time.edu.cn

6、启动zk,

zkServer.sh start 三台都需要执行

zkServer.sh status 查看状态

当有一个leader的时候启动成功,我这里node2为leader,这个是随机的每次启动可能不一样

下面简单介绍下zookeeper的使用,与本次安装无关,可以忽略

连接zk

zkCli.sh

zk 是一个目录结构 ,每个节点可以存数据,同时可以有子节点

zk shell

创建目录

create /test test create /test/a 1

获取数据

get /test

ls /test

delete只能删除没有子节点的节点

rmr /test 删除节点

重置zk

1、杀掉所有zk进程

kiil -9 pid

2、删除data目录下的version文件, 所有节点都要删除

rm -rf /usr/local/soft/zookeeper-3.4.6/data/version-2

2、启动zk

zkServer.sh start

三、HBase安装

Hbase的启动前需要先启动zookeeper和Hadoop,这里先启动好再进行下面的安装

准备工作

1、启动hadoop

start-all.sh

验证

http://master:50070

2、启动zookeeper

需要在在三台中分别启动

zkServer.sh start zkServer.sh status

搭建hbase

1、上传解压到自己的安装目录

tar -zxvf hbase-1.4.6-bin.tar.gz

2、修改hbase-env.sh文件

进入到配置文件目录

cd /usr/local/soft/hbase-1.4.6/conf

vim hbase-env.sh

增加java配置(根据自己实际情况配置,文件中的这行注释掉了,可以找到后修改也可以直接在最后面添加这一行)

export JAVA_HOME=/usr/local/soft/jdk1.8.0_171



关闭默认zk配置

因为HBase自己有个zk,这里我们把它自带的关掉,用我们自己的

export HBASE_MANAGES_ZK=false



3、修改hbase-site.xml文件

vim hbase-site.xml

  <!--hbase.root.dir 将数据写入哪个目录-->
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<!--单机模式不需要配置,分布式配置此项,value值为true,多节点分布-->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<!--单机模式不需要配置多个IP,分布式配置此项value值为多个主机ip,多节点分布-->
<name>hbase.zookeeper.quorum</name>
<value>node1,node2,master</value>
</property>



4、修改regionservers文件

默认是单节点的,我这里搭建的是分布式的, 在这里列出了你希望运行的全部 HRegionServer,一行写一个host (就像Hadoop里面的 slaves 一样

改为自己的子节点主机名

vim regionservers

node1
node2

如果是伪分布式版本,增加master即可

5、同步到所有节点(如果是伪分布式不需要同步)

命令在hbase安装的文件目录下运行,例如我的hbase装在/usr/local/soft

命令就在/usr/local/soft下运行

scp -r hbase-1.4.6/ node1:`pwd` scp -r hbase-1.4.6/ node2:`pwd`



6、配置环境变量

vim /etc/profile

export HBASE_HOME=/usr/local/soft/hbase-1.4.6
export PATH=$PATH:$HBASE_HOME/bin

同步配置node1和node2的环境变量

下面写的为绝对路径,可以在任意地方执行

scp /etc/profile node1:/etc/
scp /etc/profile node2:/etc/

在所有节点执行使新配置的环境变量生效

source /etc/profile

7、启动hbase集群 , 需要在master上执行

start-hbase.sh

通过jps查看下进程

master上有



其他两个节点



8、验证hbase

http://master:16010



hbase日志文件所在的目录

/usr/local/soft/hbase-1.4.6/logs

关闭集群的命令

stop-hbase.sh

通过 hbase shell 进入到hbase的命令行

创建表 列簇 列式数据库

create 'test','info'

插入数据

put 'test','001','info:name','zhangsan'

查询数据

get 'test','001'

如果hbase 搭建失败了 不知道问题出在哪里

重置hbase

1、关闭hbase集群

杀死进程

stop-hbase.sh

2、删除hdfs数据

hadoop dfs -rmr /hbase

3、删除元数据 zk

zkCli.sh

rmr /hbase

4、重启hbase

start-hbase.sh

HBase安装教程的更多相关文章

  1. Ubuntu: GlusterFS+HBase安装教程

    HBase通常安装在Hadoop HDFS上,但也能够安装在其它实现了Hadoop文件接口的分布式文件系统上.如KFS. glusterfs是一个集群文件系统可扩展到几peta-bytes. 它集合了 ...

  2. Hadoop、Zookeeper、Hbase分布式安装教程

    参考: Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0   Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS ZooKeeper-3.3 ...

  3. Hive/Hbase/Sqoop的安装教程

    Hive/Hbase/Sqoop的安装教程 HIVE INSTALL 1.下载安装包:https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.3 ...

  4. 【HBase基础教程】1、HBase之单机模式与伪分布式模式安装(转)

    在这篇blog中,我们将介绍Hbase的单机模式安装与伪分布式的安装方式,以及通过浏览器查看Hbase的用户界面.搭建hbase伪分布式环境的前提是我们已经搭建好了hadoop完全分布式环境,搭建ha ...

  5. Hbase入门教程--单节点伪分布式模式的安装与使用

    Hbase入门简介 HBase是一个分布式的.面向列的开源数据库,该技术来源于 FayChang 所撰写的Google论文"Bigtable:一个结构化数据的分布式存储系统".就像 ...

  6. Linux+apache+mono+asp.net安装教程

    Linux+apache+mono+asp.net安装教程(CentOS上测试的) 一.准备工作: 1.安装linux系统(CentOS,这个就不多讲了) 2.下载所需软件 http-2.4.4.ta ...

  7. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

  8. git 安装教程

    昆,简单说下安装教程1,安装Git2,安装TortoiseGit3,打开第一步安装的git工具GIT BASH

  9. Docker和Docker-compose安装教程以及docker-elk,docker-storm安装教程

    此安装教程仅供我自己安装配置时查看,其他的人不可以偷看!!! 安装Docker 1. Update package information, ensure that APT works with th ...

随机推荐

  1. Java Web程序设计笔记 • 【第2章 JSP基础】

    全部章节   >>>> 本章目录 2.1 JSP 简介 2.1.1 JSP 概述 2.1.2 开发第一个 JSP 页面 2.1.3 JSP 处理流程 2.1.4 实践练习 2. ...

  2. 使用 DML语句针对仓库管理信息系统,进行查询操作

    查看本章节 查看作业目录 需求说明: 查询所有电视机产品的基本信息,要求显示产品编号.产品名和进货单价 查询所有产品的基本信息,要求按类型升序.价格降序显示查询信息 显示所有不重复的产品类型 显示进货 ...

  3. 「艺蜂酒店管理系统」 · Java Swing + mysql 开发 学生毕业设计项目

    Java  Swing在社会上基本用不到,但是任有学校拿来当做结课设计,只是博主在校期间的一个项目.如果在部署过程中有问题可以加我qq68872185. 码云仓库地址:https://gitee.co ...

  4. javaScript系列 [43]-TS、Class and ES5

    本文讨论Typescript中的Class同ES5构造函数的对应关系,涉及TypeScript的诸多语法.构造函数.面向对象以及原型对象等相关知识点细节,本文只简单对比并不进行深入展开. TypeSc ...

  5. Window10系统修改hosts文件的方法

    背景: 调试smtp程序时遇到问题,度娘说需要修改hosts文件 使用老方法修改了很久,始终无法保存 又百度了一下,在此重温,以加深记忆 方法: Step1.同时按住Windows+X Step2.选 ...

  6. Python 使用timeit模块计算时间复杂度时系统报“invalid syntax”错误

    最近在看算法相关的文档 在时间复杂度环节 遇到一个实例: 导入timeit模块后,通过Timer定时器计算两种不同处理方法的时间复杂度 错误代码及报错如下图所示: 仔细查阅 发现from__main_ ...

  7. Go语言发邮件

    发送邮件是实际业务中经常会用到的一个功能,而在Go语言中实现发送邮件的库也有很多,这篇文章将介绍go语言中如何发邮件. 1. 登录QQ邮箱,选择账户,开启POP3/SMTP服务和IMAP/SMTP服务 ...

  8. NOSQL数据库之MongoDB

    一.NoSQL概述 如今,大多数的计算机系统(包括服务器.PC.移动设备等)都会产生庞大的数据量.其实,早在2012年的时候,全世界每天产生的数据量就达到了2.5EB(艾字节,​).这些数据有很大一部 ...

  9. k8s 理解Service工作原理

    什么是service? Service是将运行在一组 Pods 上的应用程序公开为网络服务的抽象方法. 简单来说K8s提供了service对象来访问pod.我们在<k8s网络模型与集群通信> ...

  10. Word2010发布博客

    原文链接: https://www.toutiao.com/i6488986125292536334/ 选择"文件按钮","保存并发送"菜单项,"发布 ...