Nginx+Keepalived实现简单版高可用主备切换
发布日期:2025-04-20 10:12:37 浏览次数:4 分类:精选文章

本文共 1698 字,大约阅读时间需要 5 分钟。

Nginx+Keepalived实现简单主备切换配置指南

1. 环境准备

在x86机器上配置两台服务器作为主备节点,以下是详细信息:

  • 主节点(机器1)

    • IP地址:192.168.100.201
    • 安装软件:Keepalived、Nginx
  • 备节点(机器2)

    • IP地址:192.168.100.202
    • 安装软件:Keepalived、Nginx

2. Keepalived配置脚本

/etc/keepalived目录下创建以下文件:

1.1 主节点(机器1)配置

  • keepalived.conf

    global_defs {
    router_id Nginx_01
    }
    vrrp_script check_nginx {
    script "/etc/keepalived/check_nginx.sh"
    interval 2
    weight -5
    fall 3
    rise 2
    }
    vrrp_instance VI_1 {
    state MASTER
    interface ens33
    virtual_router_id 51
    priority 150
    advert_int 1
    authentication {
    auth_type PASS
    auth_pass 1111
    }
    virtual_ipaddress {
    192.168.100.203
    }
    track_script {
    check_nginx
    }
    }
  • check_nginx.sh

    #!/bin/bash
    pidof nginx
    if [ $? -eq 0 ]; then
    echo "nginx进程存在"
    else
    echo "nginx进程不存在"
    /etc/init.d/keepalived stop
    fi

1.2 备节点(机器2)配置

  • keepalived.conf

    global_defs {
    router_id Nginx_02
    }
    vrrp_script check_nginx {
    script "/etc/keepalived/check_nginx.sh"
    interval 2
    weight -5
    fall 3
    rise 2
    }
    vrrp_instance VI_1 {
    state BACKUP
    interface ens33
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
    auth_type PASS
    auth_pass 1111
    }
    virtual_ipaddress {
    192.168.100.203
    }
    track_script {
    check_nginx
    }
    }

3. Nginx配置文件

在两台机器上安装并配置Nginx,修改server_name为虚拟IP地址(VIP),例如:

server_name 192.168.100.203;

4. 配置浮动IP

在两台机器上执行以下命令,将VIP地址添加到接口列表中:

ip addr add 192.168.100.203 dev ens33

将命令添加至/etc/rc.local文件中,确保在系统启动时自动加载。

5. 测试

5.1 启动服务

在两台机器上执行:

systemctl start nginx
systemctl start keepalived

5.2 验证浮动IP状态

通过命令ip a观察浮动IP的状态:

  • 主节点

    浮动IP应显示在主节点的接口中。

  • 备节点

    浮动IP应显示在备节点的接口中。

5.3 测试故障转移

  • 停止主节点的Nginx服务:

    systemctl stop nginx
  • 检查浮动IP状态,应显示在备节点。

  • 通过VIP地址访问服务前端,确保访问正常。

  • 此时,Nginx的主备切换机制已成功配置并验证,实现高可用性。

    上一篇:Nginx+Lua 开发高性能Web应用实战
    下一篇:Nginx+Keepalived+LVS集群实战

    发表评论

    最新留言

    能坚持,总会有不一样的收获!
    [***.219.124.196]2025年05月03日 03时40分37秒

    关于作者

        喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
    -- 愿君每日到此一游!

    推荐文章

    10条sql语句优化的建议 2025-03-29
    10款宝藏编程工具!新手必备,大牛强烈推荐! 从零基础到精通,收藏这篇就够了! 2025-03-29
    10款最佳免费WiFi黑客工具(附传送门)零基础入门到精通,收藏这一篇就够了 2025-03-29
    15个Python数据分析实用技巧(非常详细)零基础入门到精通,收藏这一篇就够了 2025-03-29
    15个备受欢迎的嵌入式GUI库,从零基础到精通,收藏这篇就够了! 2025-03-29
    15个程序员常逛的宝藏网站!!从零基础到精通,收藏这篇就够了! 2025-03-29
    1分钟学会在Linux下模拟网络延迟 2025-03-29
    200款免费的AI工具汇总 2025-03-29
    2023年失业的你明白了什么道理? 2025-03-29
    00后整顿职场?公司测试岗却新来了个00后卷王,3个月薪资干到20K... 2025-03-29
    2023应届毕业生找不到工作很焦虑怎么办? 2025-03-29
    2023最新版Node.js下载安装及环境配置教程(非常详细)从零基础入门到精通,看完这一篇就够了 2025-03-29
    2023网络安全现状,一个(黑客)真实的收入 2025-03-29
    2024 年需要了解的顶级大数据工具(非常详细)零基础入门到精通,收藏这一篇就够了 2025-03-29
    2024 最新 Kali Linux 定制化魔改,完整版,添加常见60渗透工具,零基础入门到精通,收藏这篇就够了 2025-03-29
    2024大模型行业应用十大典范案例集(非常详细)零基础入门到精通,收藏这一篇就够了 2025-03-29
    00后才是内卷之王,被卷的头皮发麻.... 2025-03-29
    2024届秋招让我(985本硕)直接破防,感觉书读了这么久结果毫无意义,读书就只为了读书,我该怎么办? 2025-03-29
    2024年专业介绍||现代通信技术,从零基础到精通,收藏这篇就够了! 2025-03-29
    2024年为什么越来越多的人选择转行网络安全?零基础入门到精通,收藏这篇就够了 2025-03-29