两台服务器如何设置漂移IP,什么是漂移IP?

两台服务器设置一个漂移IP,核心方案是部署keepalived软件,借助VRRP协议虚拟出一个浮动IP,这个IP在主备服务器之间自动漂移,对外始终可用。

漂移IP到底解决什么问题

先理解场景,你手上有两台服务器,一台跑业务,一台闲置,业务这台突然宕机了,用户访问的IP不变,但请求自动切到了另一台,这就是漂移IP(也叫浮动IP、VIP)的价值,它不是某个网卡上的固定IP,而是运行在keepalived这样的软件里,由主备服务器共同持有的虚拟地址。

《童虎学习笔记》5分钟用Keepalived搭建MySQL高可用实现虚ip自动漂移
加载中
《童虎学习笔记》5分钟用Keepalived搭建MySQL高可用实现虚ip自动漂移

行业内给的方案其实很统一:keepalived加VRRP协议,据行业共识,90%以上的自建高可用架构都跑在keepalived上,这是Linux生态里最成熟的漂移IP方案,它做的事儿很简单主服务器定时发送心跳包,备服务器收不到心跳,就立刻把VIP抢到自己身上,整个过程控制在1到3秒内。

keepalived vrrp配置漂移ip完整实操

配置漂移IP的核心是写好keepalived.conf文件,下面用的是CentOS系统,Ubuntu同样适用,命令差别不大。

两台服务器都装keepalived

yum install -y keepalived   # CentOS
apt install -y keepalived   # Ubuntu

装完先别急着配置,记住一个原则:配置文件要从主备两侧分别编写,VRRP实例名字和虚拟IP必须完全一致,优先级不能一样

主服务器配置

主服务器的/etc/keepalived/keepalived.conf这样写:

global_defs {
    router_id LVS_MASTER
}
vrrp_instance VI_1 {
    state MASTER
    interface eth0        # 换成你实际网卡名
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 123456
    }
    virtual_ipaddress {
        192.168.1.100/24 dev eth0
    }
}

priority是优先级,主服务器给100,备服务器要给低一点的数字,比如90,virtual_router_id在同一个网段内要保持唯一,如果别的keepalived集群用了51,你就得换52、53之类。

备服务器配置

备服务器除了state改成BACKUP,priority改成90,其他完全一致,注意备服务器的state一定写BACKUP,这样即使它先启动也不会抢占VIP,避免脑裂场景下的地址冲突。

启动验证

systemctl enable keepalived
systemctl start keepalived
ip addr show eth0

主服务器上能看到192.168.1.100/24绑定在eth0上,备服务器上这个IP不存在,手动停掉主服务器的keepalived:

两台服务器如何设置漂移IP,什么是漂移IP?

systemctl stop keepalived

然后去备服务器上执行ip addr show eth03秒内VIP已经出现在备服务器上,这个漂移过程就完成了。

业务服务要跟着VIP走

VIP切过去了,但你的Nginx、MySQL这些服务不会自动跟着切,需要让keepalived监控业务进程,进程挂了就自动切VIP,在vrrp_instance里加一段:

vrrp_script check_nginx {
    script "/etc/keepalived/check_nginx.sh"
    interval 2
}
vrrp_instance VI_1 {
    track_script {
        check_nginx
    }
}

核心就一行:

#!/bin/bash
if [ $(systemctl is-active nginx) != "active" ]; then
    killall keepalived
fi

两台服务器做热备用什么方案

这里延展一下,两台服务器做热备,不只有keepalived一种方案,按场景选适合自己的。

Nginx加keepalived:最适合Web网关

适合做反向代理、API网关、静态资源服务的高可用,Nginx负责转发流量,keepalived负责IP漂移,具体架构是:两台Nginx服务器,VIP绑定在它们之间,请求先打到VIP,VIP落在哪台,Nginx就从哪台处理。

配置顺序有讲究:先装Nginx并确认业务正常,再配keepalived,很多新手先配keepalived,结果VIP漂过去了Nginx没起来,服务照样不可用,Nginx本身要把监听端口改为0.0.0.0:80,这样才能接收来自VIP的访问。

LVS加keepalived:扛高并发流量

只用两台服务器做LVS,是性价比很高的方案,Keepalived整合了LVS的配置管理,不需要额外装ipvsadm工具,VIP承载入口流量,两台LVS做负载均衡,后端挂真实业务服务器,二三十万并发以内,两台LVS加keepalived的组合足够撑住。

云厂商高可用IP方案:不想运维就交给云平台

酷番云和简米云有HAVIP(高可用虚拟IP)产品。HAVIP的精髓是能绑定到云服务器的主网卡和弹性网卡上,配合云平台的API自动切换,区别在于,自建keepalived得自己写脚本监控业务,云厂商HAVIP在控制台点几下手动绑定就行。

自建和云平台的区别主要在这几个维度:

对比项 keepalived自建 云厂商HAVIP
费用 服务器费用,无额外收费

两台服务器如何设置漂移IP,什么是漂移IP?

