ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

使用HeartBeat实现高可用HA的配置过程详解

2019-02-27 14:55:10  阅读:322  来源: 互联网

标签:HA slave 详解 master heartbeat HeartBeat ha root localhost


一、前言
HA即(high available)高可用,又被叫做双机热备,用于关键性业务。简单理解就是,有2台机器 A 和 B,正常是 A 提供服务,B 待命闲置,当 A 宕机或服务宕掉,会切换至B机器继续提供服务。常见的实现高可用的开源软件有 heartbeat 和 keepalived

二、准备实验环境
服务器A:
主机名:master
操作系统:CentOS6.5 64位
eth0网卡地址:192.168.1..3

服务器B:
主机名:slave
操作系统:CentOS6.5 64位
eth0网卡地址:192.168.1.4

虚拟VIP:
VIP:192.168.1.2

三、设置主机名
A服务器
[root@localhost ~]# hostname master
[root@localhost ~]# vim /etc/sysconfig/network
HOSTNAME=master

B服务器
[root@localhost ~]# hostname slave
[root@localhost ~]# vim /etc/sysconfig/network
HOSTNAME=slave

四、关闭防火墙和Selinux(2台节点都要操作)
[root@localhost ~]# setenforce 0
[root@localhost ~]# service iptables stop
[root@localhost ~]# chkconfig iptables off

五、配置hosts文件(2台节点都操作)
[root@localhost ~]# vim /etc/hosts
192.168.1.3 master
192.168.1.4 slave

六、设置ssh互信(2台节点都操作)
[root@master ~]# ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''
[root@master ~]# ssh-copy-id -i .ssh/id_rsa.pub root@192.168.1.4
测试
[root@master ~]# ssh 192.168.1.4 'ifconfig'

七、安装epel扩展源 (2台都操作)
[root@master ~]yum install -y epel-release
八、安装heartbeat (2台都操作)
[root@master ~]# yum -y install heartbeat httpd
[root@slave ~]# yum -y install heartbeat
httpd

八、配置时间同步(2台都操作)
[root@master ~]# date -s "2019-02-27“
2019年 02月 27日 星期三 00:00:00 CST
[root@master ~]# date -s "13:50:30"

九、配置httpd
[root@master ~]# echo "Master" > /var/www/html/index.html
[root@master ~]# service httpd start
[root@master ~]# service httpd stop
[root@master ~]# chkconfig httpd off

十、配置Heartbeat
1、拷贝三个配置文件
[root@master ~]# cd /etc/ha.d/
[root@master ha.d]# cp -r /usr/share/doc/heartbeat-3.0.4/{authkeys,ha.cf,haresources} ./

2、修改authkeys
[root@master ha.d]# vim authkeys
auth 1
1 md5 5t2dhlk6sdrf8dshnm3
更改authkeys的权限
[root@master ha.d]# chmod 600 authkeys

3、编辑haresources文件
[root@master ha.d]# vim haresources
master IPaddr::192.168.1.2/24/eth0:0 httpd

4、配置ha.cf文件
[root@master ha.d]# vim ha.cf
bcast eth0
node master
node slave

配置说明
debugfile /var/log/ha-debug:该文件保存heartbeat的调试信息。
logfile /var/log/ha-log:heartbeat的日志文件。
keepalive 2:心跳的时间间隔,默认时间单位为秒s。
deadtime 30:超出该时间间隔未收到对方节点的心跳,则认为对方已经死亡。
warntime 10:超出该时间间隔未收到对方节点的心跳,则发出警告并记录到日志中。
initdead 60:在某系统上,系统启动或重启之后需要经过一段时间网络才能正常工作,该选项用于解决这种情况产生的时间间隔,取值至少为deadtime的2倍。
udpport 694:设置广播通信使用的端口,694为默认使用的端口号。
bcast eth0 :通过eth0网卡进行向外广播

十一、把主节点上的三个配置文件拷贝到从节点
[root@master ~]#cd /etc/ha.d
[root@master ha.d]#scp authkeys ha.cf haresources slave:/etc/ha.d

十二、启动heartbeat服务
[root@master ha.d]# service heartbeat start
使用HeartBeat实现高可用HA的配置过程详解

httpd的80端口已经打开
使用HeartBeat实现高可用HA的配置过程详解

网页访问VIP地址
使用HeartBeat实现高可用HA的配置过程详解

十三、切换至备机
必须远程启动备机的heartbeat
[root@master heartbeat]# ssh slave 'service heartbeat start'

[root@master ha.d]# cd /usr/share/heartbeat/
[root@master heartbeat]# ./hb_standby

使用HeartBeat实现高可用HA的配置过程详解

如果想切换至主机则
[root@slave ~]# cd /usr/share/heartbeat
[root@slave heartbeat]# ./hb_standby

标签:HA,slave,详解,master,heartbeat,HeartBeat,ha,root,localhost
来源: https://blog.51cto.com/11388951/2355580

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有