设为首页 收藏本站
查看: 746|回复: 0

[经验分享] heartbeat双机热备配置(适用centos6\rhel6)

[复制链接]

尚未签到

发表于 2019-1-7 12:11:58 | 显示全部楼层 |阅读模式
    该文档环境:rhel6.3 x86_64系统,http://linux-ha.org/wiki/Download,下载的Heartbeat glue agents,其他情况不一定适用,可能会出现各种报错,有个agents下载下来需改名为agents.tar.gz,其他均为*.tar.bz2格式,bzip2 -d *.tar.bz2,然后tar -xvf *.tar即可解开

更新并下载软件包
yum install glib2-devel libtool-ltdl-devl net-snmp-devel bzip2-devel ncurses-devel openssl-devel libtool libxml2-devel gettext bison flex zlib-devel mailx which libxslt docbook-dtds docbook-style-xsl PyXML shadow-utils opensp autoconf automake libaio-devel libxslt-devel gcc make pkgconfig libxml2 libuuid-develyum update(否则heartbeat装完后启动会报glib相关错误,无从查起,升级后一定需要重启一下)
配置主机名
  配置每个节点的/etc/hosts文件,保证两个节点内容一致,/etc/hosts文件内容如下:
  192.168.180.196 zjumaster
  192.168.180.197 zjuslave
添加用户和组
grouadd haclient
useradd -g haclient -M -s /sbin/nologin hacluster安装clusterglue
cd Reusable-Cluster-Components-glue--glue-1.0.9
./autogen.sh
./configure LIBS='/lib64/libuuid.so.1'(32位的不用加64)
make
make  install安装resourceagents
cd  ClusterLabs-resource-agents-b735277
./autogen.sh
./configure
LIBS='/lib64/libuuid.so.1'(32位的不用加64)
make
make install安装heartbeat
cd Heartbeat-3-0-7ea82377fa8
./ConfigureMe configure
LIBS='/lib/libuuid.so.1'
gmake
make install编译安装3.0.7,make时出错了
ucast.c: 在函数‘HB_make_send_sock’中:
ucast.c:468: 错误:与‘i’类型冲突
ucast.c:465: 附注:‘i’的上一个声明在此
ucast.c:502: 错误:在非结构或联合中请求成员‘ifr_ifrn’
ucast.c:508: 错误:在非结构或联合中请求成员‘ifr_ifrn’
ucast.c:513: 错误:在非结构或联合中请求成员‘ifr_ifrn’
解决办法:Heartbeat-3-0-7e3a82377fa8/lib/plugins/HBcomm/ucast.c
这个文件貌似有问题,删除468行int i = 1;应该就能make了
配置heartbeat      
cp -a /usr/etc/ha.d /etc/
rm -fr /usr/etc/ha.d
ln -s /etc/ha.d /usr/etc
chkconfig add heartbeat
cp /usr/share/doc/haresources /etc/ha.d/
cp /usr/share/doc/authkeys /etc/ha.d
cp /usr/share/doc/ha.cf /etc/ha.d
chmod 600 /etc/ha.d/authkeys修改配置文件

cd/etc/ha.d
vim authkeys:#修改验证方式
auth 1
1 crc
#2 sha1 HI!
#3 md5 Hello!  vim ha.cf#配置HA
debugfile /var/log/ha-debug
logfile /var/log/ha-loglog
facility     
local0#心跳间隔
keepalive 2#死亡阀值
deadtime 30#警告时间
warntime 10#首次启动heartbeat,等待多久才启动主服务资源
initdead 60#连接端口
udpport 694#心跳线接口
#bcast   eth1
#主节点的网卡设备、备份机的心跳线接口IPucast eth0 10.11.16.170
auto_failback on
node smsmaster
node smsslave
ping 10.11.16.169
respawn hacluster /usr/lib64/heartbeat/ipfail
apiauth ipfail gid=haclient uid=hacluster  vimharesources#配置资源
  主节点的hostname vipresource1 [::arg1 ::arg2] resource2 [::arg1 ::arg2],例如本例中主节点
smsmaster IPaddr::180.153.153.27/32/eth2 smsresource.sh定义heartbeat启动和关闭动作
  详细启动和关闭动作可参考各节点/etc/ha.d/resource.d/smsresource.sh文件
  主要是对start和stop方法去拿资源的设定
case $1 in
        start)
                start
        ;;
        stop)
                stop
        ;;
        restart)
                stop
                sleep 10
                start
        ;;
        *)
                echo "Usage: $0{start|stop|restart}"
esac  

  各个动作具体内容参考/opt/sms/scripts内各脚本内容
  主节点:
  启动
${route_start}#添加静态路由,定义联通通道仍然走180.153.154.17这个IP,把所有以180.153.153.29出去的包源IP地址改成180.153.153.27出去,把所有以180.153.154.17出去的包源IP地址改成180.153.154.17出去。
${gate_service_start}#启动行短网关,先判定行短网关的3个进程是否存在,如不存在则启动
${sms_exchange_start}#启动Exchange服务,先判定exchange进程是否存在,如不存在则启动
#${sms_phoneserver_start}#这里手机服务暂不做主备切换,故无需任何操作
${sms_mqmonitor_start}#启动mq监控服务,先判定mqmonitor进程是否存在,如不存在则启动
${sms_monitor_start}#启动系统监控服务:先判定monitor.sh进程是否存在,如不存在则启动monitor,当exchange、行短、mysql进程结束后会立即关闭当前节点heartbeat  

  关闭
${sms_monitor_stop}#停止系统监控服务
${sms_exchange_stop}#停止exchange服务
${route_stop}#删除启动时定义的静态路由
${gate_service_stop}#停止行短网关3个进程服务
#${sms_phoneserver_stop}#这里手机服务暂不做主备切换,故无需任何操作
${sms_mqmonitor_stop}#停止mq监控服务  

  备节点:
  启动
${route_start}#添加静态路由,把所有以180.153.153.28出去的包源IP地址改成180.153.153.27出去,把所有以180.153.154.155出去的包源IP地址改成180.153.153.27出去。
${gate_service_start}#启动行短网关,先判定行短网关的3个进程是否存在,如不存在则启动
${sms_exchange_start}#启动Exchange服务,先判定exchange进程是否存在,如不存在则启动
#${sms_phoneserver_start}#这里手机服务暂不做主备切换,故无需任何操作
${sms_mqmonitor_start}#启动mq监控服务,先判定mqmonitor进程是否存在,如不存在则启动
${sms_monitor_start}#启动系统监控服务:先判定monitor.sh进程是否存在,如不存在则启动monitor,当exchange、行短、mysql进程结束后会立即关闭当前节点heartbeat  

  关闭
${sms_monitor_stop}#停止系统监控服务
${sms_exchange_stop}#停止exchange服务
${route_stop}#删除静态路由
${gate_service_stop}#停止行短网关服务
#${sms_phoneserver_stop}#这里手机服务暂不做主备切换,故无需任何操作
${sms_mqmonitor_stop}#停止mq监控服务  

  最后service heartbeat 启动的时候报错
  /usr/lib/ocf/lib//heartbeat/ocf-shellfuncs,该文件找不到
  做下软连接即可ln -s /usr/local/ha/usr/lib/ocf /usr/lib/ocf




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-660338-1-1.html 上篇帖子: 打造全免费linux集群heartbeat+freenas(免费存储系统) 下篇帖子: drbd+heartbeat+nfs高可用架构搭建
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表