Nginx Keepalived配置详细说明以及案例
Nginx Keepalived 配置详细说明
1. 概述
Keepalived 是一个用于实现高可用性(HA)的软件,通常与 Nginx 结合使用,以确保在服务器故障时自动切换到备用服务器。Keepalived 通过 VRRP(Virtual Router Redundancy Protocol)协议实现主备切换。
2. 安装 Keepalived
在 CentOS 或 Ubuntu 上安装 Keepalived:
# CentOS yum install keepalived -y # Ubuntu apt-get install keepalived -y
3. 配置 Keepalived
Keepalived 的配置文件通常位于 /etc/keepalived/keepalived.conf
。
主服务器配置
vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1234 } virtual_ipaddress { 192.168.1.100 } }
备用服务器配置
vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 51 priority 90 advert_int 1 authentication { auth_type PASS auth_pass 1234 } virtual_ipaddress { 192.168.1.100 } }
4. 配置 Nginx
确保 Nginx 在两台服务器上都已安装并配置好。Nginx 的配置文件通常位于 /etc/nginx/nginx.conf
或 /etc/nginx/sites-available/default
。
5. 启动服务
启动并启用 Keepalived 和 Nginx 服务:
systemctl start keepalived systemctl enable keepalived systemctl start nginx systemctl enable nginx
6. 测试
访问虚拟 IP 地址
192.168.1.100
,确保 Nginx 正常响应。停止主服务器的 Keepalived 服务,观察备用服务器是否接管虚拟 IP。
案例
假设有两台服务器:
主服务器:192.168.1.101
备用服务器:192.168.1.102
虚拟 IP:192.168.1.100
主服务器配置
vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1234 } virtual_ipaddress { 192.168.1.100 } }
备用服务器配置
vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 51 priority 90 advert_int 1 authentication { auth_type PASS auth_pass 1234 } virtual_ipaddress { 192.168.1.100 } }
测试步骤
启动主服务器和备用服务器的 Keepalived 和 Nginx 服务。
访问
192.168.1.100
,确认 Nginx 正常响应。停止主服务器的 Keepalived 服务,观察备用服务器是否接管虚拟 IP。
恢复主服务器的 Keepalived 服务,观察主服务器是否重新接管虚拟 IP。
通过以上配置和测试,可以实现 Nginx 的高可用性。
本篇文章内容来源于:Nginx Keepalived配置详细说明以及案例
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。