【问题标题】:Routing based on request headers (using AWS Application Load Balancer)基于请求标头的路由(使用 AWS Application Load Balancer)
【发布时间】:2017-01-14 23:19:40
【问题描述】:

第 7 层负载平衡器更复杂、更强大。它 检查数据包,可以访问 HTTP 和 HTTPS 标头,并且(武装 有更多信息)可以做一个更聪明的工作来传播 加载到目标。

https://aws.amazon.com/blogs/aws/new-aws-application-load-balancer/

我了解 AWS Application Load Balancer 可以访问 HTTP(S) 请求标头,但我只能看到您如何通过路径进行路由。有人可以解释我如何根据user-agent 标头进行路由。如果不可行,请建议另一种 AWS 方法。

【问题讨论】:

标签: amazon-web-services amazon-ec2


【解决方案1】:

直到 2017-05-26 ALB 没有基于标头的路由。随着 2017 年 4 月 5 日的更新,它包含了Host based routing。目前它仅支持基于路径和主机的路由。您可以访问here 了解最新的 AWS 信息。

如果你想基于 headers 进行路由,目前 ALB 中没有选项。 您必须有一个附加层,例如代理/nginx 服务器。 流程可以如下所示。

  1. 客户端调用https://example.com
  2. ALB 的 DNS 配置为 example.com
  3. ALB 附加了具有 nginx 实例的目标组。 Nginx 实例使用标头信息路由到相应的负载均衡器。 (例如,如果 customerId 是 123 路由到 ELB 1 否则路由到 ELB 2)
  4. 两个 ELB 连接了不同的 EC2 实例。

但听说 AWS 正在处理基于标头的路由请求。

【讨论】:

    【解决方案2】:

    对于现在查看的任何人,截至 2019 年 3 月 27 日,ALB now support 路由基于除 Host 标头之外的 HTTP 标头。

    【讨论】:

      猜你喜欢
      • 2017-06-12
      • 2018-03-08
      • 1970-01-01
      • 2018-06-15
      • 2019-03-15
      • 2018-05-27
      • 2019-07-08
      • 2017-11-23
      • 2017-02-13
      相关资源
      最近更新 更多