HA高可用HEARTBEAT配置

该脚本用于实现HA高可用环境下的心跳检测。当`start`时,检查appfxl进程是否存在,若不存在则启动;当`stop`时,查找并杀死appfxl进程。适用于服务器管理和CRM系统的维护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、用yum安装heartbeat、libnet安装包。(heartbeat需要安装两次,第一次安装的为一些依赖文件)
2、将/usr/share/doc/heartbeat 下ha.cf,haesources,authkeys三个文件复制到/etc/ha.d下。
3、ln -s /etc/ha.d /usr/etc/ha.d 做软连接
4、修改配置文件ha.cf、haresources、authkeys
ha.cf
debugfile、logfile 配置调试日志路径。
logfacility
keepalive 2
deadtime  5
warntime 1250ms
initdead 20
udpport  694
ucast 对方IP
ping 网关
auto_failback on
#auto_failback off
#respawn hacluster /usr/lib/heartbeat/ipfail
// 两台主机名(修改/etc/hosts,/etc/sysconfig/network)
node xrhao
node xrTwo
haresources资源文件
xrhao IPaddr::192.168.10.208/32/eth0:0 httpd (主服务器的虚拟IP地址)
authkeys
auth 1
1 crc
5、chmod 600 authkeys
6、将三个配置文件SCP到备服务器上,只需修改HA.CF中的对应IP地址即可。
7、BUG修复(2.14版本)
修改heartbeat启动脚本
heartbeat的启动脚本指的是/etc/init.d/heartbeat,这Bug涉及两方面的内容:

a、crm 临时目录的问题
该问题在之前的文章中已多次提到,请见 这里 。修改的内容就是下面红色标记部分:
引用
StartHA() {
  EchoNoNl "Starting High-Availability services: "
......
  if
   [ ! -d $RUNDIR/heartbeat/ccm -o ! -d $RUNDIR/heartbeat/crm ]
  then
......

b、heartbeat启动后,导致不能正常重启或关闭机器的问题
由于系统升级的原因,heartbeat启动脚本中chkconfig部分的定义不符合要求,导致不能创建K05heartbeat的链接。换句话说,当heartbeat 已经启动,并手动重启或关闭机器时,不会预先关闭heartbeat进程,而在终止网络、挂载等进程后,heartbeat不断的报错,必须强制关机。
发生该问题时,关机途中,您会在主屏幕上看到类似下面的报错信息:

解决方法是,把heartbeat启动脚本中,下面的内容:
引用
# chkconfig: 2345 75 05
修改为:
引用
# chkconfig: - 75 05
然后重新创建启动服务表:
# chkconfig --del heartbeat
# chkconfig --add heartbeat
可用下面的命令确认修改是否生效:
引用
# find /etc/rc.d/ -name 'K05heartbeat'
/etc/rc.d/rc4.d/K05heartbeat
/etc/rc.d/rc6.d/K05heartbeat
/etc/rc.d/rc1.d/K05heartbeat
/etc/rc.d/rc0.d/K05heartbeat
/etc/rc.d/rc2.d/K05heartbeat
 
8、测试。
service heartbeat start
 
资源脚本例子::
fxl(resouce.d目录下)

#!/bin/sh
logger $0 called with $1
case "$1" in
        start)

                cmdx= `ps aux | grep appfxl | grep -v grep| awk '{print $2}'`
                if [ !$cmdx ];then
                /home/appfxl &
                fi
                ;;
        stop)
                cmd=`ps aux | grep appfxl | grep -v grep | awk '{print $2}'`
                kill $cmd
                ;;
        restart)
                ;;
        *)
esac

exit 0
               

 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值