Linux中IP地址配置怎么配置集群漂移浮动IP

夏瑶吖_7541

夏瑶吖_7541

2026-09-22

929人浏览

原创

linux集群漂移浮动ip的核心是通过keepalived实现vip在主备节点间自动切换,确保服务高可用;需配置state、priority、virtual_router_id及virtual_ipaddress,禁用vrrp_strict,放行vrrp协议,并可添加nginx健康检查脚本增强可靠性。

linux中ip地址配置怎么配置集群漂移浮动ip

Linux中配置集群漂移浮动IP,核心目标是让一个虚拟IP(VIP)在主备节点间自动切换,保证服务不中断。这不是简单地给网卡加个IP,而是要结合高可用机制实现“谁健康谁持有VIP”。实际部署中,推荐使用 Keepalived,它轻量、稳定、基于标准VRRP协议,比手动脚本更可靠。

Keepalived基础配置(双节点主备)

以两台服务器为例:主节点 IP 192.168.72.50,备节点 IP 192.168.72.51,浮动IP设为 192.168.72.70。

  • 两台都安装 Keepalived:yum install -y keepalived(CentOS/Rocky)或 apt install -y keepalived(Ubuntu)
  • 编辑主节点 /etc/keepalived/keepalived.conf
    • state MASTER
    • priority 100
    • virtual_router_id 70(同一集群必须相同,且 1–255 范围内)
    • virtual_ipaddress { 192.168.72.70/24 }(注意带子网掩码)
    • 务必注释或删除 vrrp_strict —— 否则 VIP 无法响应 ping 和业务请求
  • 备节点配置基本一致,仅修改三项:
    • state BACKUP
    • priority 90(必须低于主节点)
    • virtual_router_id 与主节点完全相同
  • 启动服务:systemctl enable --now keepalived,然后用 ip a 查看 VIP 是否出现在主节点的网卡上

关键避坑点(生产环境常出问题的地方)

很多 VIP 配置后“显示存在却无法访问”,往往卡在这几个细节:

onewo-rtlinux
onewo-rtlinux

Linux 实时编程助手。生成、审查并修改用于周期性控制任务和中断驱动程序的 C 代码。强制实施实时调度策略。

下载
  • 禁用 vrrp_strict 模式:默认开启时,只有 VIP 是本机真实地址才允许响应 ICMP;去掉这行或加 # 注释即可
  • 清理冗余 virtual_server 块:如果只是做 VIP 漂移,不要保留 LVS 相关配置(如 virtual_serverreal_server),它们会加载 ipvs 内核模块,抢占端口并干扰 VRRP
  • 关闭防火墙或放行 VRRP 协议:VRRP 使用协议号 112,需在 firewalld 或 iptables 中允许,否则主备无法通信、无法检测心跳
  • 确保网络层支持多播:Keepalived 默认用多播(224.0.0.18)发 VRRP 报文;若网络设备禁用多播,需改用单播并在配置中指定 unicast_src_ipunicast_peer

增强可靠性:加入服务健康检查

只靠网络连通性判断不够——比如 Nginx 进程挂了但系统还活着。这时需要自定义检查脚本:

  • 写一个检查 Nginx 是否监听 80 端口的脚本,例如 /etc/keepalived/check_nginx.sh
    #!/bin/bash
    killall -0 nginx >/dev/null 2>&1 || exit 1
  • 在 keepalived.conf 的 global_defs 下添加:
    vrrp_script chk_nginx {
        script "/etc/keepalived/check_nginx.sh"
        interval 2
        weight -10
    }
  • 在 vrrp_instance 块里引用:track_script { chk_nginx }
  • 这样一旦 Nginx 异常,主节点优先级自动降低,触发 VIP 漂移到备节点

验证与日常维护

配置完成后,重点验证三件事:

  • 主节点运行时,ip a | grep 192.168.72.70 应有输出;备节点无此 IP
  • 从外部 ping 192.168.72.70 和访问对应服务(如 curl http://192.168.72.70)应成功
  • 手动停掉主节点的 keepalived:systemctl stop keepalived,1–3 秒内 VIP 应出现在备节点,且服务持续可访问
  • 日志查看:journalctl -u keepalived -f,关注 state change 和 transition 日志

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

linux ip地址

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

417

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

820

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2372

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

796

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

689

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

354

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2116

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

3892

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

627

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习

CLion 远程开发实战
CLion 远程开发实战

共0课时 | 0人学习