转发策略
操作场景
您可以通过给共享型负载均衡添加转发策略,将来自不同域名或者不同URL的请求转发到不同的后端服务器组处理。
例如:您可以通过添加转发策略,将视频、图片、音频、文本等请求分别转发到不同的后端服务器组上去处理,便于灵活的分流业务,合理的分配资源。
转发策略由转发规则和转发动作两部分组成:
- 支持的转发规则有:域名、URL。
- HTTP监听器支持的动作类型有:转发至后端服务器组、重定向至监听器。
- HTTPS监听器支持的动作类型有:转发至后端服务器组。
匹配原理
- 在添加了转发策略后,负载均衡器将按以下规则转发前端请求:
- 如果能匹配到监听器的转发策略,则按该转发策略将请求转发到对应的后端服务器组。
- 如果不能匹配到监听器的转发策略,则按照默认转发策略将请求转发到监听器默认的后端服务器组(创建监听器时配置的后端服务器组)。
- 匹配优先级:
- 不同域名间优先级互相独立,转发规则域名与URL同时存在时,优先按照域名进行匹配。
- 转发规则为URL时,匹配优先级如下:精确匹配 > 前缀匹配 > 正则匹配,匹配类型相同时URL长度越长,优先级越高。
如表1中,访问请求www.elb.com/test同时满足转发策略1和转发策略2,优先按照域名进行匹配,则请求将按照转发策略2进行转发。
约束与限制
- 此功能目前仅支持协议类型为HTTP、HTTPS的监听器。
- 负载均衡控制台不支持创建相同的转发策略。
- 一个监听器最多支持配置100条转发策略,超过配额的转发策略不生效。
- 配置共享型ELB的转发策略时,请注意以下事项:
- 转发规则URL仅支持路径,不支持查询字符串。如果您的URL设置为/path/resource?name=value,该条转发策略将失效。
- 每个URL路径需要存于后端服务器(即必须是后端服务器上真实存在的路径),否则访问后端服务器时,后端服务器会返回404。
- 因为正则匹配采用顺序匹配的方式,只要任意规则匹配成功就结束匹配。所以配置“URL匹配规则”为“正则匹配”的多个匹配规则时,规则之间不能重叠。
- 不能配置URL路径完全相同的转发策略。
- 输入的域名总长度不能超过100个字符。
如果通过调用API接口创建了相同的转发策略,则会出现转发策略故障,此时即使把前面创建的转发策略删除,后面的转发策略依然会显示故障。将出现冲突的转发策略都删除后重新添加,即可恢复正常。
添加转发策略
- 进入弹性负载均衡列表页面。
- 在弹性负载均衡列表页面,单击需要添加转发策略的负载均衡器名称。
- 在“监听器”页签,您可以通过以下两种操作入口,进入监听器的“转发策略”页签。
- 在目标监听器所在行的“操作”列,单击“添加/编辑转发策略”。
- 单击目标监听器的名称,并切换到“转发策略”页签。
- 单击“添加转发策略”按钮。参考表2配置参数。
- 配置完成,单击“保存”。
参数 |
说明 |
样例 |
|
---|---|---|---|
转发规则 |
域名 |
触发转发的域名,仅支持精确域名。 域名或者URL至少要指定一个。 |
www.test.com |
URL |
/login.php |
||
动作 |
转发至后端服务器组 |
如果请求与配置的转发规则(条件)匹配,则将请求转发至配置的后端服务器组。 |
转发至后端服务器组 |
重定向至监听器 |
如果请求与配置的转发规则(条件)匹配,则将请求重定向至配置的监听器。 仅HTTP监听器支持配置该动作类型。
说明:
选择“重定向至监听器”并配置监听器后,除访问控制以外原有监听器配置会失效。 例如:配置了重定向至监听器后,当客户端通过HTTP请求访问的时候,后端服务器会返回HTTPS的响应,即强制以HTTPS请求访问网页。因此实际以HTTPS监听器的配置为准向后端服务器进行转发,原有HTTP监听器的配置就无效了。 |
- |
|
后端服务器组 |
为转发策略选择已有的后端服务器组。 “动作”选择“转发至后端服务器组”时需要设置。 |
- |
|
监听器 |
为转发策略选择已有的监听器。 “动作”选择“重定向至监听器”时需要设置。 |
- |
模式 |
请求URL |
设定URL |
|||
---|---|---|---|---|---|
- |
- |
/elb/index.html |
/elb |
/elb[^\s]* |
/index.html |
精确匹配 |
/elb/index.html |
√ |
- |
- |
- |
前缀匹配 |
√ |
√ |
- |
- |
|
正则匹配 |
√ |
- |
√ |
- |
以上图为例
请求的URL:/elb_gls/glossary.html先在精确匹配规则中查找,如果没有找到精确匹配的规则,则继续在前缀匹配规则中查找,找到匹配的规则2,将该请求转发到规则2对应的后端服务器组2。此时虽然请求URL和正则匹配规则中的规则3相匹配,但由于前缀匹配的优先级比较高,所以最终将请求转发至后端服务器组2。
修改转发策略
- 进入弹性负载均衡列表页面。
- 在弹性负载均衡列表页面,单击需要修改转发策略的负载均衡器名称。
- 切换到监听器页签,单击需要修改转发策略的监听器名称。
- 切换到“转发策略”页签,选择需要修改的转发策略,单击“编辑”。
- 根据界面提示修改参数,单击“保存”。
删除转发策略
- 进入弹性负载均衡列表页面。
- 在弹性负载均衡列表页面,单击需要删除转发策略的负载均衡器名称。
- 切换到监听器页签,单击需要删除转发策略的监听器名称。
- 切换到“转发策略”页签,选择需要删除的转发策略,单击“删除”。
- 在弹出的“删除转发策略”对话框中,单击“确定”。