一、F5负载均衡到底是什么?
很多人第一次接触F5时都会问:F5负载均衡怎么配置?其实,F5 BIG-IP 设备的核心功能就是把客户端请求按策略分发到后端多台服务器,从而提升网站并发能力与可用性。它工作在OSI第四层(TCP/UDP)与第七层(HTTP/HTTPS),既能做简单的四层转发,也能做基于URL、Cookie、Header的智能七层调度。

二、准备阶段:拿到设备后先做什么?
- 规划网络拓扑:确定F5放在防火墙前面还是后面,是否需要双机热备。
- 申请并分配IP地址:至少需要管理IP、Self IP、Floating IP、Virtual Server IP四类地址。
- 准备服务器池信息:后端每台服务器的IP、端口、健康检查方式提前列好。
三、F5负载均衡配置步骤(实战版)
1. 初始化设备
通过Console线或管理口登录,完成以下动作:
- 设置管理口IP,例如192.168.1.245/24;
- 修改默认admin/root密码,关闭不必要的服务;
- 升级TMOS版本到推荐稳定版,避免已知BUG。
2. 创建VLAN与Self IP
进入 Network › VLAN,新建内外网VLAN,再给每个VLAN分配Self IP:
内部VLAN:Self IP 10.0.0.2/24 外部VLAN:Self IP 203.0.113.2/24
3. 建立Pool(服务器池)
导航到 Local Traffic › Pools › Pool List › Create:
- Name:web_pool
- Health Monitor:http(也可用https、tcp、icmp)
- Load Balancing Method:Round Robin(可先选最简单的轮询)
- Members:把后端两台Web服务器 10.0.0.11:80、10.0.0.12:80 添加进去
4. 创建Virtual Server
进入 Local Traffic › Virtual Servers › Create:
- Name:vs_web
- Destination:203.0.113.100/32(对外服务的VIP)
- Service Port:80
- Protocol Profile (Client):tcp
- HTTP Profile:http
- SNAT Pool:Auto Map(解决回包路由问题)
- Default Pool:选择刚才的 web_pool
5. 配置会话保持(可选但常用)
如果网站需要登录,必须加会话保持。路径:Local Traffic › Profiles › Persistence › Create:

- Type:Cookie
- Cookie Name:JSESSIONID
- Expiration:3600 秒
把该Profile绑定到Virtual Server即可。
四、健康检查深度定制
默认的http monitor只检查TCP 80端口是否通,实际生产环境需要更精细:
- 自定义Monitor:在 Local Traffic › Monitors › Create 里选HTTP,填写Send String:
GET /health HTTP/1.1\r\nHost: www.example.com\r\n\r\n - 设置Receive String:
OK,只有返回体包含“OK”才算存活。 - 调整Interval/Timeout:Interval 5秒,Timeout 16秒,可快速摘除故障节点。
五、SSL Offload一步到位
很多用户问:能不能让F5直接做SSL证书卸载?答案是肯定的。
- 在 System › Certificate Management › Traffic Certificate Management 导入证书+私钥;
- 新建 Client SSL Profile,绑定证书;
- 把Virtual Server的Service Port改成443,Protocol Profile选tcp,SSL Profile (Client) 选刚才的Client SSL;
- 后端Pool依旧走80,实现SSL Offload,降低服务器CPU压力。
六、常见问题排查思路
Q:Virtual Server状态可用,但访问返回502?
A:多半是SNAT没配或后端网关没指回F5。检查Self IP能否ping通服务器,再抓包确认回包路径。
Q:会话保持失效,用户频繁掉线?
A:确认Cookie Persistence Profile已绑定到VS,且浏览器未禁用第三方Cookie;如果使用SSL Bridging,记得在Server SSL Profile里勾选Proxy SSL。

Q:如何查看实时连接数?
A:SSH登录BIG-IP,执行:tmsh show sys connection | grep 203.0.113.100
可看到每个客户端的源IP、连接状态。
七、进阶玩法:iRules实现精细化调度
当内置策略无法满足需求时,可用iRules脚本:
when HTTP_REQUEST {
if { [HTTP::uri] starts_with "/api" } {
pool api_pool
} elseif { [HTTP::cookie "device"] eq "mobile" } {
pool mobile_pool
} else {
pool web_pool
}
}
把iRules挂到Virtual Server,即可按URL或Cookie动态分流。
八、备份与恢复
生产环境必须定期备份:
- 图形界面:System › Archives › Create,勾选Private Keys,下载 UCS 文件。
- 命令行:
tmsh save sys ucs backup-$(date +%F).ucs - 恢复时:
tmsh load sys ucs backup-2024-06-01.ucs no-platform-check
九、性能调优小贴士
- 开启OneConnect:减少TCP三次握手,提升并发;
- 调整TCP Profile:把Idle Timeout从300秒降到60秒,释放内存;
- 使用FastL4 Profile:纯四层场景下,CPU消耗更低。
十、双机高可用(HA)快速部署
两台F5做Active-Standby:
- 用网线把HA口直连,配置Redundant Pair;
- 设置Failover IP与Mirroring,确保会话同步;
- 在 Device Management › Traffic Groups 把VS、Floating IP加入默认的 traffic-group-1;
- 拔掉主机的网线,观察VIP是否秒级漂移到备机。
至此,从初始化到高可用的完整链路已经打通,你可以自信地回答任何人提出的“F5负载均衡配置步骤”相关疑问。
还木有评论哦,快来抢沙发吧~