Application Gateway - Integridade do back-end

A saúde do backend é um relatório do Gateway de Aplicação do Azure que mostra o estado atual de cada servidor backend. As sondas de saúde padrão e personalizadas monitorizam continuamente os servidores num pool de backend, e o gateway envia tráfego apenas para servidores que o podem receber. Este artigo explica os possíveis estados de saúde do backend e como visualizar o relatório utilizando o portal Azure, CLI do Azure, API REST ou Azure PowerShell. Use o relatório para identificar servidores insalubres e resolver problemas que impedem o tráfego de chegar à sua aplicação.

Relatório de integridade do backend

Os status possíveis para o relatório de integridade de um servidor são:

  • Em bom estado - As sondas do Gateway de Aplicações recebem um código de resposta esperado do servidor de back-end.
  • Não saudável - As sondas não recebem resposta, ou a resposta não corresponde ao código ou corpo esperado.
  • Desconhecido - O plano de controlo do Application Gateway não consegue comunicar com as instâncias do Application Gateway, ou o nome de domínio totalmente qualificado (FQDN) não é possível resolver.

Para causas e soluções para os estados Não Salubres e Desconhecidos, veja Resolução de problemas de saúde backend no Gateway de Aplicação do Azure.

Nota

O relatório de saúde do backend atualiza-se com base no intervalo de atualização da respetiva sonda. Atualizar a página ou efetuar um pedido à API de verificação de estado do backend não atualiza o relatório imediatamente.

Métodos para visualizar a saúde do backend

Pode gerar o relatório de saúde do servidor backend através do portal Azure, API REST, PowerShell e CLI do Azure.

O portal Application Gateway fornece um relatório de saúde do backend com visualizações e ferramentas de resolução de problemas. Cada linha mostra o servidor alvo, o seu pool backend, a associação das definições backend (incluindo porta e protocolo) e a resposta recebida pela sonda mais recente. Para saber como o relatório é estruturado com base no número de grupos de back-end, servidores e configurações de back-end, consulte a Descrição geral das sondas de estado de funcionamento do Application Gateway.

Para os estados Não íntegro e Desconhecido, também pode usar a ligação Resolução de Problemas que fornece as seguintes ferramentas:

  1. Resolução de problemas de ligação do Observador de Rede do Azure - Para saber como utilizar esta ferramenta, consulte Gerir a resolução de problemas de ligação.

  2. Visualização do certificado do servidor backend - A visualização mostra o cliente, o gateway da aplicação e o servidor backend. Os detalhes de resolução de problemas centram-se na ligação Transport Layer Security (TLS) entre o gateway de aplicação e o servidor backend.

    Captura de ecrã dos detalhes de saúde do backend que mostram uma ligação TLS pouco saudável, uma cadeia de certificados mal organizada e a ordem de certificados esperada.

Lendo a ilustração

  • Uma linha vermelha de ligação entre o gateway de aplicação e o servidor backend indica um problema com a ligação TLS.
  • Linhas vermelhas de cadeia de certificados no bloco de servidor backend marcam um problema com os componentes do certificado. As etiquetas identificam os certificados folha, intermédio e raiz, e uma coluna Ordem esperada mostra a sequência correta.
  • O texto vermelho no bloco Application Gateway ou Backend Server identifica um problema com as definições do backend ou com o certificado do servidor, respetivamente.
  • Utilize a localização do erro e a solução fornecida para determinar se deve atualizar a configuração de backend do gateway de aplicação ou o servidor de backend.

Exemplo de resposta de estado do servidor

A resposta identifica cada conjunto de endereços do backend e a coleção de definições do backend. Para cada servidor, o address campo identifica o destino do backend e o health campo reporta o seu estado atual.

O trecho a seguir mostra um exemplo da resposta:

{
    "backendAddressPools": [
        {
            "backendAddressPool": {
                "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup/providers/Microsoft.Network/applicationGateways/applicationGateway01/backendAddressPools/appGatewayBackendPool"
            },
            "backendHttpSettingsCollection": [
                {
                    "backendHttpSettings": {
                        "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup/providers/Microsoft.Network/applicationGateways/applicationGateway01/backendHttpSettingsCollection/well-known-ca"
                    },
                    "servers": [
                        {
                            "address": "www.cloudflare.com",
                            "health": "Healthy",
                            "healthProbeLog": "Success. Received 200 status code"
                        }
                    ]
                }
            ]
        }
    ]
}

Próximos passos