【问题标题】:Backend service works fine through browser, but shows unhealthy in the Azure Application Gateway后端服务通过浏览器运行良好,但在 Azure 应用程序网关中显示不正常
【发布时间】:2017-11-17 19:18:00
【问题描述】:
  1. Azure容器服务中有一个hello world服务运行,它的地址是http://52.168.172.165,可以访问这个地址并在浏览器中成功响应。
  2. 使用默认设置和公共 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

对于我的后端服务:

  1. 对后端服务的浏览器请求是可用的。
  2. 没有超时。
  3. 探测间隔 30 秒就足够了。

那么显示不健康的问题是什么?

【问题讨论】:

  • 如果我查看您发布的(IP)地址,我只会得到欢迎您的 ASP.NET Core 应用程序已成功启动。但似乎没有实际应用
  • 它只是 hello world 测试应用程序。欢迎页面是我们想要的。预期的结果是,当我访问应用程序网关时,应该返回欢迎页面
  • 我希望 Azure 足够聪明,可以看到没有运行应用程序,这就是您收到错误的原因。尝试部署一个真实的应用程序。
  • 我在应用程序网关中有 API 管理实例作为后端,我必须使用 IP 地址作为后端池,但使用 FQDN 进行健康检查。使用 IP 地址进行的健康检查不起作用 - 与您所说的问题相同。

标签: azure azure-application-gateway


【解决方案1】:

将后端池配置为使用 IP 地址和 FQDN 进行健康检查对我来说非常有用。不知道为什么它没有作为答案输入。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-01
    • 2020-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-01
    • 2013-03-06
    相关资源
    最近更新 更多