欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

nginx+keepalived双机热备

发布时间:2025/5/22 编程问答 45 豆豆
生活随笔 收集整理的这篇文章主要介绍了 nginx+keepalived双机热备 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

简介

  keepalived是一个类似于layer3, 4 & 5交换机制的软件,即可以使IP层、传输层、和应用层的服务冗余集群化。常应用于iP的虚拟化,能够实现mysql、nginx等服务的双机热备。

  Keepalived高可用服务对之间的故障切换转移,是通过 VRRP (Virtual Router Redundancy Protocol ,虚拟路由器冗余协议)来实现的。

  在 Keepalived服务正常工作时,主 Master节点会不断地向备节点发送(多播的方式)心跳消息,用以告诉备Backup节点自己还活看,当主 Master节点发生故障时,就无法发送心跳消息,备节点也就因此无法继续检测到来自主 Master节点的心跳了,于是调用自身的接管程序,接管主Master节点的 IP资源及服务。而当主 Master节点恢复时,备Backup节点又会释放主节点故障时自身接管的IP资源及服务,恢复到原来的备用角色。

实验软件版本:

  nginx:1.14.2

  keepalived:2.0.12

  两个软件的安装都是使用的源码包编译安装。

系统结构

  192.168.50.80  nginx+keepalived

  192.168.50.81  negin+keepalived

  192.168.50.100  VIP

配置文件

80上的配置文件

1 vim /opt/keepalived-2.0.12/etc/keepalived/keepalived.conf 2 3 global_defs { 4 router_id gh01 5 } 6 7 vrrp_instance VI_1 { 8 state MASTER 9 interface ens32 10 virtual_router_id 100 11 priority 100 12 advert_int 1 13 authentication { 14 auth_type PASS 15 auth_pass 1111 16 } 17 virtual_ipaddress { 18 192.168.50.100/24 19 } 20 }

81上的配置文件

1 vim /opt/keepalived-2.0.12/etc/keepalived/keepalived.conf 2 3 global_defs { 4 router_id gh02 5 } 6 7 vrrp_instance VI_1 { 8 state BACKUP 9 interface ens32 10 virtual_router_id 100 11 priority 80 12 advert_int 1 13 authentication { 14 auth_type PASS 15 auth_pass 1111 16 } 17 virtual_ipaddress { 18 192.168.50.100/24 19 } 20 }

常用命令

启动keepalived

1 cd /opt/keepalived-2.0.12/sbin 2 ./keepalived -f /opt/keepalived-2.0.12/etc/keepalived/keepalived.conf

关闭keepalived

1 pkill keepalived

keepalived日志位置:/var/log/message

验证

  同时启动80和81的nginx和keepalived,访问VIP192.168.50.100,访问到的是主服务器80上的nginx,此时VIP是虚拟注册在80的网卡上。

  将80上的keepalived关闭,VIP就被注册到了81上,再次访问VIP,就访问到了80的nginx。

  上述过程,VIP始终是可以访问的,只是后台切换了不同的nginx服务器。

总结

  主服务器的keepalived关闭,虚拟IP就自动转移到备用服务器,由此我们可以写一个定时任务,不断检测应用(nginx、mysql等)是否正常,一旦检测到应用异常,关闭相对主机上的keepalived,下次用户的访问就会自动转移到备用服务器上。

转载于:https://www.cnblogs.com/guanghe/p/10396930.html

总结

以上是生活随笔为你收集整理的nginx+keepalived双机热备的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。