我收到了一个项目,其中 Azure 应用程序网关 (AGW) 使用包含多个应用程序的内部负载均衡器 (ILB) 应用程序服务环境 (ASE) 作为后端池。
AGW 是使用多个多站点侦听器设置的,其中每个多站点侦听器的主机与在 ILB ASE 中运行的应用服务实例中的自定义域匹配。像这样:
我需要向 ASE 中添加一个新应用程序,并向 AGW 添加相应的配置。
问题是AGW最多可以有20个听众,这在我手上的项目中已经达到了。因此,我无法使用此设置向 AGW 添加更多应用程序。
为了解决侦听器限制,只需进行最少的更改,我想使用多站点基于路径的路由,并将 ILB ASE 作为后端池。我想要如下所示的内容:
我花了一些时间查看文档以及其他 StackOverflow 问题。我还浏览了多站点应用服务文档https://docs.microsoft.com/en-us/azure/application-gateway/create-web-app,包括使用 -PickHostNameFromBackend 开关。到目前为止,我做了一些实验,但没有成功。
我相信AGW目前不支持我想做的事情。我想我明白为什么了。从 AGW 传递到 ILB ASE (api.example.com) 的主机名在 ASE 的任何应用服务实例中都不作为自定义域存在,因此不会满足请求。如果我错了,请纠正我。
我想要的设置(图 2)是否可行?
如果不可能,还有什么替代解决方案,我今天只有一个 AGW?