应用程序负载均衡器用于端口 80 上的多个应用程序

Application Load Balancer for multiple applications on port 80

我正在尝试配置 AWS Application Load Balancer 以在两个 EC2 实例上对多个应用程序 (4) 运行 进行负载平衡。

我的应用架构如下:

我想使用 HTTP 端口 80 并为每个端口创建一个条目。

我之前尝试过经典负载均衡器配置,但这不支持侦听多个 HTTP 端口 80 条目。

我以前从未使用过Application Load Balancer,但尝试配置目标组规则进行测试。我的规则检查路径 /applicationName 并且要检查的端口是 8081,我的应用程序 url 将包含 http://"ipaddress":8081/applicationName.

理想情况下,我想为每个应用程序创建一个规则。

是否有人知道这种类型的负载平衡器是否可以用于此设置?如果可以,如何正确设置?

您必须为每个应用程序创建一个目标组,如下所示:

  • 目标组 A --> 实例 1 和 2,端口 8080
  • 目标组 B --> 实例 1 和 2,端口 8081
  • 目标组 C --> 实例 1 和 2,端口 8082
  • 目标组 D --> 实例 1 和 2,端口 8083

然后在 ALB 上为端口 80 创建 4 条规则,如下所示:

  • 路径 /application1 --> 目标组 A
  • 路径 /application2 --> 目标组 B
  • 路径 /application3 --> 目标组 C
  • 路径 /application4 --> 目标组 D

每个应用程序都需要配置为在指定路径提供适当的内容。即 application1 需要配置为在 http://domain-name:8080/application1 等处提供内容

您还必须在 ALB 中为端口 80 配置默认路径。我不确定在这种情况下你想要配置什么,如果没有指定路径,也许将它指向你的应用程序之一作为 "default"。