IP 为 public 的应用程序网关后面的 Azure 容器组

Azure Container Group behind application gateway with public IP

我有一个具有前端 public IP 地址的应用程序网关,通过其子网连接到 VNET 并使用指向同一 VNET 但不同子网中的容器组的单个后端池。

后端池指向容器组的IP地址。行得通!

但我不想依赖可能随容器重启而随时更改的 IP 地址。我已经使用链接到 VNET 的专用 DNS 区域。由于我的私有 DNS 区域中的 A 记录,容器组可以作为“mycontainer.my-azure.com”从 VNET 访问。

但是将“mycontainer.my-azure.com”作为后端池的 FQDN 不起作用。它适用于 IP 地址“172.22.44.5”,但“mycontainer.my-azure.com”无法解析,后端运行状况显示“未知”。我尝试从 AZ CLI 重新启动 APP GW 无济于事。

有谁知道如何让 APP GW 在其后端池中使用 VNET 的私有 DNS 区域?

如果应用程序网关后端池包含内部可解析的 FQDN 或私有 IP 地址,应用程序网关将通过使用其实例私有 IP 地址 将请求路由到后端服务器。确保后端池中的 FQDN 可以在内部解析。

您可以验证以下配置,它在我这边有效。我使用的是标准 V2 SKU 应用程序网关。应用程序网关和容器组部署到同一个 VNet 但不同的子网中,没有防火墙规则。我使用 this example 部署 ACI。

后端池

HTTP 设置

监听器

健康探测

私有 DNS 区域