【发布时间】:2017-11-17 19:18:00
【问题描述】:
- Azure容器服务中有一个hello world服务运行,它的地址是http://52.168.172.165,可以访问这个地址并在浏览器中成功响应。
- 使用默认设置和公共 IP 创建 Azure 应用程序网关
HTTP Setting: HTTP 80 <appGatewayBackendHttpSettings>
Listeners: HTTP 80 <appGatewayHttpListener>
Rules:
rule1: < appGatewayHttpListener> - <appGatewayBackendHttpSettings> -<appGatewayBackendPool>
Backend pools:
appGatewayBackendPool
Associated Rule: <rule1>
Targets: 52.168.172.165
问题在于后端健康,52.168.172.165:80 的状态是不健康。由于没有后端服务工作,当我访问应用程序网关的地址时,它显示502错误。
但实际上我可以在浏览器中访问服务http://52.168.172.165:80,我的问题是为什么应用程序网关的状态不健康以及如何纠正它?
顺便说一句,我对这个问题做了一些研究,比如下面的文章 https://docs.microsoft.com/en-us/azure/application-gateway/application-gateway-troubleshooting-502
对于我的后端服务:
- 对后端服务的浏览器请求是可用的。
- 没有超时。
- 探测间隔 30 秒就足够了。
那么显示不健康的问题是什么?
【问题讨论】:
-
如果我查看您发布的(IP)地址,我只会得到欢迎您的 ASP.NET Core 应用程序已成功启动。但似乎没有实际应用
-
它只是 hello world 测试应用程序。欢迎页面是我们想要的。预期的结果是,当我访问应用程序网关时,应该返回欢迎页面
-
我希望 Azure 足够聪明,可以看到没有运行应用程序,这就是您收到错误的原因。尝试部署一个真实的应用程序。
-
我在应用程序网关中有 API 管理实例作为后端,我必须使用 IP 地址作为后端池,但使用 FQDN 进行健康检查。使用 IP 地址进行的健康检查不起作用 - 与您所说的问题相同。
标签: azure azure-application-gateway