Hadoop集群搭建六 HBase高可用集群的安装及应用

HBase高可用集群的安装及应用

集群规划
HBase有主节点和Region节点2类服务节点,高可用完全分布模式中需要满足主节点有备用的基本要求,所以需要两台或以上的主机作为主节点,而完全分布模式中需要满足Region有备份和数据处理能够分布并行的基本要求,所以需要两台或以上的主机作为Region节点;
主机名 IP地址 服务描述
Cluster-01 192.168.10.111 HBase主控节点
Cluster-02 192.168.10.112 HBase备用主控节点
Cluster-03 192.168.10.113 HBase Region服务
Cluster-04 192.168.10.114 HBase Region服务
Cluster-05 192.168.10.115 HBase Region服务

一、HBase基本安装配置
*该项的所有操作步骤使用专门用于集群的用户admin进行
*此项只在一台主机操作,然后再下一步骤进行同步安装与配置
1、首先,将HBase软件包“HBase-1.2.3-bin.tar.gz”上传到用户家目录的“setups”目录下,然后进行解压和设置环境变量;
Hadoop集群搭建六 HBase高可用集群的安装及应用
#创建用于存放HBase相关文件的目录,进入该目录,将软件包解压
Hadoop集群搭建六 HBase高可用集群的安装及应用
#在文件.bash_profile中配置HBase相关的环境变量,并使环境变量立即生效
#hbase environment
#HBASE_HOME=/home/admin/hbase/hbase-1.2.3
#PATH=$ HBASE_HOME/bin:$PATH
#export HBASE_HOME PATH

Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用
#查看新添加和修改的环境变量是否设置成功,以及环境变量的值是否正确
#echo $HBASE_HOME
#echo $PATH
#hbase version

Hadoop集群搭建六 HBase高可用集群的安装及应用
二、HBase高可用完全分布模式配置
*该项的所有操作步骤使用专门用于集群的用户admin进行

#进入HBase相关文件的目录,分布创建HBase的元数据文件目录“tmp”和HDFS的日志文件目录“logs”
Hadoop集群搭建六 HBase高可用集群的安装及应用
#进入HBase的配置文件所在目录,对配置文件Hbase_env.sh进行修改
Hadoop集群搭建六 HBase高可用集群的安装及应用
#找到配置项“JAVA_HOME”所在行,将其改为以下内容,找到配置项“HBASE_CLASSPATH”,该项用于指定Hadoop的配置文件所在的路径,将其改为以下内容:
Hadoop集群搭建六 HBase高可用集群的安装及应用
#找到配置项“HBASE_LOG_DIR”,该项用于指定HBase的日志文件的本地存放路径,将其改为以下内容:
Hadoop集群搭建六 HBase高可用集群的安装及应用
#找到配置项“HBASE_MANAGES_ZK”,该项用于关闭HBase自带的Zookeeper组件,将其改为以下内容:
Hadoop集群搭建六 HBase高可用集群的安装及应用
#对hbase_env.xml配置文件进行修改
Hadoop集群搭建六 HBase高可用集群的安装及应用
#对配置文件进行修改
#vi regionservers
#删除文件中原有的所有内容,然后添加集群中所有RegionServer节点的主机名,每行一个主机的主机名,配置格式如下:
#Cluster-03
#Cluster-04
#Cluster-05

Hadoop集群搭建六 HBase高可用集群的安装及应用
#创建配置文件“backup-masters”,并对其进行修改。添加集群中所有备用主节点的主机名,每行一个主机的主机名,配置格式如下:
Hadoop集群搭建六 HBase高可用集群的安装及应用
三、同步安装配置以及系统时间
该项的所有操作步骤使用专门用于集群的用户admin进行
将“hbase”目录和“./bash_profile”文件发给集群中所有其他主机,发送目标为集群专用用户admin,发送目标路径为“/home/admin”,即集群专用用户admin的家目录。
#scp -r ~/hbase ~/.bash_profile [email protected]
:/home/admin
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用
#然后每台执行source ~/.bash_profile使环境变量生效,并查看新添加和修改的环境变量是否设置成功,以及环境变量的值是否正确。

Hadoop集群搭建六 HBase高可用集群的安装及应用Hadoop集群搭建六 HBase高可用集群的安装及应用

*时间同步项的所有操作步骤需要使用root用户进行
#在集群中所有主机上使用命令“date -s ‘yyyy-MM-dd HH:mm:ss(年-月-日 时:分:秒)’”对系统时间进行设置,并使用命令“hwclock -w”将设置的时间同步到硬件时钟。
#该操作尽量在所有主机上同时进行,从而保证主机之间的时间误差在设定的“hbase.master.maxclockshew”范围内。
#对系统时间进行设置,时间为你自己的当前时间,并将设置的时间同步到硬件时钟
Hadoop集群搭建六 HBase高可用集群的安装及应用
#如果是在VMware workstations pro模拟平台上安装的,那么需要开启时间同步,选中虚拟机节点->右键->设置->选项,开启时间同步
Hadoop集群搭建六 HBase高可用集群的安装及应用
四、Hadoop高可用完全分布模式验证
*该项的所有操作步骤使用专门用于集群的用户admin进行;
*启动HBase集群之前首先确保Zookeeper集群已被开启状态,Zookeeper集群的启动需要分别在每个计算机的节点上手动启动;
*启动HBase集群之前首先确保Hadoop集群已被开启状态,Hadoop集群的启动只需要在主节点执行启动命令;
#如果Zookeeper未启动,则在集群中所有主机上使用命令“zkServer.sh start”启动Zookeeper。在集群中所有节点上使用命令“zkServer.sh status”查看该节点Zookeeper服务当前的状态,若集群中只有一个“leader”节点,其余的均为“follower”节点,则集群的工作状态正常;
#zkServer.sh start
#zkServer.sh status

Hadoop集群搭建六 HBase高可用集群的安装及应用Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用
#在主节点使用命令,启动Hadoop集群。
#start-all.sh
Hadoop集群搭建六 HBase高可用集群的安装及应用
#在所有备用主节点的主机,使用此命令,启动YARN主节点服务。
#yarn-daemin.sh start resourcemanager
Hadoop集群搭建六 HBase高可用集群的安装及应用
#确定Hadoop集群已启动状态,然后在主节点使用此命令,启动HBase
#start-hbase.sh
Hadoop集群搭建六 HBase高可用集群的安装及应用
#在备用主节点使用命令“jps”查看Java进程信息,若有名为“HMaster”的进程,则表示HBase集群的备用主节点启动成功。
Hadoop集群搭建六 HBase高可用集群的安装及应用
#在所有Region节点使用命令“jps”查看Java进程信息,若有名为“HRegionServer”的进程,则表示HBase集群的Region节点启动成功。
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用
#进入HBase控制台,在控制台中使用命令“create ‘表名’,‘列名1’,‘列名2’,…”创建表,
Hadoop集群搭建六 HBase高可用集群的安装及应用
解决方法见最后。
五、Hbase的使用
1、在集群中所有主机启动Zookeeper服务并查看集群的工作状态
#zkServer.sh start
#zkServer.sh status

2.在主节点启动Hadoop集群和Hbase集群,在备用节点启动ResourceManager
#start-all.sh
#yarn-daemen.sh start recoursemanager

3.在主节点和备用节点查看JAVA进程信息每个节点六个进程。
4、进入Hbase命令界面
Hadoop集群搭建六 HBase高可用集群的安装及应用
5、新建表空间并进行相关信息的查看
Hadoop集群搭建六 HBase高可用集群的安装及应用Hadoop集群搭建六 HBase高可用集群的安装及应用
6、建立一个表和列族
Hadoop集群搭建六 HBase高可用集群的安装及应用
7、在表结构中插入合适的值
Hadoop集群搭建六 HBase高可用集群的安装及应用

8、根据键值查询数据
Hadoop集群搭建六 HBase高可用集群的安装及应用
9、扫描所有数据
Hadoop集群搭建六 HBase高可用集群的安装及应用
10、扫描指定列
Hadoop集群搭建六 HBase高可用集群的安装及应用
11、统计行数
Hadoop集群搭建六 HBase高可用集群的安装及应用
12、删除指定的数据
Hadoop集群搭建六 HBase高可用集群的安装及应用

删除后:
Hadoop集群搭建六 HBase高可用集群的安装及应用
13、删除整行信息
Hadoop集群搭建六 HBase高可用集群的安装及应用
14、清空整个表
Hadoop集群搭建六 HBase高可用集群的安装及应用
15、表的删除操作
Disable和enable操作分别表示暂停表的可用性和打开可用性
Hadoop集群搭建六 HBase高可用集群的安装及应用
16、表的删除
Hadoop集群搭建六 HBase高可用集群的安装及应用
六、(练习)下表是几位同学的成绩单,把数据写到Hbase
1、建立一个表和列族
Hadoop集群搭建六 HBase高可用集群的安装及应用
2、在表结构中插入合适的值
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用Hadoop集群搭建六 HBase高可用集群的安装及应用
3、扫描所有数据
Hadoop集群搭建六 HBase高可用集群的安装及应用
4、扫描指定列
Hadoop集群搭建六 HBase高可用集群的安装及应用
5、根据键值查询数据
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用Hadoop集群搭建六 HBase高可用集群的安装及应用

HBase进程出现问题,主节点Hmaster进程启动后,自动宕掉。其他节点正常。解决方案:
使用ZK客户端登录zookeeper,在终端执行:
Hadoop集群搭建六 HBase高可用集群的安装及应用
查看hbase目录是否为空
Hadoop集群搭建六 HBase高可用集群的安装及应用
重启HBASE,先停掉hbase进程,再分别重启zookeeper、hadoop。
Hadoop集群搭建六 HBase高可用集群的安装及应用
Hadoop集群搭建六 HBase高可用集群的安装及应用Hadoop集群搭建六 HBase高可用集群的安装及应用解决:
Hadoop集群搭建六 HBase高可用集群的安装及应用
在启动HBASE后主节点进程启动出现问题,利用上述方法解决。
再次启动时发现仍然出现此问题,通过查阅资料。发现是因为hadoop主节点为2号机所引起,所以在配置文件xml文件中将2号机改为1号机。将backup文件中加入1号机。最后重启服务。
在创建数据库中,注意无空格。