文档章节

hbase安装与配置-分布式

o
 osc_a7rsiqz6
发布于 2018/05/24 15:37
字数 1268
阅读 11
收藏 0

行业解决方案、产品招募中!想赚钱就来传!>>>

HBASE安装与配置

备注:

1:本文在hadoop的完全分布式基础上部署hbase

2:本文使用的是小博主自己搭建的zookpeer服务,未使用hbase本身的zookpeer服务

 

    本文内容在以下前提下进行配置:
1:master为s100,其他为regionserver(s1,s2,s3)
2:linux主机名需要修改
3:配置主机之间的解析名
例:vim /etc/hosts
master  192.168.1.1
slave_1 192.168.1.2
slave_2 192.168.1.3
4:所有主机之间的免密登陆

一:下载文件

地址:http://www.apache.org/dyn/closer.lua/hbase/1.2.6/hbase-1.2.6-bin.tar.gz

二:解压

将文件解压到/usr/local下面

[root@s100 ~]# tar -zxvf hbase-1.2.6-bin.tar.gz -C /usr/local/

为了后续操作,将hbase-1.2.6 改名为hbase

[root@s100 local]# pwd
/usr/local
[root@s100 local]# mv hbase-1.2.6 hbase
[root@s100 local]# ls
bin  games   hbase  hive.bak  java  lib64    sbin   src
etc  hadoop  hive   include   lib   libexec  share

 三:配置hbase的环境变量

[root@s100 local]# vim /etc/profile
 #hbase
 export HBASE_HOME=/usr/local/hbase
 export PATH=$PATH:$HBASE_HOME/bin

更新环境变量

[root@s100 local]# source /etc/profile

四:配置hbase

编辑hbase-site.xml文件

[root@s100 conf]# pwd
/usr/local/hbase/conf
[root@s100 conf]# ls
hadoop-metrics2-hbase.properties  hbase-env.sh      hbase-site.xml    regionservers
hbase-env.cmd                     hbase-policy.xml  log4j.properties

配置内容如下:(Apache官方文档)

 

 根据上面信息:

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://s100:8020/hbase</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
   <property>
       <name>dfs.replication</name>
       <value>3</value>
   </property>
  <property>
    <name>hbase.zookeeper.quorum</name><!-- 选用自己的zookpeer地址 --!>
    <value>s1:2181,s2:2181,s3:2181</value>
  </property>
</configuration>

 

备注:这里没有配置name:hbase.zookpeer.property.dataDir value:/home/centos/hbase/zk(hbase本身的zookpeer)

五:关闭hbase本身的zookpeer

在本文中,我们采用了自己的zookpeer,所以我们要关闭hbase本身zookpeer管理文件

修改hbase的evn.sh文件

[root@s100 conf]# vim hbase-env.sh 
export JAVA_HOME=/usr/local/java
export HBASE_MANAGES_ZK=false

 

六:配置区域服务器(regionserver)

[root@s100 conf]# cat regionservers 
s1
s2
s3

 

最后将hbase分发到s1,s2,s3上面,注意环境变量/etc/profile

将s100上的hbase拷贝到s1上

[root@s100 local]# pwd
/usr/local
[root@s100 local]# scp -r hbase root@s1:/usr/local/

 

将s100上的环境变量拷贝到s1上

[root@s100 local]# scp /etc/profile root@s1:/etc/profile
profile                                                  100% 2215     2.2KB/s   00:00 

 

s2和s3:重复上面步骤

启动hbase

