Hbase(一)【入门安装及高可用】
一.Zookeeper正常部署
Zookeeper集群的正常部署并启动
二.Hadoop正常部署
Hadoop集群的正常部署并启动
三.Hbase部署
1.下载
下载地址:https://hbase.apache.org/downloads.html
2.解压
当前安装版本为hbase-2.0.5,将Hbase解压至指定目录,改名为hbase
tar -zxvf hbase-2.0.5-bin.tar.gz -C /opt/module
mv /opt/module/hbase-2.0.5 /opt/module/hbase
3.相关配置
1)配置环境变量
修改my_env.sh
sudo vim /etc/profile.d/my_env.sh
添加以下内容
#HBASE_HOME
export HBASE_HOME=/opt/module/hbase
export PATH=$PATH:$HBASE_HOME/bin
source一下
source /etc/profile
将my_env.sh分发其他节点,都source一下
xsync /etc/profile.d/my_env.sh
source /etc/profile
2)修改hbase-env.sh
修改/hbase/conf/hbase-env.sh添加以下内容
export HBASE_MANAGES_ZK=false
3)修改hbase-site.xml
修改成以下内容
hbase.rootdir: 在hdfs的数据存储路径
hbase.zookeeper.quorum: zookeeper集群节点
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop102:8020/HBase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop102,hadoop103,hadoop104</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
4)修改regionservers文件
Hregionserver节点配置,添加以下内容
hadoop102
hadoop103
hadoop104
4.分发文件
xsync hbase/
5.启动、关闭
方式一:群起
[hadoop@hadoop102 hbase]$ bin/start-hbase.sh
对应的停止服务:
[hadoop@hadoop102 hbase]$ bin/stop-hbase.sh
方式二:各节点单独启动
[hadoop@hadoop102 hbase]$ bin/hbase-daemon.sh start master
[hadoop@hadoop102 hbase]$ bin/hbase-daemon.sh start regionserver
注:在哪个节点启动master,哪个节点就是Hmaster。
提示:如果集群之间的节点时间不同步,会导致regionserver无法启动,抛出ClockOutOfSyncException异常。
修复方法
a、同步时间服务
b、属性:hbase.master.maxclockskew设置更大的值
<property>
<name>hbase.master.maxclockskew</name>
<value>180000</value>
<description>Time difference of regionserver from master</description>
</property>
6.验证
启动hbase(先启动zookeeper和hdfs)
[hadoop@hadoop102 ~]$ start-hbase.sh
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/module/hbase/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
running master, logging to /opt/module/hbase/logs/hbase-atguigu-master-hadoop102.out
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/module/hbase/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/module/hadoop-3.1.3/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
hadoop104: running regionserver, logging to /opt/module/hbase/logs/hbase-atguigu-regionserver-hadoop104.out
hadoop103: running regionserver, logging to /opt/module/hbase/logs/hbase-atguigu-regionserver-hadoop103.out
hadoop102: running regionserver, logging to /opt/module/hbase/logs/hbase-atguigu-regionserver-hadoop102.out
hadoop103: running master, logging to /opt/module/hbase/logs/hbase-atguigu-master-hadoop103.out
jps看一下
[hadoop@hadoop102 ~]$ myjps
================ hadoop102 =====================
3364 NameNode
3497 DataNode
24106 Jps
3117 QuorumPeerMain
23678 HRegionServer
23487 HMaster
================ hadoop103 =====================
2024 DataNode
1882 QuorumPeerMain
11037 HRegionServer
11533 Jps
================ hadoop104 =====================
9536 Jps
1879 QuorumPeerMain
9290 HRegionServer
2124 SecondaryNameNode
2014 DataNode

四.HMaster的高可用
目的:增加hadoop103作为Hmaster的备用节点
1)在hadoop102关闭hbase集群
stop-hbase.sh
2)在%hbase_home%/conf 下增加backup-masters文件
vim hbase/conf/backup-masters
添加以下内容
hadoop103
3)将backup-masters文件分发至其他节点
xsync hbase/conf/backup-masters
4)在hadoop102启动集群
start-hbase.sh
5)观察web页面:


6)验证
kill掉hadoop102的hmaster
[hadoop@hadoop102 module]$ jps
3364 NameNode
3497 DataNode
3117 QuorumPeerMain
23678 HRegionServer
23487 HMaster
24239 Jps
[hadoop@hadoop102 module]$ kill -9 23487
观察hadoop103

