2016-02-10 5 views
3

Я работаю с шлюзом приложений Azure и придерживаюсь следующей ошибки. Вот моя сетевая диаграмма App Gateway with cloud serviceAzure Application Gateway 502 error

Здесь скрипт PowerShell, который я должен был настроить Poweshell Output PS C: \ Users \ shabbir.akolawala> Get-AzureApplicationGateway sbr2appgateway

Name   : sbr2appgateway 
Description : 
VnetName  : Group Shabs-AppGateway2 sbag2vnet 
Subnets  : {sbag2subnet1} 
InstanceCount : 2 
GatewaySize : Small 
State   : Running 
VirtualIPs : {104.41.159.238} <-- Note IP Here 
DnsName  : 01b9b0e4-4cd2-4437-b641-0b5dc4e3efe7.cloudapp.net 

Здесь, общественный IP шлюза приложения составляет 104.41.159.238 Теперь, если я впервые ударил вас по шлюзу, вы получите следующий результат . Примечание. Этот сайт не отображается правильно, так как многие запросы (css/images) терпят неудачу с 502.

First Response from the Gateway

Теперь, когда, если я ударил этого во второй раз, я Тотчас получить 502 ошибки

enter image description here

Но, когда попал в облачный сервис IP, я получаю мой сайт правильно

Website render correct with Cloud service

У меня была конфигурация Azure Gateway со следующей конфигурацией XML

Мои вопросы,

1] Есть ли одна идея, как, как получить доступ журналы, которые генерируются в Application Gateway (В теории, шлюз приложений работает на IIS 8.5/ARR)

2] Любой очевидная ошибка, я сделал в дизайне или конфигурации?

+0

Вы когда-нибудь решали это? Я в той же ситуации и получаю точно такую ​​же ошибку. Но не нашли решения и не смогли найти, какова фактическая ошибка. – Wedge

+0

Нет, но я понял, что касается зондов здоровья.При первом ударе шлюз приложения инициирует зонд работоспособности, учитывается второй раз, когда вы нажимаете на эту услугу, шлюз приложения удалил сервер из пула, а затем сразу же возвращает 502. – Shabbir

+0

При обращении в Microsoft для устранения неполадок, вот ответ I получил 'Сервис, поскольку он на данный момент не раскрывает никаких журналов или диагностики. Если требуется помощь по устранению неполадок глубины, нам нужно будет рассмотреть вопрос о получении консультационного билета. – Shabbir

ответ

2

Это из-за таймаута. 1, Зонд по умолчанию - 30 секунд. если вам требуется аутентификация, вам придется установить настраиваемый пробник.

2, Application Gateway имеет тайм-аут 30 секунд по умолчанию. если ваш шлюз приложений не может получить ответ от бэкэнд-виртуальной машины. он вернет HTTP 502. его можно изменить с помощью «RequestTimeout».

PowerShell:

set-AzureApplicationGatewayConfig -Name <application gateway name> - Configfile "<path to file>" 

Файл конфигурации:

<BackendHttpSettings> 
    <Name>setting1</Name> 
    <Port>80</Port> 
    <Protocol>Http</Protocol> 
    <CookieBasedAffinity>Enabled</CookieBasedAffinity> 
    <RequestTimeout>120</RequestTimeout> 
    <Probe>Probe01</Probe> 

Для деталей: https://azure.microsoft.com/en-us/documentation/articles/application-gateway-create-probe-classic-ps/

0

Я создал пользовательские healthchecks, но никогда не видел попыток в websever доступа-журнал. Итак, я просто установил маршрут на бэкэнд, чтобы обслуживать любой домен, включая IP-адрес, и добавить защиту htpasswd в реальные домены. Azure application gateway check http://backend_ip:80/ и стал счастливым шлюзом :)