免费创建,但占用配额

切换时间1-3秒秒级(通常在1秒内)
维护成本需要自己管理VRRP控制台操作,免运维
适用场景物理机、混合云、IDC机房纯云上环境

这两者还有一个选择标准:自建方案支持跨机房、跨地域,只要二层能通就能跑;HAVIP严格绑定同一可用区和同一VPC,所以混合云架构下的漂移IP,基本都得靠keepalived。

数据库做热备的漂移IP

两台MySQL或两台Redis做主从,也需要漂移IP让应用层无感知切换,MySQL双主模式加keepalived是常见架构,VIP漂移时主从切换脚本跟着执行,把备库提升为新的主库,这个场景要特别关注脑裂问题两台服务器都认为自己是主,都持有VIP,请求就会被打到两个节点上,解决思路是加fencing脚本,检测到对端存活但自己接收不到心跳时,主动关闭自身业务或释放VIP。

漂移IP切换后的验证清单

配置漂移IP不是配完就完事,要反复做演练,以下是完整的验证步骤:

验证VIP地址归属

  • 在主服务器执行ip addr show | grep 192.168.1.100,确认VIP存在
  • 在备服务器执行同样的命令,确认VIP不存在

验证业务可用性

  • 在外部机器执行curl http://192.168.1.100/health,确认业务返回200
  • 持续循环请求VIP地址,同时手动停掉主服务器
while true; do
    curl -s -o /dev/null -w "%{http_code}n" http://192.168.1.100/
    sleep 1
done

循环期间观察输出,最多出现2到3个错误请求,之后恢复200,说明切换和回切都正常。

检查日志确认切换原因

tail -f /var/log/messages | grep Keepalived

日志中会明确记录Entering BACKUP STATEEntering MASTER STATE,判断切换是否由预期事件触发。

局域网里设置漂移IP注意什么

如果你在两台内网服务器上配漂移IP,有几件事比配置本身更容易踩坑:

网卡名称要一致,一台服务器网卡是ens33,另一台是eth0,keepalived配置里interface写死了,必须分别适配各自的网卡名。

两台服务器如何设置漂移IP,什么是漂移IP?

防火墙要放行VRRP协议,VRRP跑在IP协议号112上,不是TCP也不是UDP,CentOS用firewalld的话:

firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --protocol vrrp -j ACCEPT

这个不放行,两台服务器永远互相发现不了,VIP自然也不会漂移。

交换机端口如果开了端口安全或静态绑定,需要把VIP加入白名单,否则VIP广播出去的ARP包会被交换机直接丢弃,业务机器感知不到漂移。

云服务器漂移ip和高可用组区别

这个问题经常出现在生产环境选型时,云服务器漂移IP是思路上的差异高可用组是云厂商把两台云服务器放在同一个故障域里,底层物理机出问题时自动迁移到健康的物理机上,漂移IP则是把VIP绑定在服务器网卡上,故障时利用VRRP协议把VIP从故障机器切到存活机器上。

这两者并不互斥,生产环境最稳的做法是同时启用高可用组保证物理层面的故障切换,漂移IP保证应用层面的快速切换,双保险。

常见问题解答

漂移IP的切换时间一般多长?

默认配置下,keepalived每1秒发送一次心跳,连续3次未收到即触发切换,整体切换时间在3秒左右,如果业务对中断极其敏感,可以把advert_int调整为0.3秒,切换时间能压缩到1秒内,但对网络质量和CPU占用要求会提高。

主备服务器配置漂移IP后,VIP会出现在备机上吗?

正常情况下不会,备机的keepalived会监听主机的组播心跳,心跳正常时不进入MASTER状态,VIP只绑定在主服务器上,只有主服务器的keepalived挂掉或者链路中断,备机才会接管VIP。

一台物理服务器需要配置几张网卡接漂移IP?

最少一张网卡就够了,VIP绑定在物理网卡上做二层广播,同网段内生效,如果你需要VIP跨网段访问别的子网,需要交换机配置对应的ARP代理,并且业务服务器要明确路由指向,多网卡场景可以绑定在虚拟网桥或独立管理网卡上,但至少要保证VIP所在的网卡和业务通信链路是通的。

两台服务器配一个漂移IP,本质上就是用keepalived的VRRP协议模拟出一个不会宕机的虚拟网络入口,自建用keepalived,云上用HAVIP,核心都是让IP自身具备故障转移能力,把握好主备优先级、防火墙放行、业务监测这三个关键点,一个稳定的漂移IP架构就能落地。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/603556.html

(0)
杀毒软件服务器有哪些品牌推荐,哪个最可靠?
上一篇 2026年8月27日 13:56
电信备ntp服务器连接异常怎么办,如何快速修复?
下一篇 2026年8月27日 14:06

