hbase高可用(HA)配置

火山日常啰嗦
前面配置了hbase分布式集群,现在来配置Hbase高可用,配置hbase的高可用的目的是为了解决主从架构的单点故障问题。

事前准备:
配置好了hbase集群

配置过程:
hbase集群的高可用的配置很简单,在配好hbase集群的前提下,在集群中选择一个你习惯性将之作为master的节点,在它的hbase的conf目录下创建文件backup-masters,然后在文件backup-masters里添加backup master节点的记录,一条记录代表一个backup master,可以在文件里配置多条记录,即配置多个backup master。
在conf目录下创建文件backup-masters

《hbase高可用(HA)配置》 clipboard.png 在文件backup-masters里添加backup master节点记录
《hbase高可用(HA)配置》 clipboard.png 配置节点volcano02.cc.com和volcano03.cc.com作为backup master

在配置了backup-masters文件的节点上启动hbase集群,启动hbase集群的命令:./bin/start-hbase.sh

可以发现不仅启动hbase集群的节点上运行着Hmaster进程,其他的两个作为backup master的节点上也运行着Hmaster进程
《hbase高可用(HA)配置》 clipboard.png
《hbase高可用(HA)配置》 clipboard1.png
《hbase高可用(HA)配置》 clipboard2.png 在hbase web页面(
ip:60010/master-status,ip要具体化指哪台机器的ip)查看可以发现,此时volcano01.cc.com是master,而volcano02.cc.com、volcano03.cc.com是backup master,当master挂掉后,zookeeper会在backup master中重新选举master。

volcano01.cc.com(master)
《hbase高可用(HA)配置》 clipboard.png

volcano02.cc.com(backup master)
《hbase高可用(HA)配置》 clipboard.png volcano03.cc.com(backup master)
《hbase高可用(HA)配置》 clipboard.png

集群master切换测试:
宕掉当前的master:
使用命令:hbase-daemon.sh stop master 或者 直接使用kill -9 进程号杀死Hmaster进程(这些操作仅仅是关掉该节点上的master进程而已,不会影响集群其他节点的进程,但是不能使用命令./bin/stop-hbase.sh来模拟宕掉master,因为这个命令是关闭整个hbase集群的,如果使用了这个命令,那么整个hbase集群就会关掉,整个集群都关掉了,还谈什么master切换呢)

执行./bin/hbase-daemon.sh stop master //宕掉当前volcano01.cc.com的master
《hbase高可用(HA)配置》 clipboard.png hbase web页面已经连接不上了,因为volcano01.cc.com的master已经宕掉了
《hbase高可用(HA)配置》 clipboard.png 查看backup master的状态

volcano03.cc.com从backup master变成了master
《hbase高可用(HA)配置》 clipboard.png

volcano02.cc.com还是backup master
《hbase高可用(HA)配置》 clipboard.png 重新启动volcano01.cc.com的master,重启后发现它不会取代volcano03.cc.com重新成为master,而是作为backup master存在

volcano01.cc.com重启后成为backup master
《hbase高可用(HA)配置》 clipboard.png volcano03.cc.com依然是master
《hbase高可用(HA)配置》 clipboard.png 配置结束,就是这么简单,虽然简单,但我还是详细地记录下来。

    原文作者:火山Vol
    原文地址: https://www.jianshu.com/p/b2dcf763a482
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