启动zookpeer集群(zookpeer位于s1:s2:s3上,zookpeer安装与配置

[root@s1 bin]# pwd
/usr/local/zookeeper/bin
[root@s1 bin]# ./zkServer.sh start

 启动hadoop的hdfs

[root@s100 local]# start-dfs.sh 
18/04/08 20:15:44 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Starting namenodes on [s100]
s100: starting namenode, logging to //usr/local/hadoop/logs/hadoop-root-namenode-s100.out
s1: starting datanode, logging to //usr/local/hadoop/logs/hadoop-root-datanode-s1.out
s3: starting datanode, logging to //usr/local/hadoop/logs/hadoop-root-datanode-s3.out
s2: starting datanode, logging to //usr/local/hadoop/logs/hadoop-root-datanode-s2.out
Starting secondary namenodes [s10]
s10: ssh: connect to host s10 port 22: No route to host
18/04/08 20:16:42 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

 启动hbase

[root@s100 logs]# start-hbase.sh 
starting master, logging to /usr/local/hbase/logs/hbase-root-master-s100.out
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
s2: starting regionserver, logging to /usr/local/hbase/bin/../logs/hbase-root-regionserver-s2.out
s2: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
s2: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
s3: starting regionserver, logging to /usr/local/hbase/bin/../logs/hbase-root-regionserver-s3.out
s1: starting regionserver, logging to /usr/local/hbase/bin/../logs/hbase-root-regionserver-s1.out
s3: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
s3: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
s1: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
s1: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0

 hbase对应进程名称:

s100(master):HMaster

s1,s2,s3:HRegionServer

[root@s1 bin]# jps
29605 DataNode                 hdfs的数据节点进程
20904 QuorumPeerMain         zookpeer进程       
29833 Jps
29801 HRegionServer           hbase的regionserver进程
[root@s100 ~]# jps
53574 Jps
52938 NameNode                 hdfs的名称节点进程
53357 HMaster                      hbase的master节点进程     

 


 

web的ui界面 :

s100:16010

master为s100

regionserver服务器s1,s2,s3都存在

hbase配置成功

备注:如果regionserver不存在或者不完全存在(如果没有s1),大多数情况下是linux服务器的时间不一样导致的。

如果在s1上启动s1为master服务器:

[root@s1 bin]# hbase-daemon.sh start master
starting master, logging to /usr/local/hbase/logs/hbase-root-master-s1.out
[root@s1 bin]# jps
29605 DataNode
30533 HMaster
30311 HRegionServer
20904 QuorumPeerMain
30687 Jps

 

s1:存在Hmaster和Hregionserver

此时的web ui界面:

s1在backup master上存在,s1成为备份节点

在zookpeer中查询hbase:

[root@s100 bin]# ./zkCli.sh
WatchedEvent state:SyncConnected type:None path:null

[zk: localhost:2181(CONNECTED) 0] ls /
[zookeeper, hbase]

 

 既然zookpeer存在,也就说明hbase实现了容灾过程

所以,如果s100挂掉,那么s1作为backup-master会成为master服务器

[root@s100 local]# jps
52938 NameNode
54522 HMaster
54894 Jps
[root@s100 local]# kill 54522
[root@s100 local]# jps
55014 Jps
52938 NameNode

master成为s1,并且无备份的master服务器

剩下的就不一一细讲了,本篇文章就到这里呢O(∩_∩)O~


本文版权声明:

本文作者:魁·帝小仙

博文主页地址:http://www.cnblogs.com/dxxblog/

欢迎对小博主的博客内容批评指点,如果问题,可评论或邮件联系(2335228250@qq.com)

欢迎转载,转载请在文章页面明显位置给出原文链接,谢谢

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
记一次失败的Perl + Nginx + FastCGI 配置过程

这两天心血来潮,不知道为什么和 Perl + Nginx + FastCGI 配置 耗上了。但是失败了,记录如下: 1)安装Nginx 1.4.3 ,我的是WINDOWS 7 系统,修改配置文件如下: location ~ .(pl|cgi|perl)?...

通吃岛-低手哥
2013/10/27
1.6K
7
我的架构演化笔记 功能1: 基本的用户注册

“咚咚”,一阵急促的敲门声, 我从睡梦中惊醒,我靠,这才几点,谁这么早, 开门一看,原来我的小表弟放暑假了,来南京玩,顺便说跟我后面学习一个网站是怎么做出来的。 于是有了下面的一段...

强子哥哥
2014/05/31
976
3
CDH5: 使用parcels配置lzo

一、Parcel 部署步骤 1 下载: 首先需要下载 Parcel。下载完成后,Parcel 将驻留在 Cloudera Manager 主机的本地目录中。 2 分配: Parcel 下载后,将分配到群集中的所有主机上并解压缩。 3 激...

cloud-coder
2014/07/01
6.8K
1
树莓派(Raspberry Pi):完美的家用服务器

自从树莓派发布后,所有在互联网上的网站为此激动人心的设备提供了很多有趣和具有挑战性的使用方法。虽然这些想法都很棒,但树莓派( RPi )最明显却又是最不吸引人的用处是:创建你的完美家用...

异次元
2013/11/09
6K
8
工作流管理系统--Pegasus WMS

Pegasus (飞马座)工作流管理系统包括一套技术标准工作流程应用程序中执行帮助许多不同的环境中,包括桌面、校园集群、网格、云。它弥补了科学领域和执行环境通过自 动映射到分布式资源的高层工...

匿名
2013/02/24
5.3K
0

没有更多内容

加载失败,请刷新页面

加载更多

认识Node

什么是Node? Node 是 JavaScript 的一种运行环境。可以使 JS 代码不依赖浏览器也可以执行。他俩的差异如下: 两个运行环境都包含了 ECMScript 。另一方面 JavaScript 包含了 BOM 和 DOM。 ...

长臂猿猴
12分钟前
13
0
正则表达式中的非捕获组是什么? - What is a non-capturing group in regular expressions?

问题: 非捕获组(即(?:) )如何在正则表达式中使用,它们有什么用? 解决方案: 参考一: https://stackoom.com/question/Ejkl/正则表达式中的非捕获组是什么 参考二: https://oldbug.net...

技术盛宴
13分钟前
6
0
他在国外演讲时说,学Python只要看答案做完这几十道题,就足够了

你想学Python?其实很简单,因为Python本身就是一门比较简单的编程语言。 你要做的也就是看着答案做完这几十道题就可以了,不管你是不是有编程基础,因为答案摆在那儿,你不可能不会做。 为什...

python小天
13分钟前
0
0
「2020最新」Spring最易学习教程 4—整合Mybatis 事务控制

0 复习 代理模式 代理模式,可以为目标类添加额外功能。 Spring 动态代理 定义目标类对象 定义额外功能,增强。实现Spring内置的接口 配置增强类 定义切入点 编织组装 增强类型 前置增强 Me...

鹿老师的Java笔记
33分钟前
21
0
OpenCV开发笔记(六十九):红胖子8分钟带你使用传统方法识别已知物体(图文并茂+浅显易懂+程序源码)

若该文为原创文章,未经允许不得转载 原博主博客地址:https://blog.csdn.net/qq21497936 原博主博客导航:https://blog.csdn.net/qq21497936/article/details/102478062 本文章博客地址:h...

红模仿_红胖子
50分钟前
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部