台式机(Hmaster)+笔记本(regionserver)搭建的真实集群,
zookeeper在台式机是真实节点,在笔记本是两个伪节点
域名 | |
台式机 | Desktop |
笔记本 | Laptop |
#----------------------------------配置----------------------------------------------
主节点
$HBASE_HOME/conf新建backup-masters
首行写入Laptop
启动后会发现Laptop中也出现Hmaster进程
#---------------------------------测试-----------------------------------------------
一,让主节点宕机
(Python3.6) [email protected]:conf$ jps
13568 ResourceManager
43121 HMaster
13762 NodeManager
41956 QuorumPeerMain
12855 NameNode
13035 DataNode
69629 Jps
43390 HRegionServer
我们强行关闭HRegionServer和HMaster,用来模拟宕机
(Python3.6) [email protected]:conf$ kill -9 43121
(Python3.6) [email protected]:~$ kill -9 43390
二,
主节点宕机后,去从节点(Laptop)查询数据
hbase(main):014:0> scan 'book'
ROW COLUMN+CELL
1 column=information:NAME, timestamp=1590680160519, value=Lie Sporting
1 column=information:price, timestamp=1590680160519, value=30
2 column=information:NAME, timestamp=1590680160519, value=Pride & Prejud
ice
2 column=information:price, timestamp=1590680160519, value=70
3 column=information:NAME, timestamp=1590680160519, value=Fall of Giants
3 column=information:price, timestamp=1590680160519, value=50
4 column=information:NAME, timestamp=1590680160519, value=Chi Yu
4 column=information:price, timestamp=1590680160519, value=18
5 column=information:NAME, timestamp=1590680160519, value=new data
5 column=information:price, timestamp=1590680160519, value=27
6 column=information:NAME, timestamp=1590680160519, value=new_dsssssata
6 column=information:price, timestamp=1590680160519, value=555
6 row(s)
Took 0.0780 seconds
#-------------------------------宕机后web ui变化-----------------------------------------------
宕机后,master:16010是肯定打不开了,
但是slave:16010可以打开
http://laptop:16010/master-status打开后发现:
可以看到原来的从节点变成了master
#----------------------------------宕机节点修复----------------------------------------------------------------------
下面两句修复宕机节点顺序不能更换:
hbase-daemon.sh start master
hbase-daemon.sh start regionserver
web ui可以再次打开Desktop:16010
但是此时的master依然是Laptop,Desktop成为Back-up master.
此时的Desktop也可以继续查询hbase中的数据了.
Reference: