如何根据运行状况检查状态将流量从 AWS ALB 中的一个目标组路由到另一个目标组?

问题描述 投票:0回答:1

我的团队管理着两个独立的生产车队:

  • A 组:支持高客户关键用例。
  • 舰队 B:支持客户关键性较低的用例。

在服务压力期间,我们在车队 A 中有负载卸载机制,当资源受到限制时,车队 A 会卸载多余的请求。过去,这导致了关键用例的失败。为了提高客户关键用例的可用性,我们正在探索当车队 A 面临压力或不健康时将流量从车队 A 路由到车队 B 的选项。

具体来说,我们想知道 ALB 是否可以根据目标组 A 的运行状况检查状态动态地将流量从目标组 A(队列 A)路由到目标组 B(队列 B)。目前,两个队列都托管在单独的 AWS 下应用程序负载均衡器 (ALB),我们希望启用队列 A AlB 后面的队列 B 目标组。

要求:

  • 车队 A(目标组 A)只要健康就应该接收流量。
  • 当队列 A 运行状况不佳时(例如,由于过载或 5xx 响应等错误而导致运行状况检查失败),ALB 应自动将流量重定向到队列 B(目标组 B)。
  • 健康检查最好考虑特定的错误代码,例如 503。

我正在寻找以下方面的指导:

  • 是否可以通过AWS ALB和健康检查来实现。
  • 如何设置侦听器规则以根据目标组 A 的健康状况路由流量。

Here’s a diagram of what we’re trying to achieve:


       +------------------+
       |   Client Traffic  |
       +------------------+
                |
                v
    +------------------------+
    |  AWS Application Load   |
    |       Balancer (ALB)    |
    +------------------------+
         /          \
        v            v
  +------------+  +------------+
  | Target     |  | Target     |
  | Group A    |  | Group B    |
  | (Fleet A)  |  | (Fleet B)  |
  +------------+  +------------+
        |
        v
  (Fails Health Check)
        |
        v
  +----------------+
  | Route Traffic  |
  | to Target Group|
  | B (Fleet B)    |
  +----------------+

任何帮助将不胜感激!

另一种选择是我们在服务java客户端上构建功能,它也可以重定向两个车队之间的流量。然而,我们希望减少客户端的变化,限制未来任何潜在的变化。

amazon-web-services load-balancing aws-application-load-balancer
1个回答
0
投票

谢谢好问题!

最诚挚的问候

联系方式: [电子邮件受保护]

© www.soinside.com 2019 - 2024. All rights reserved.