您的位置:首页 > 运维架构 > 网站架构

Heartbeat v2 + CRM + heartbeat-ldirectord实现LVS高可用

2015-04-10 21:01 519 查看
一、简介

heartbeat v2 版的资源管理器(CRM)就是crm,废弃了haresouce。由于crm的配置文件都是xml格式的,没有xml功底的很难驾驭,因此我们可以使用gui的方式来配置,从而让gui来帮我们将配置文件转化为xml格式的。heartbeat保存cib.xml的位置如下:/var/lib/heartbeat/crm/cib.xml
heartbeat-ldirectord是专门为lvs设计的,它可以实现lvs的配置,不需要通过ipvsadm去管理,ldirectord的配置文件可以定义创建lvs的规则,并且还可以提供对realserver的健康监测。因此将ldirectord配置为高可用服务即可实现lvs的高可用。

二、配置
1.配置MESSAGE Layer的通信秘钥(同authkys)
2.配置MESSAGE Layer的属性信息(同ha.cf)
为了是实现是以crm来作为资源管理器的,需要在ha.cf中加入一行如下:
crm  respawn 或者 crm  on
开启heartbeat的服务
# service  heartbeat start


3.ldirectord的配置(安装heartbeat-ldirectord)
① heartbeat-ldirectord软件包的组成:
/etc/ha.d/resource.d/ldirectord   #在heartbeat的lsb的RA中加入服务
/etc/init.d/ldirectord             #启动脚本
/etc/logrotate.d/ldirectord         #日志轮转
/usr/lib/ocf/resource.d/heartbeat/ldirectord
/usr/sbin/ldirectord
/usr/share/doc/heartbeat-ldirectord-2.1.3
/usr/share/doc/heartbeat-ldirectord-2.1.3/ldirectord.cf  #配置样例
/usr/share/man/man8/ldirectord.8.gz        #帮助手册
因此只要将/usr/share/doc/heartbeat-ldirectord-2.1.3/ldirectord.cf拷贝到/etc/ha.d/ldirectord.cf
#cp /usr/share/doc/heartbeat-ldirectord-2.1.3/ldirectord.cf /etc/ha.d/ldirectord.cf
② 配置ldirectord.cf
# Global Directives   ##全局配置参数
checktimeout=3          #健康监测超时时间
checkinterval=1        #监测间隔
fallback=127.0.0.1:80    #sorryserver
autoreload=yes           #配置文件是否每隔时间自动reload加载
#logfile="/var/log/ldirectord.log"    #日志位置
#logfile="local0"                #日志的设备
#emailalert="admin@x.y.z"        #邮件告警收件人
#emailalertfreq=3600              #邮件告警间隔
#emailalertstatus=all
quiescent=yes

# Sample for an http virtual service
virtual=192.168.192.223:80            #Vip地址和端口
real=192.168.112.100:80 gate 4   #rs的地址,端口,权重
real=192.168.112.200:80 gate 5
real=192.168.112.201:80 gate 7
fallback=127.0.0.1:80 gate        #sorryserver的配置
service=http                      #服务类型,支持众多类型,详见man
request="index.html"
receive="Test Page"
scheduler=wrr                    #调度算法
#persistent=600
#netmask=255.255.255.255
protocol=tcp
checktype=negotiate
checkport=80
request="index.html"
receive="Test Page"
ldirectord.cf里面有很多的配置样例,参照修改即可,有问题可以直接man ldirectord

③配置CRM,实现lvs的高可用
# hb_gui  &    ##开启图形配置接口,需要先安装heartbeat-gui
由于登录图形控制台是通过用户名:hacluster,因此需要先给hacluster加上密码
# echo “123456” | passwd  hacluster  --stdin
启动后的图形界面如下:











验证服务是否起来:node1已经起来了;




node2没有启动,正常。




crm_mon可以查看集群的状态:


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息