博客
关于我
Nginx+Keepalived实现简单版高可用主备切换
阅读量:792 次
发布时间:2023-02-15

本文共 1638 字,大约阅读时间需要 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/bashpidof nginxif [ $? -eq 0 ]; then  echo "nginx进程存在"else  echo "nginx进程不存在"  /etc/init.d/keepalived stopfi

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 nginxsystemctl start keepalived

5.2 验证浮动IP状态

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

  • 主节点

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

  • 备节点

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

5.3 测试故障转移

  • 停止主节点的Nginx服务:

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

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

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

    转载地址:http://lmcfk.baihongyu.com/

    你可能感兴趣的文章
    Netty:ChannelPipeline和ChannelHandler为什么会鬼混在一起?
    查看>>
    Netty:原理架构解析
    查看>>
    Network Dissection:Quantifying Interpretability of Deep Visual Representations(深层视觉表征的量化解释)
    查看>>
    Network Sniffer and Connection Analyzer
    查看>>
    Network 灰鸽宝典【目录】
    查看>>
    Network-Emulator Network-Emulator-Toolkit网络模拟器使用
    查看>>
    Networkx写入Shape文件
    查看>>
    NetworkX系列教程(11)-graph和其他数据格式转换
    查看>>
    Networkx读取军械调查-ITN综合传输网络?/读取GML文件
    查看>>
    NetworkX:是否为每个节点添加超链接?
    查看>>
    network小学习
    查看>>
    Netwox网络工具使用详解
    查看>>
    Net与Flex入门
    查看>>
    Net任意String格式转换为DateTime类型
    查看>>
    net包之IPConn
    查看>>
    net发布的dll方法和类显示注释信息(字段说明信息)[图解]
    查看>>
    Net和T-sql中的日期函数操作
    查看>>
    Net处理html页面元素工具类(HtmlAgilityPack.dll)的使用
    查看>>
    Net操作Excel(终极方法NPOI)
    查看>>
    Net操作配置文件(Web.config|App.config)通用类
    查看>>