Nginx进阶
2022年12月22日小于 1 分钟
nginx 高可用
尽管单体的 Nginx 比较稳定,在长时间运行的情况下,还是存在有可能崩溃的情况。如何保障接入层的 Nginx 高可用呢?可以使用 Nginx + KeepAlived 组合模式,具体如下:
(1)使用两台(或以上)Nginx 组成一个集群,分别部署上 KeepAlived,设置成相同的虚 IP 供下游访问,从而保证 Nginx 的高可用。
(2)当一台 Nginx 挂了,KeepAlived 能够探测到,并会将流量自动迁移到另一台 Nginx 上,整个过程对下游调用方透明。
如果流量不断增长,两台 Nginx 的集群模式不够,就可以使用 LVS + KeepAlived 组合模式实现 Nginx 的可扩展,并且在架构上进行升级。
LVS (Linux Virtual Server)可以作为负载均衡器,将来自客户端的请求分发到多台 Nginx 服务器上;Keepalived 可以监控 Nginx 服务器的健康状态,当某台 Nginx 服务器发生故障时,Keepalived 可以自动将流量切换到其他健康的 Nginx 服务器上,从而实现高可用性。

