linux 双机集群,linux---集群架构初探(23)Nginx双机热备---Keepalived高可用

Keepalived作用

若当前设备发生故障,启用备用设备,解决单点故障。

工作流程

1.将多台设备加入到一个虚拟组(拥有虚拟IP和虚拟MAC地址)

2.用户将数据发送至虚拟组,虚拟组会将目标地址转换成当前的master设备(主设备)的IP和MAC。

3.若master设备出现故障,则从其他备用设备中启用优先级最高的一台作为master设备。

使用协议

VRRP 虚拟路由冗余协议 Virtual Router Redundancy Protocol

裂脑

可能会出现的故障:裂脑,虚拟组中心跳线断开,有两台及以上的设备认为自己是主设备。

模拟环境

两台负载均衡服务器lb01(192.168.1.5)  lb02(192.168.1.6)

安装Keepalived

yum install keepalived -y

systemctl start keepalived

systemctl enable keepalived

配置文件

位置:/etc/keepalived/keepalived.conf

注:这里只留下了最基本的几行,先跑通。

a4272dec8616dd21837c8a50b64f70b6.png

advert_int是主备设备通讯时间间隔,已确认对方还“正常活着”。(心跳线)

查看发现在lb01中的网卡ens33下多了一个IP地址

e55c12800d6ac42f71cd3752fc95589a.png

而在lb02中的网卡ens33下没有该IP,说明目前lb01是主设备

a1908a2c739423a1fd83803fb7fc54a3.png

测试漂移

漂移即指当主设备宕机时,master状态从lb01漂到lb02

打开物理主机的cmd,输入arp -a

1a9c3d5ea756237a784bfdb293bca40c.png

可以看到192.168.1.3也是有MAC地址的,并且与192.168.1.5相同。

在lb01中使用命令:tail -f /var/log/nginx/access.log

打开浏览器,在地址栏输入192.168.1.3,发现lb01中access.log文件中记录了此次请求。

将lb01关机,在lb02中使用命令tail -f /var/log/nginx/access.log,再刷新浏览器,发现可以正常访问,并且在lb02中的access.log中记录了此次请求。

7c94bcdc22117b8cb8cdb0573e44f80b.png

说明漂移成功。(此时打开lb01,会发现主设备又变成lb01了,因为其优先级更高)

来源:https://www.cnblogs.com/1016391912pm/p/13185651.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值