Nginx主从是大型架构的核心,下面我重点详解Nginx主从@mikechen
Nginx 主从
Nginx 主从,通常指在高可用架构中,部署两个或多个 Nginx 实例。
整体架构,如下图所示:
主节点(Master Nginx):承担客户端的主要访问请求,正常运行时对外提供服务;
从节点(Slave Nginx):作为备用节点,在主节点故障或宕机时快速接管流量。
主从架构常与 Keepalived 结合使用,实现主从热备与故障自动切换(即 VIP 漂移)。
为什么需要Nginx主从
Nginx,作为高性能的Web服务器、和反向代理服务器,在生产环境中扮演着至关重要的角色。
然而,任何单点都存在风险,比如:如果只有一台Nginx服务器,一旦该服务器宕机、网络故障或Nginx进程崩溃。
所有依赖它的服务都将中断,导致业务不可用。
通过主从架构,可以消除单点故障,确保Nginx服务的持续运行。
Nginx 主从原理
Nginx主从的实现原理核心:是心跳检测(Heartbeat)和IP漂移(IP Takeover)。
目前最常见的实现方案是结合使用Keepalived。
如下图所示:
配置如下:
+-------------------+ | VIP (Virtual IP) | +---------|---------+ | | +---------v---------+ | Load Balancer | (可选,如LVS) +---------|---------+ | +------------------+------------------+ | | +-------v-------+ +-------v-------+ | Nginx Master | | Nginx Slave | | (Keepalived | | (Keepalived | | Master) | | Backup) | | | <---- VRRP Heartbeat ----> | | | Nginx Process | | Nginx Process | | Health Check | | Health Check | +-------|-------+ +-------|-------+ | | +------------> Backend Servers <-------------+
Keepalived 绑定虚拟IP(VIP),对外提供一个固定访问入口;
主节点 Nginx 绑定 VIP,正常服务;
从节点 Nginx 处于 standby 状态,监控主节点健康;
一旦主节点故障,Keepalived 触发 VRRP 漂移 VIP 到从节点;
从节点立即对外提供服务,实现高可用无缝切换。
陈睿mikechen
10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。
关注作者「mikechen」公众号,获取更多技术干货!

后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》,后台回复【面试】即可获取《史上最全阿里Java面试题总结》