理解这些参数的最佳方式是按照配置流程和功能模块来划分,下面我将从基础配置到高级策略,分层次进行讲解。

(图片来源网络,侵删)
核心基础配置
这是负载均衡工作的最基本前提,定义了“谁”为“谁”提供服务。
虚拟服务器
这是客户端访问的统一入口,是一个“虚拟IP地址 + 端口”的组合,它接收所有客户端请求,并根据策略将流量分发到后端的真实服务器。
- 参数说明:
- Virtual IP (VIP): 客户端请求的目标IP地址。
168.1.100。 - Virtual Port (VPORT): 客户端请求的目标端口。
80(HTTP) 或443(HTTPS)。 - Protocol: 协议类型,如
TCP,UDP,HTTP,HTTPS,选择正确的协议是至关重要的。 - Default Real Server Pool: 当请求到达时,默认将其分发的后端服务器池。
- Persistence Method (可选): 保持会话粘性的方法,用于确保同一用户的请求总是被分发到同一台服务器,见下面的“会话保持”部分。
- Virtual IP (VIP): 客户端请求的目标IP地址。
服务器池
一个或多个后端服务器的集合,虚拟服务器将流量分发到这个池中的成员。
- 参数说明:
- Pool Name: 给服务器池起一个有意义的名字,便于管理,如
Web-Pool。 - Pool Members: 将真实服务器添加到池中,每个成员需要指定:
- Real Server IP (RIP): 后端服务器的真实IP地址。
- Real Server Port (RPORT): 后端服务器监听的端口。
- Weight (权重): 一个数值,用于在负载均衡算法中分配流量权重,权重越高,分配到的流量越多,服务器A权重为2,服务器B权重为1,则A将获得双倍于B的流量。
- Pool Name: 给服务器池起一个有意义的名字,便于管理,如
流量分发策略
这部分是负载均衡的“大脑”,决定了流量如何被智能地分配。

(图片来源网络,侵删)
负载均衡算法
定义了如何将新请求分配到服务器池中的成员。
- 参数说明:
- Round Robin (轮询): 将请求按顺序依次分配给池中的每台服务器,最简单、最常用。
- Least Connections (最少连接): 将新请求分配给当前活动连接数最少的服务器,这在服务器处理能力相近的场景下非常有效。
- Least Time (最少响应时间): 结合了最少连接和服务器响应时间,将请求分配给连接数最少且响应时间最快的服务器,更智能,性能更好。
- Weighted Least Connections (加权最少连接): 在最少连接的基础上,考虑了服务器的权重,计算公式为
(当前连接数 / 服务器权重),选择值最小的服务器。 - Hash (哈希):
- Source IP Hash: 基于客户端IP地址进行哈希,确保来自同一IP的请求总是发到同一台服务器,这是一种简单的会话保持方式。
- URL Hash: 基于请求的URL路径进行哈希,确保访问相同URL的请求发到同一台服务器,适用于缓存服务器场景。
- Cookie Hash: 基于HTTP Cookie进行哈希,确保携带相同Cookie的请求发到同一台服务器。
健康检查
确保只有“健康”的服务器才接收流量,这是高可用性的基石。
- 参数说明:
- Check Type: 检查类型。
- Layer 3 (ICMP Ping): 简单的三层连通性检查,速度快但不保证应用层正常。
- Layer 4 (TCP/UDP Connect): 尝试与服务器指定端口建立TCP/UDP连接,能判断端口是否可达。
- Layer 7 (HTTP/HTTPS): 发送真实的HTTP/HTTPS请求,并检查返回的响应码(如
200 OK)或响应内容,这是最准确、最推荐的方式。
- Check Interval: 检查间隔时间(每5秒检查一次)。
- Fall Count / Rise Count:
- Fall Count (失败阈值): 连续检查失败多少次后,才将服务器标记为“离线”(Down)。
- Rise Count (恢复阈值): 连续检查成功多少次后,才将服务器标记为“在线”(Up)。
- HTTP Check Parameters (针对HTTP健康检查):
- URL: 要检查的页面路径,如
/health.html或/api/ping。 - Expected Status Code: 期望的HTTP响应码,如
200。 - Expected Content: 响应体中必须包含的字符串,如
"OK"。
- URL: 要检查的页面路径,如
- Check Type: 检查类型。
高级功能与策略
这些功能让负载均衡设备变得更加智能和强大。
会话保持
确保用户的会话不中断,常用于需要登录状态的应用(如电商、网银)。