相关推荐

  • 为什么XP连路由器宽带连接不上网络服务器?,怎么办

    XP系统连上路由器后宽带连接拨号失败,根源在于拨号权限从电脑转移到了路由器,电脑端不再需要手动拨号,只需把上网方式改为自动获取IP即可,这个问题困扰不少还在使用老设备的用户,下面把原因和解决步骤讲透,为什么xp电脑连路由器后宽带连不上网络服务器路由器接管了拨号职责几年前用宽带上网,普遍是猫出来的网线直接插电脑……

    2026年8月21日
    1000
  • AIoT排名哪家强?2026年最新AIoT行业排名

    2026年AIoT领域排名已趋于稳定,头部企业凭借“端侧大模型+边缘计算”的深度融合能力占据主导地位,中小企业应聚焦垂直场景落地而非盲目追求通用平台,随着人工智能从云端向边缘侧大规模迁移,AIoT(人工智能物联网)行业在2026年迎来了真正的成熟期,早期的“万物互联”概念已演变为“万物智联”,单纯的连接能力不再……

    2026年6月13日
    2700
  • 广西首条智慧高速何时通车?广西智慧高速公路最新消息

    广西首条智慧高速公路已于近期正式开工,这标志着广西交通建设正式迈入车路协同与数字孪生深度融合的新阶段,不仅将大幅提升通行效率,更将为自动驾驶商业化落地提供关键基础设施支撑,这条备受瞩目的智慧高速,并非传统意义上的铺路架桥,而是一场关于交通基础设施的数字化革命,它像一位拥有“超级大脑”和“千里眼”的智能管家,实时……

    2026年5月28日
    7900
  • 服务器CPU进程满了怎么办?如何快速降低CPU占用率?

    服务器CPU进程满载(通常表现为CPU使用率飙升至100%)的核心解决方案在于快速定位高耗资源进程并即时终止,随后进行深度的日志分析与系统优化以防止复发,面对这一紧急故障,运维人员必须保持冷静,遵循“止损—排查—根治”的处理逻辑,切忌盲目重启服务器,以免造成数据丢失或服务长时间不可用,首要任务是保障业务可用性……

    2026年4月10日
    10100
  • Friendhosting日本怎么样,日本vps服务器推荐

    Friendhosting日本凭借低延迟、高稳定性及合规的服务器架构,是2026年访问日本本土业务、搭建跨境电商及游戏服务器的首选方案,其综合性价比优于同地域其他托管服务商,核心优势解析:为何选择Friendhosting日本节点在2026年的数字基础设施环境中,网络延迟与数据合规性已成为企业选型的首要考量,F……

    2026年5月14日
    5500
  • ASP.NET布局如何实现?MVC/Core布局教程详解

    在构建现代、可维护且用户体验一致的 ASP.NET Web 应用程序时,有效的布局管理是基石,ASP.NET 提供了强大且灵活的机制来实现这一点,其核心思想在于将页面中重复出现的结构(如页眉、导航栏、页脚、侧边栏)与页面特有的内容分离,这种分离主要通过 母版页 (Web Forms) 和 布局页 (MVC……

    2026年2月9日
    12630
  • 搬瓦工CN2 GIA特价$83.8/年是真的吗,搬瓦工CN2 GIA最新优惠信息

    搬瓦工CN2 GIA线路目前以$83.8/年的特价补货形式回归,提供2核2GB内存、40G SSD存储及1TB月流量,适合对网络稳定性有高要求的用户选择洛杉矶或日本软银节点,在VPS租赁市场,搬瓦工(BandwagonHost)一直是一个绕不开的名字,对于许多需要连接海外服务器的用户来说,稳定的网络体验往往比单……

    程序编程 2026年6月29日
    1500
  • 如何实现aspx定时刷新页面?ASP.NET页面自动刷新技巧详解

    在ASP.NET Web Forms (ASPX) 应用中,实现页面定时自动刷新是一个常见的需求,通常用于展示实时更新的数据(如监控仪表盘、股票行情、新闻头条、订单状态)或强制用户重新加载以获取最新内容,实现ASPX页面定时刷新的核心方法是使用HTML的 meta http-equiv=”refresh” 标签……

    2026年2月8日
    14100
  • ajax存储返回数组怎么处理?ajax获取json数据后如何解析

    在Ajax请求中存储返回数组,最稳妥的方式是将其赋值给全局变量或挂载到Vue/React等框架的响应式状态中,同时利用JSON.parse解析字符串数据,并配合localStorage实现持久化存储,现代Web开发中,前后端分离已成为绝对主流,当通过Ajax发起异步请求获取数据时,后端返回的往往不是直接可用的对……

    2026年6月3日
    5400
  • 海外VPS到底哪个节点国内访问速度最快呢,怎么选

    对于国内用户,访问速度最快的海外VPS节点依次是日本、香港和新加坡,其中日本节点因低延迟和优化线路成为综合最优选择, 但实际速度高度依赖VPS提供商的网络架构、国际带宽以及国内运营商(电信、联通、移动)的互联状况,不同场景下需针对性选择,影响海外VPS国内访问速度的关键因素物理距离与路由走向节点距离中国大陆越近……

    2026年7月30日
    1500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注