HBase学习笔记(三)

配置多功能高可用性master
hadoop和hbase被设计的可以自动在slave节点间进行故障转移。由于在大型集群中有很多节点,一个slave节点的服务器的硬件故障被认为是正常的。
对于主节点,hbase本身没有单点故障(SPOF)。它使用zookeeper来提供中央协调服务。zookeeper通常有3个或者更多个服务器,只要集群中超过半数的服务器在线,zookeeper就正常的提供服务。
hbase将当前活动的主节点,root region的地址和其他一些主要的运行数据保存在zookeeper。因此,我们可以启动两个或更多个hmaster守护进程在独立的服务器上并且其中第一个被启动的将会作为hbase集群的活动主服务器。然而,hdfs的namenode在集群中存在单点故障的问题。namenode在本地内存中保存整个个hdfs文件系统的镜像。如果namenode宕掉,hdfs将不能再发挥作用。正如你所注意到的,有一个 secondary namenode。然而secondary namenode不是namenode的备用,它只提供了一个对namenode的检查功能。因此,高可用性集群的挑战是使得namenode具有高可用性。
接下来,我们将描述两个高可用的主节点设置,他们使用heartbeat 来相互监控。heartbeat 是一种在linux集群成员之间通信的广泛使用的高可用性解决方案。heartbeat 需要与集群资源管理器(Cluster Resource Manager,CRM)一起使用。集群资源管理器用来为集群提供启动或者停止服务。pacemaker是集群资源管理器用于heartbeat 的首选。我们将设置一个虚拟ip地址用于heartbeat 和pacemaker ,然后将其与活动主节点相关联。

准备
首先应该安装好hdfs和hbase。我们将设置一个主节点的备用节点master2.确保所有的配置都正确,将master1的配置同步到mater2中。
1.在master1和master2上安装heartbeat和pacemaker:
root# apt-get install heartbeat cluster-glue cluster-agents pacemaker 
2. 配置heartbeat,在master1和master2上进行如下修改:
root# vi /etc/ha.d/ha.cf
修改如下:
# enable pacemaker, without stonith
crm yes
# log where ?
logfacility local0
# warning of soon be dead
warntime 10
# declare a host (the other node) dead after:
deadtime 20
# dead time on boot (could take some time until net is up)
initdead 120
# time between heartbeats
keepalive 2
# the nodes
node master1
node master2
# heartbeats, over dedicated replication interface!
ucast eth0 master1 # ignored by master1 (owner of ip)
ucast eth0 master2 # ignored by master2 (owner of ip)
# ping the name server to assure we are online
ping ns
3.创建一个认证密钥(authkeys )文件。在master1和master2上切换到root用户执行如下脚本:
root# ( echo -ne "auth 1\n1 sha1 "; \
dd if=/dev/urandom bs=512 count=1 | openssl md5 ) \
> /etc/ha.d/authkeys
root# chmod 0600 /etc/ha.d/authkeys

创建并且安装一个NameNode资源代理
Pacemaker依赖于一个资源代理以便管理集群。一个资源代理是一个管理集群资源的可执行文件。在本例中,VIP地址和HDFS namenode服务是我们想要使用Pacemaker管理的集群资源。Pacemaker使用IPaddr资源代理来管理VIP,所以我们只需要创建自己的namenode资源代理即可  : 
1.切换到root用户,在master1和mast
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值