Hbase(一)【入门安装及高可用】的更多相关文章
- 【工具-Nginx】从入门安装到高可用集群搭建
文章已收录至https://lichong.work,转载请注明原文链接. ps:欢迎关注公众号"Fun肆编程"或添加我的私人微信交流经验 一.Nginx安装配置及常用命令 1.环 ...
- hadoop+yarn+hbase+storm+kafka+spark+zookeeper)高可用集群详细配置
配置 hadoop+yarn+hbase+storm+kafka+spark+zookeeper 高可用集群,同时安装相关组建:JDK,MySQL,Hive,Flume 文章目录 环境介绍 节点介绍 ...
- 安装ORACLE高可用RAC集群11g执行root脚本的输出信息
安装ORACLE高可用RAC集群11g执行root脚本的输出信息 作者:Eric 微信:loveoracle11g [root@node1 ~]# /u01/app/oraInventory/orai ...
- 安装ORACLE高可用RAC集群11g校验集群安装的可行性输出信息
安装ORACLE高可用RAC集群11g校验集群安装的可行性输出信息 作者:Eric 微信:loveoracle11g [grid@node1 grid]$ ./runcluvfy.sh stage - ...
- 使用kubeadm安装kubernetes高可用集群
kubeadm安装kubernetes高可用集群搭建 第一步:首先搭建etcd集群 yum install -y etcd 配置文件 /etc/etcd/etcd.confETCD_NAME=inf ...
- 阿里云HBase推出普惠性高可用服务,独家支持用户的自建、混合云环境集群
HBase可以支持百TB数据规模.数百万QPS压力下的毫秒响应,适用于大数据背景下的风控和推荐等在线场景.阿里云HBase服务了多家金融.广告.媒体类业务中的风控和推荐,持续的在高可用.低延迟.低成本 ...
- springcloud 入门 10 (eureka高可用)
eureka高可用: 说白了,就是加一个实例作为原实例的备份,然后一起对外提供服务.这样可以保证在一台机器宕机的时候,整个系统不会死掉.保证其继续对外服务. eureka的集群化: 服务注册中心Eur ...
- 大数据高可用集群环境安装与配置(09)——安装Spark高可用集群
1. 获取spark下载链接 登录官网:http://spark.apache.org/downloads.html 选择要下载的版本 2. 执行命令下载并安装 cd /usr/local/src/ ...
- 大数据高可用集群环境安装与配置(06)——安装Hadoop高可用集群
下载Hadoop安装包 登录 https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/ 镜像站,找到我们要安装的版本,点击进去复制下载链接 ...
随机推荐
- 面试题系列:工作5年,第一次这么清醒的理解final关键字?
面试题:用过final关键字吗?它有什么作用 面试考察点 考察目的: 了解面试者对Java基础知识的理解 考察人群: 工作1-5年,工作年限越高,对于基础知识理解的深度就越高. 背景知识 final关 ...
- BugKu之备份是个好习惯
题目:备份是个好习惯 思路分析 打开题目,看到一个字符串. 联系到题目,就猜到肯定是源代码泄露,用工具扫一下,发现了index.php.bak,验证了我的猜想,下载下来看看. <?php /** ...
- 为什么IDEA不推荐你使用@Autowired ?
@Autowired注解相信每个Spring开发者都不陌生了!在DD的Spring Boot基础教程和Spring Cloud基础教程中也都经常会出现. 但是当我们使用IDEA写代码的时候,经常会发现 ...
- 记一次排查CPU高的问题
背景 将log4j.xml的日志级别从error调整为info后,进行压测发现CPU占用很高达到了90%多(之前也就是50%,60%的样子). 问题排查 排查思路: 看进程中的线程到底执行的是什么, ...
- Java8新特性之Optional,如何优雅地处理空指针
是什么 从 Java 8 引入的一个很有趣的特性是 Optional 类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException)-- 每个 Java ...
- 浅谈springboot自动配置原理
前言 springboot自动配置关键在于@SpringBootApplication注解,启动类之所以作为项目启动的入口,也是因为该注解,下面浅谈下这个注解的作用和实现原理 @SpringBootA ...
- mysql查询报错this is incompatible with sql_mode=only_full_group_by
临时改法:select @@GLOBAL.sql_mode;查询当前mysql的模式去掉ONLY_FULL_GROUP_BY重新设置:set @@GLOBAL.sql_mode='STRICT_TRA ...
- Import “google/api/annotations.proto“ was not found or had errors.问题;proto 中外部引入proto文件问题解决方案
问题 在proto 中引入了一些其他 proto 文件的情况下会出现was not found or had errors.问题 在使用Kratos框架时proto文件引入import "g ...
- python中jsonpath模块,解析多层嵌套的json数据
1. jsonpath介绍用来解析多层嵌套的json数据;JsonPath 是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括:Javascript, Python, ...
- [cf1285F]Classical
先枚举$d=\gcd$,然后暴力枚举所有$d$的倍数,相当于求出若干个数中最大的互素对 假设选出的数依从大到小排序后为$a_{i}$,令$g_{i}=\min_{(a_{i},a_{j})=1}j$, ...