(图片来源网络,侵删)
- 参数说明:
- Source IP: 基于客户端IP保持会话,简单,但在NAT环境下可能不准确。
- Cookie Insertion (插入Cookie): 负载均衡器在首次响应时,向客户端浏览器中插入一个自定义的Cookie(如
RadwareCookie=server1),后续请求携带此Cookie,负载均衡器就能识别并分发到同一台服务器,这是最常用和可靠的方式。 - Cookie Rewriting (重写Cookie): 适用于应用本身已经使用Cookie进行会话管理(如
JSESSIONID),负载均衡器会识别这个Cookie,并重写其值,使其指向特定的服务器。 - SSL Session ID: 基于SSL/TLS握手时生成的Session ID来保持会话,性能开销小,但仅对HTTPS流量有效。
SSL/TLS 卸载
将后端服务器繁重的SSL/TLS加密/解密工作转移到负载均衡设备上,让后端服务器专注于业务处理,提升整体性能。
- 参数说明:
- SSL Profile: 创建一个SSL配置文件,包含证书、私钥、密码套件等。
- Certificate & Private Key: 上传你的服务器证书和对应的私钥。
- Protocol Version: 支持的SSL/TLS协议版本,建议禁用不安全的
SSLv2,SSLv3,TLSv1.0。 - Cipher Suite: 密码套件列表,定义了支持的加密算法,应优先选择安全性高的套件(如基于AES-GCM和ECDHE的套件)。
- 配置方式:
- 终止: 负载均衡器解密HTTPS流量,然后以HTTP明文形式转发给后端服务器。
- 穿透: 负载均衡器不解密,直接将加密的HTTPS流量透传给后端服务器(要求后端服务器必须支持SSL)。
- 重新加密: 负载均衡器解密后,再使用不同的证书或配置重新加密后转发,适用于证书转换等场景。
内容切换如URL、HTTP头、Cookie等)将流量分发到不同的服务器池,这是实现灰度发布、A/B测试、按业务分流的核心。
- 参数说明:
- Rule (规则): 定义一个匹配条件。
- URL Path:
if url contains "/v2/"。 - HTTP Header:
if header "User-Agent" contains "Mobile"。 - Cookie:
if cookie "version" == "new"。
- URL Path:
- Action (动作): 当规则匹配时执行的操作。
- Use Pool: 将流量转发到指定的服务器池,如
use-pool New-Version-Pool。 - Reset: 重置连接。
- Deny: 拒绝请求。
- Use Pool: 将流量转发到指定的服务器池,如
- Rule (规则): 定义一个匹配条件。
缓存
在负载均衡设备上缓存静态内容(如图片、CSS、JS文件),减少对后端服务器的请求,加速访问。
- 参数说明:
- Cache Profile: 定义缓存规则,如缓存大小、过期时间。
- Cache Key: 定义什么可以作为缓存的唯一标识,通常是URL。
- TTL (Time To Live): 缓存内容的存活时间。
- Cache Action: 在内容切换策略中,定义哪些URL需要被缓存。
连接优化
用于优化TCP连接,减少服务器压力,提升性能。
- 参数说明:
- TCP Buffering: 启用TCP缓冲,当后端服务器处理慢时,负载均衡器可以缓存客户端的数据,防止客户端连接超时。
- TCP Idle Timeout: 空闲连接的超时时间,设置过短可能导致长连接(如文件上传)被中断,设置过长会占用资源。
- Fastest Server (最快服务器): 一种负载均衡算法,持续监控服务器的响应时间,并将新请求优先分配给响应最快的服务器。
安全与 DDoS 防护
Radware 设备通常集成了强大的应用层安全功能。
- 参数说明:
- Web Application Firewall (WAF): 防护SQL注入、XSS、CSRF等OWASP Top 10攻击。
- DDoS Protection: 防护SYN Flood, HTTP Flood等DDoS攻击。
- Rate Limiting (限速): 限制单个IP或IP段的请求速率,防止恶意请求耗尽资源。
- Bot Protection: 识别和自动化机器人流量。
总结与配置示例
配置流程通常是:
- 配置服务器: 添加后端服务器的IP和端口,并配置健康检查。
- 创建服务器池: 将配置好的服务器添加到一个池中,并设置负载均衡算法和权重。
- 创建虚拟服务器: 定义VIP和端口,并将其关联到上一步创建的服务器池。
- (可选) 启用高级功能: 根据需要配置SSL卸载、会话保持、内容切换等。
一个简单的HTTP负载均衡配置示例:
| 功能模块 | 参数 | 值 |
|---|---|---|
| 服务器池 | Pool Name | Web-Server-Pool |
| 成员1 | RIP: 0.0.1, RPORT: 80, Weight: 3 |
|
| 成员2 | RIP: 0.0.2, RPORT: 80, Weight: 1 |
|
| 健康检查 | Check Type | HTTP |
| URL | ||
| Expected Status Code | 200 |
|
| Fall Count | 3 |
|
| 虚拟服务器 | Virtual IP | 0.113.10 |
| Virtual Port | 80 |
|
| Protocol | TCP |
|
| Default Pool | Web-Server-Pool |
|
| 负载均衡算法 | Algorithm | Weighted Least Connections |
希望这份详细的参数梳理能帮助你更好地理解和使用 Radware 负载均衡设备,实际配置时,请务必参考对应版本的官方文档,因为界面和参数名称可能会有细微差别。
