f5负载均衡器双主监测如何实现,有哪些注意事项?
- 云服务器
- 2026-07-24
- 6
F5 BIG-IP 负载均衡器支持 双主(Active/Active) 部署模式,即两台设备同时处理流量,互为备份,共同分担负载,与传统的 Active/Standby 模式相比,双主模式能提高资源利用率,增加吞吐量,并实现更高的可用性。

在双主模式下,两台设备通过 配置同步 和 连接状态同步 保持会话一致性,并通过 HA 组(High Availability Group) 或 Cluster 实现故障切换,常见监测场景包括:
- 设备健康状态
- 流量分配均衡性
- 配置同步状态
- 连接表同步状态
- 故障转移触发条件
双主监测的关键指标
| 监测项 | 说明 | 监测方法 |
|---|---|---|
| failover 状态 | 当前设备是否为 active 或 standby | tmsh show cm failover-status |
| HA 组状态 | 查看 HA 组内成员状态、优先级、心跳 | tmsh show sys ha-group |
| 配置同步 | 配置文件是否一致,同步是否成功 | tmsh show cm sync-status |
| 连接状态同步 | 镜像连接表是否完整,是否有丢包 | tmsh show ltm mirror |
| 流量分布 | 各设备承载的流量占比 | tmsh show sys connection 或 SNMP |
| 设备资源 | CPU、内存、磁盘、网络接口利用率 | tmsh show sys performance |
| 心跳链路 | 双机心跳连通性及延迟 | ping 或监控报告 |
常用监测命令与工具
命令行监测(TMSH)
# 查看当前设备的 failover 状态 tmsh show cm failover-status # 查看 HA 组详细信息 tmsh show sys ha-group # 检查配置同步状态 tmsh show cm sync-status # 查看连接镜像统计 tmsh show ltm mirror # 查看系统资源 tmsh show sys performance
SNMP 监测
通过 SNMP 获取双主相关信息,常用 OID 包括:

- F5-BIGIP-SYSTEM-MIB::sysCmFailoverStatus:failover 状态
- F5-BIGIP-SYSTEM-MIB::sysHaGroup:HA 组状态
- F5-BIGIP-LOCAL-MIB::ltmMirror:连接镜像状态
日志监测
F5 日志位于 /var/log/,重点关注:

- /var/log/ltm:流量管理日志
- /var/log/daemon.log:守护进程日志(包含 HA 消息)
- /var/log/user.log:用户及系统日志
REST API 监测
通过 https://<mgmt-ip>/mgmt/tm/cm/ 获取 failover 状态,示例:
GET https://192.168.1.100/mgmt/tm/cm/failover-status
双主模式常见问题与监测建议
- 配置不一致:双主设备必须保持配置完全一致,否则可能导致流量处理异常,建议配置 自动同步 并定期检查 sync-status。
- 连接镜像失败:当连接镜像接口(如 VLAN 或 HA 链路)出现故障时,可能导致会话中断,应监控 ltm mirror 状态和心跳链路连通性。
- 流量不均衡:若流量长时间集中在一台设备,可能表明负载均衡策略或健康检查配置不当,需检查 虚拟服务器 的分配方法及 节点健康状态。
- HA 心跳超时:心跳丢失会触发不必要的切换,应确保心跳网络冗余且低延迟,并监控相关告警。
相关问题与解答
在双主模式下,如何判断某台设备是否故障,并触发自动切换?
解答:F5 双主模式通常通过 HA 组 实现故障检测,每台设备会通过心跳链路定期发送存活消息,若一台设备在预设的超时(如 3 秒)内未收到对端心跳,则判断对端故障,并启动 failover 流程,正常设备会接管故障设备的浮动 IP 和流量,确保服务不中断,可通过 tmsh show sys ha-group 查看当前 HA 组状态,state 字段会显示 active、standby 或 unknown;failover-reason 则记录上次切换原因,建议对 failover 事件设置 SNMP Trap 或日志告警,以便及时响应。
双主模式下,配置同步失败可能的原因有哪些?如何排查?
解答:配置同步失败常见原因包括:
- 网络连通性问题:两台设备的管理口或同步口不可达,可先用 ping 测试对端管理 IP,再检查 /etc/hosts 文件中的主机名解析是否正确。
- 配置冲突:两台设备同时修改配置导致同步冲突,建议通过 配置管理 工具(如 AS3、Ansible)统一推送,避免手动同时操作。
- 同步用户权限不足:用于同步的账号需具备管理员权限,可检查 /var/log/daemon.log 中的同步错误信息,或使用 tmsh show cm sync-status 查看详细状态。
- 磁盘空间不足:配置同步需要写临时文件,空间不足会失败,使用 df -h 检查 /var 分区是否满。
排查步骤:首先执行 tmsh show cm sync-status 查看失败原因,然后检查 /var/log/daemon.log 和 /var/log/user.log 中的相关日志,确认网络连通性,最后尝试手动执行 tmsh run cm config-sync 触发同步并观察输出。