更新时间:2024-12-12 GMT+08:00
分享

ELB Ingress转发策略优先级说明

在创建ELB Ingress时,CCE会根据Ingress配置中的域名、URL等转发规则,在ELB侧配置相应的转发策略。

为了满足复杂的流量路由需求,CCE集成了ELB的高级转发策略能力,支持URL重定向、重写等高级转发能力,但高级转发策略的排序逻辑与普通的转发策略存在差异。

具体如下:

  • 未开启ELB高级转发策略时,转发策略根据域名/路径匹配进行排序,详情请参见默认排序
  • 开启ELB高级转发策略后,请求会按照优先级顺序进行匹配然后转发,详情请参见优先级排序

默认排序

未开启ELB高级转发策略时,转发策略的默认排序规则如下:

  • 不同域名间优先级互相独立,转发规则域名与URL同时存在时,优先按照域名进行匹配。
  • 转发规则为URL时,匹配优先级如下:精确匹配 > 前缀匹配 > 正则匹配,匹配类型相同时URL长度越长,优先级越高。
表1 默认排序的转发策略示例

转发策略

设定值

转发策略排序

URL(精确匹配)

/test1/test2/test3

1

URL(前缀匹配)

/test1/test2

2

URL(前缀匹配)

/test1

3

创建转发策略后,系统会根据默认排序规则进行排序。访问示例如下:

  • 访问请求www.example.com/test1/test2同时满足转发策略2和转发策略3,匹配类型相同时URL长度越长,优先级越高,则请求将按照转发策略2进行转发。
  • 访问www.example.com/test1/test2/test3同时满足转发策略1、和转发策略2和转发策略3,优先精确匹配,则请求将按照转发策略1进行转发。

优先级排序

开启ELB高级转发策略后,每个请求会按照转发策略的优先级顺序(转发策略编号的数值越小,优先级越高)逐条匹配,一旦能够匹配到一条转发策略,立即按照当前转发策略进行转发。

转发策略的优先级设置规则如下:

  • 配置高级转发策略前已有的转发策略会继承原有的优先级顺序。
  • 配置高级转发策略后,每次新增的转发策略优先级排序最低(默认转发策略固定为最低优先级,不参与排序)。您也可以手动指定新增的转发策略优先级,详情请参见为ELB Ingress配置转发规则优先级
表2 根据优先级排序的转发策略示例

转发策略

设定值

转发策略优先级设置

URL(前缀匹配)

/test1

1

URL(精确匹配)

/test1

2

如以上示例,访问请求www.example.com/test1同时满足转发策略1和转发策略2,根据优先级排序,则请求将按照转发策略1进行转发。

相关文档