香港VPS服务器在Linux上配置FailoverIP?


在香港VPS服务器上配置 Failover IP(故障切换 IP)是一种常见的高可用性方案,允许将备用 IP 地址快速切换到另一台服务器或实例,以确保业务连续性。

1. 什么是 Failover IP?

Failover IP 是提供高可用性的虚拟 IP 地址(VIP)。它可以在主服务器故障时,快速切换到备用服务器,常用于以下场景:

高可用性:在主服务器宕机时,备用服务器接管业务。

业务迁移:将流量从一台服务器切换到另一台服务器。

负载分担:通过手动或自动切换,将流量分配到不同的服务器。

2. 配置 Failover IP 的准备工作

2.1 确认服务商支持

确保你的服务商(如 OVH、Hetzner、阿里云香港节点)支持 Failover IP,并已分配给你的 VPS。

服务商通常会要求将 Failover IP 与某台服务器绑定。

2.2 获取以下信息

你需要以下信息来配置 Failover IP:

Failover IP 地址

子网掩码(一般为 255.255.255.255 或 /32,具体以服务商为准)

网关地址(通常使用主服务器的默认网关)

主服务器的网络接口名称(如 eth0、ens3)

3. 配置 Failover IP

3.1 手动绑定 Failover IP

步骤 1:检查主网卡名称

运行以下命令,确认网络接口名称:

bash

 

ip addr

输出示例:

plaintext

 

2: eth0:  mtu 1500 qdisc fq_codel state UP group default qlen 1000

    inet 192.168.1.10/24 brd 192.168.1.255 scope global eth0

在此示例中,网卡名称为 eth0。

步骤 2:绑定 Failover IP

使用 ip 命令临时绑定 Failover IP:

bash

 

sudo ip addr add /32 dev eth0

示例:

bash

 

sudo ip addr add 203.0.113.100/32 dev eth0

步骤 3:添加路由

因为 Failover IP 是一个独立的 /32 子网地址,可能需要手动添加路由到网关:

bash

 

sudo ip route add <网关地址> dev eth0

sudo ip route add default via <网关地址>

示例:

bash

 

sudo ip route add 192.168.1.1 dev eth0

sudo ip route add default via 192.168.1.1

步骤 4:验证配置

检查是否成功绑定和路由:

bash

 

ip addr show eth0

ip route

使用 ping 测试 Failover IP 是否可用:

bash

 

ping -c 4 

3.2 持久化配置

方法 1:通过 NetworkManager 配置

如果你的系统使用 NetworkManager 管理网络,可通过修改配置文件实现 Failover IP 的持久化。

编辑网络接口配置文件:

bash

 

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0

添加以下内容:

plaintext

 

DEVICE=eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=203.0.113.100

PREFIX=32

GATEWAY=192.168.1.1

重启网络服务:

bash

 

sudo systemctl restart NetworkManager

方法 2:通过 /etc/network/interfaces 配置(Debian/Ubuntu 系列)

编辑网络接口文件:

bash

 

sudo nano /etc/network/interfaces

添加以下内容:

plaintext

 

auto eth0:1

iface eth0:1 inet static

    address 203.0.113.100

    netmask 255.255.255.255

    broadcast 203.0.113.100

    post-up ip route add 192.168.1.1 dev eth0

    post-up ip route add default via 192.168.1.1

重启网络服务:

bash

 

sudo systemctl restart networking

3.3 配置 ARP 广播(防止冲突)

某些服务商(如 OVH)要求配置 ARP 广播(Gratuitous ARP),以确保路由器知道 Failover IP 已绑定到新VPS服务器。

方法 1:通过命令

执行以下命令发送 ARP 广播:

bash

 

sudo arping -c 3 -I eth0 

方法 2:设置 ARP 广播自动化

在 /etc/rc.local 文件中添加以下内容:

bash

 

arping -c 3 -I eth0 203.0.113.100

确保文件可执行:

bash

 

sudo chmod +x /etc/rc.local

4. 自动化切换 Failover IP

4.1 使用 Keepalived 配置高可用性

Keepalived 是一个常用的高可用工具,支持 Failover IP 的自动切换。

安装 Keepalived

安装 Keepalived:

bash

 

sudo apt install keepalived -y      # Ubuntu/Debian

sudo yum install keepalived -y      # CentOS

编辑配置文件:

bash

 

sudo nano /etc/keepalived/keepalived.conf

示例配置:

plaintext

 

vrrp_instance VI_1 {

    state MASTER

    interface eth0

    virtual_router_id 51

    priority 100

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 12345

    }

    virtual_ipaddress {

        203.0.113.100

    }

}

启动并启用服务:

bash

 

sudo systemctl start keepalived

sudo systemctl enable keepalived

4.2 使用脚本自动切换

如果不使用 Keepalived,可以编写简单的脚本实现 Failover IP 的切换:

示例脚本

创建脚本文件:

bash

 

sudo nano /usr/local/bin/failover.sh

添加以下内容:

bash

 

#!/bin/bash

IP=”203.0.113.100″

GATEWAY=”192.168.1.1″

INTERFACE=”eth0″

# 绑定 Failover IP

ip addr add $IP/32 dev $INTERFACE

# 添加路由

ip route add $GATEWAY dev $INTERFACE

ip route add default via $GATEWAY

保存并赋予执行权限:

bash

 

sudo chmod +x /usr/local/bin/failover.sh

执行脚本切换 IP:

bash

 

sudo /usr/local/bin/failover.sh

5. 测试配置

检查 Failover IP 是否绑定成功:

bash

 

ip addr show eth0

测试 IP 切换:

在主服务器和备用服务器之间手动切换 Failover IP,确保切换过程无误。

检查连接性:

使用 ping 测试 Failover IP 是否可访问:

bash

 

ping -c 4 

6. 总结

配置 Failover IP 是实现高可用性的重要步骤。以下是关键步骤:

获取 Failover IP 和相关信息(子网掩码、网关)。

使用 ip 命令或网络配置文件绑定 Failover IP。

配置 ARP 广播以确保路由器更新。

使用 Keepalived 或脚本实现自动化 Failover。

通过上述方法,你可以在香港VPS服务器上快速配置和管理 Failover IP,确保业务的高可用性和连续性。

暂无评论

发送评论 编辑评论


				
上一篇
下一篇
text=ZqhQzanResources