Compartilhar via


Diagnósticos de balanceador de carga padrão com métricas, alertas e integridade de recursos

O Azure Load Balancer expõe as seguintes funcionalidades de diagnóstico:

  • Métricas e alertas multidimensionais: fornece novos recursos de diagnóstico multidimensionais por meio do Azure Monitor para configurações do balanceador de carga padrão. É possível monitorar, gerenciar e resolver problemas dos seus recursos de balanceador de carga padrão.

  • Resource Health: o status do Resource Health do balanceador de carga está disponível na página Integridade do recurso em Monitor. Essa verificação automática informa sobre a disponibilidade atual do recurso do balanceador de carga.

Este artigo fornece um tour rápido dessas funcionalidades e oferece maneiras de usá-las para um balanceador de carga padrão.

Métricas multidimensionais

O Azure Load Balancer fornece métricas multidimensionais por meio das Métricas do Azure no portal do Azure e ajuda a obter insights de diagnóstico em tempo real sobre os recursos do balanceador de carga.

As várias configurações do balanceador de carga oferecem as seguintes métricas:

Métrica Tipo de recurso Descrição Agregação recomendada
Disponibilidade do caminho de dados Balanceador de carga público e interno Um balanceador de carga padrão usa continuamente o caminho de dados de dentro de uma região para o front-end do balanceador de carga, para a rede que dá suporte à sua VM. Contanto que instâncias íntegras permaneçam, a medição seguirá o mesmo caminho que o tráfego com balanceamento de carga do seu aplicativo. O caminho de dados em uso é validado. A medição é invisível para seu aplicativo e não interfere com outras operações. Média
Status de investigação de integridade Balanceador de carga público e interno Um balanceador de carga padrão usa um serviço de investigação de integridade distribuído que monitora a integridade do ponto de extremidade do aplicativo de acordo com as definições de configuração. Essa métrica fornece uma exibição agregada ou por ponto de extremidade filtrado de cada ponto de extremidade de instância no pool do balanceador de carga. É possível ver como o balanceador de carga exibe a integridade de seu aplicativo conforme indicado pela configuração de sua investigação de integridade. Média
Contagem de SYN (sincronizar) Balanceador de carga público e interno Um balanceador de carga padrão não encerra conexões TCP (protocolo TCP) nem interage com fluxos TCP ou UDP (protocolo de datagrama de usuário). Fluxos e seus handshakes estão sempre entre a origem e a instância VM. Para solucionar melhor os problemas dos cenários de protocolo TCP, é possível usar contadores de pacotes SYN para entender quantas tentativas de conexão TCP são feitas. A métrica informa o número de pacotes SYN do TCP que foram recebidos. Somar
Contagem de conexões de SNAT (conversão de endereços de rede) de origem Balanceador de carga público Um balanceador de carga padrão informa sobre o número de fluxos de saída mascarados para o front-end do endereço IP Público. As portas SNAT são um recurso esgotável. Essa métrica pode dar uma indicação do grau de dependência que seu aplicativo tem do SNAT para fluxos com origem externa. São reportados contadores para fluxos do SNAT de saída bem-sucedidos ou não. Os contadores podem ser usados para solucionar problemas e entender a integridade de seus fluxos de saída. Somar
Portas SNAT alocadas Balanceador de carga público Um balanceador de carga padrão informa sobre o número de portas SNAT alocadas por instância de back-end Média.
Portas SNAT usadas Balanceador de carga público Um balanceador de carga padrão informa sobre o número de portas SNAT utilizadas por instância de back-end. Média
Contagem de Bytes Balanceador de carga público e interno Um balanceador de carga padrão informa sobre os dados processados por front-end. Você pode observar que os bytes não são distribuídos igualmente nas instâncias de back-end. Isso é esperado, pois o algoritmo do Azure Load Balancer é baseado em fluxos Somar
Contagem de pacotes Balanceador de carga público e interno Um balanceador de carga padrão informa sobre os pacotes processados por front-end. Somar

Observação

Métricas relacionadas à largura de banda, como pacote SYN, contagem de bytes e contagem de pacotes, não capturarão nenhum tráfego para um balanceador de carga interno por meio de uma UDR (por exemplo, de NVA ou firewall).

As agregações max e min não estão disponíveis para a contagem de SYN, a contagem de pacotes, a contagem de conexões SNAT e as métricas de contagem de bytes. A agregação de contagem não é recomendada para a disponibilidade do caminho de dados e o status da investigação de integridade. Use a média para obter dados de integridade melhores representados.

Exibir suas métricas do balanceador de carga no portal do Azure

O portal do Azure expõe as métricas do balanceador de carga por meio da página Métricas. Esta página está disponível na página de recursos do balanceador de carga para um determinado recurso e na página do Azure Monitor.

Observação

O Azure Load Balancer não envia investigações de integridade para máquinas virtuais desalocadas. Quando as máquinas virtuais forem desalocadas, o balanceador de carga interromperá as métricas de relatório para essa instância. As métricas indisponíveis aparecerão como uma linha tracejada no Portal ou aparecerão em uma mensagem de erro que indicará a impossibilidade de recuperação das métricas.

Para exibir as métricas de seus recursos do balanceador de carga padrão:

  1. Acesse a página de métricas e execute uma das seguintes tarefas:

    • Na página de recursos do balanceador de carga, selecione o tipo de métrica na lista suspensa.

    • Na página do Azure Monitor, selecione o recurso do balanceador de carga.

  2. Defina o tipo de agregação de métrica adequado.

  3. Ou configure a filtragem e o agrupamento necessários.

  4. Opcionalmente, configure o intervalo de tempo e a agregação. Por padrão, o horário é exibido em UTC.

Observação

A agregação de tempo é importante ao interpretar determinadas métricas, pois os dados são amostrados uma vez por minuto. Se a agregação de tempo for definida como cinco minutos e a soma do tipo de agregação de métrica for usada para métricas como a alocação de SNAT, o grafo exibirá cinco vezes o total de portas SNAT alocadas.

Recomendação: ao analisar a soma e a contagem do tipo de agregação de métrica, é recomendável usar um valor de agregação de tempo maior que um minuto.

Metric for data path availability for a standard load balancer.

Figura: métrica para disponibilidade de caminho de dados para um balanceador de carga padrão

Recuperar as métricas multidimensionais programaticamente por meio de APIs

Para obter diretrizes sobre API para recuperar valores e definições de métricas multidimensionais, consulte o passo a passo da API REST de Monitoramento do Azure. Essas métricas podem ser gravadas em uma conta de armazenamento adicionando uma configuração de diagnóstico para a categoria 'Todas as métricas'.

O caminho de dados está disponível e funcionando para o front-end do balanceador de carga?

Expanda

A métrica de disponibilidade do caminho de dados descreve a integridade na região do caminho de dados para o host de computação onde se encontram suas VMs. A métrica é uma reflexão da integridade da infraestrutura do Azure. É possível usar a métrica para:

  • Monitorar a disponibilidade externa do seu serviço.

  • Investigue a plataforma em que o serviço está implantado e determine se está íntegro. Determine se o sistema operacional convidado ou a instância do aplicativo está íntegra.

  • Isolar se um evento está relacionado ao seu serviço ou o plano de dados subjacente. Não confunda essa métrica com o status de investigação de integridade ("disponibilidade de instância de back-end").

Para obter a disponibilidade caminho de dados para os recursos do balanceador de carga padrão:

  1. Verifique se o recurso do balanceador de carga correto está selecionado.

  2. Na lista suspensa Métrica, selecione Disponibilidade do caminho de dados.

  3. Na lista suspensa Agregação, selecione Méd.

  4. Além disso, adicione um filtro no endereço IP do front-end ou na porta do front-end como a dimensão com o endereço IP de front-end ou a porta de front-end necessários. Em seguida, agrupe-os de acordo com a dimensão selecionada.

Load balancer frontend probing details.

Figura: detalhes de investigação front-end do balanceador de carga

A métrica é gerada por uma medida de ativa e dentro da faixa. Um serviço de investigação dentro da região origina o tráfego da medida. O serviço é ativado assim que você cria uma implantação com um front-end público, e ele continua até que você remova o front-end.

Um pacote que corresponde ao front-end e a uma regra de sua implantação é gerado periodicamente. Eles atravessam a região da origem até o host onde se encontra uma VM no pool de back-end. A infraestrutura do balanceador de carga executa as mesmas operações de balanceamento de carga e de translação, assim como faz para todos os outros tráfegos. Essa investigação é feita dentro da banda no seu ponto de extremidade com balanceamento de carga. Depois que a investigação chega no host de computação no qual uma VM íntegra no pool de back-end está localizada, o host de computação gera uma resposta para o serviço de investigação. A VM não vê esse tráfego.

A disponibilidade do caminho de dados falha pelos seguintes motivos:

  • Sua implantação não tem nenhuma VM íntegra restante no pool de back-end.

  • Ocorreu uma interrupção de infraestrutura.

Para fins de diagnóstico, é possível usar a Métrica para disponibilidade do caminho de dados junto com o status de investigação de integridade.

Use Média como a agregação para a maioria dos cenários.

As instâncias de back-end para o meu balanceador de carga estão respondendo às investigações?

Expanda

A métrica de status de investigação de integridade descreve a integridade da implantação do aplicativo, conforme configurado por você ao configurar a investigação de integridade do balanceador de carga. O balanceador de carga usa o status da investigação de integridade para determinar para onde enviar novos fluxos. As investigações de integridade se originam de um endereço de infraestrutura do Azure e são visíveis no sistema operacional convidado da VM.

Para obter o status da investigação de integridade para os recursos do balanceador de carga padrão:

  1. Selecionar a métrica de Status de investigação de integridade com o tipo de agregação Avg.

  2. Aplique um filtro no endereço IP ou porta (ou ambos) de front-end necessário.

As investigações de integridade falham pelos seguintes motivos:

  • Ao configurar uma investigação de integridade em uma porta que não está escutando ou não está respondendo ou que está usando o protocolo incorreto. Se seu serviço estiver usando regras de retorno direto do servidor ou IP flutuante, verifique se o serviço está escutando o endereço IP da configuração de IP da NIC e o loopback configurado com o endereço IP do front-end.

  • Seu Grupo de Segurança de Rede, o firewall do SO convidado da VM ou os filtros da camada de aplicativos não permitem o tráfego da investigação de integridade.

Use Média como a agregação para a maioria dos cenários.

Como verificar as minhas estatísticas de conexão de saída?

Expanda

A métrica de conexões SNAT descreve o volume de conexões bem-sucedidas e com falha para fluxos de saída.

Um volume de conexões com falha maior que zero indica o esgotamento da porta SNAT. É necessário investigar mais para determinar o que pode estar causando essas falhas. O esgotamento de porta SNAT manifesta-se como uma falha para estabelecer um fluxo de saída. Examine o artigo sobre conexões de saída para entender os cenários e mecanismos no trabalho e para saber como minimizar e criar para evitar o esgotamento da porta SNAT.

Para obter estatísticas de conexão SNAT:

  1. Selecione o tipo de métrica Conexões SNAT e Soma como agregação.

  2. Agrupe por Estado de conexão para contagens de conexão SNAT bem-sucedidas e com falha a serem representadas por linhas diferentes.

Load balancer SNAT connection count.

Figura: contagem de conexões SNAT do balanceador de carga

Como verifico o uso e a alocação da minha porta SNAT?

Expanda

A métrica portas de SNAT usadas rastreia quantas portas SNAT estão sendo consumidas para manter fluxos de saída. Essa métrica indica quantos fluxos exclusivos estão estabelecidos entre uma fonte da Internet e um conjunto de dimensionamento de máquinas virtuais ou VM de back-end que está por trás de um balanceador de carga e não tem um IP. Ao comparar o número de portas SNAT que você está usando com a métrica Portas de SNAT alocadas, você pode determinar se o serviço está experimentando ou em risco de experimentar esgotamento de SNAT e resultando em falha do fluxo de saída.

Se suas métricas indicarem o risco de falha de fluxo de saída, referencie o artigo e execute as etapas para mitigar isso para garantir a integridade do serviço.

Para exibir o uso e a alocação da porta SNAT:

  1. Defina a agregação de tempo do grafo como 1 minuto para garantir que os dados desejados sejam exibidos.

  2. Selecione Portas SNAT usadas e/ou Portas SNAT alocadas como o tipo de métrica e Média como a agregação.

    • Por padrão, essas métricas são o número médio de portas SNAT alocadas ou usadas por cada VM de back-end ou conjuntos de dimensionamento de máquinas virtuais. Eles correspondem a todos os IPs públicos do front-end mapeados para o balanceador de carga, agregados por TCP e UDP.

    • Para exibir as portas SNAT totais usadas pelo ou alocadas para o balanceador de carga, use a Soma de agregação de métrica.

  3. Filtre para um Tipo de protocoloespecífico, um conjunto de IPs de back-end e/ou IPs de front-end.

  4. Para monitorar a integridade por instância de back-end ou front-end, aplique a divisão.

    • A divisão de observação permite que apenas uma única métrica seja exibida de cada vez.
  5. Por exemplo, para monitorar o uso de SNAT para fluxos TCP por máquina, agregue por Média, divida por IPs de back-end e filtre por Tipo de protocolo.

Average TCP SNAT port allocation and usage for a set of backend VMs.

Figura: alocação e uso médio da porta SNAT TCP para um conjunto de VMs de back-end

TCP SNAT port usage per backend instance.

Figura: uso da porta TCP SNAT por instância de back-end

Como verificar as tentativas de conexão de entrada/saída para meu serviço?

Expandiruma métrica de pacotes SYN descreve o volume de pacotes TCP SYN, que chegaram ou foram enviados para fluxos de saída associados a um front-end específico. É possível usar essa métrica para entender as tentativas de conexão TCP com seu serviço.

Para obter mais informações sobre conexões de saída, confira a SNAT (conversão de endereços de rede de origem) para conexões de saída

Use Soma como a agregação para a maioria dos cenários.

Load balancer SYN count.

Figura: contagem de SYN do balanceador de carga

Como verificar o consumo de largura de banda da rede?

Expanda

A métrica de contadores de pacote e de bytes descreve o volume de bytes e de pacotes enviados ou recebidos pelo seu serviço por front-end.

Use Soma como a agregação para a maioria dos cenários.

Para obter estatísticas de contagem de bytes ou de pacotes:

  1. Selecione o tipo de métrica Contagem de Bytes e/ou Contagem de Pacotes com Soma como a agregação.

  2. Siga um destes procedimentos:

    • Aplique um filtro em um IP de front-end específico, porta de front-end, IP de back-end ou porta de back-end.

    • Obtenha estatísticas gerais para seu recurso de balanceador de carga sem nenhuma filtragem.

Load balancer byte count.

Figura: contagem de bytes do balanceador de carga

Como posso diagnosticar a implantação do meu balanceador de carga?

Expanda

Usando uma combinação das métricas de disponibilidade de caminho de dados e status de investigação de integridade em um único gráfico, é possível identificar onde procurar o problema e resolvê-lo. É possível obter a garantia de que o Azure está funcionando corretamente e usar esse conhecimento para determinar conclusivamente que a configuração ou o aplicativo é a causa raiz.

Você pode usar métricas de investigação de integridade para entender como o Azure exibe a integridade de sua implantação de acordo com a configuração que você forneceu. Olhar para investigações de integridade é sempre uma excelente primeira etapa no monitoramento ou determinação de uma causa.

É possível executar uma etapa adicional e usar a métricas de disponibilidade de caminho de dados para obter insights sobre como o Azure exibe a integridade do plano de dados subjacente responsável por sua implantação específica. Ao combinar as duas métricas, é possível isolar onde a falha pode estar, conforme ilustrado nesse exemplo:

Combining data path availability and health probe status metrics.

Figura: combinando métricas de status de investigação de integridade e disponibilidade de caminho de dados

O gráfico exibe as seguintes informações:

  • A infraestrutura que hospeda suas VMs não estava disponível e está em 0% no início do gráfico. Depois, a infraestrutura estava íntegra, e as VMS, acessíveis, e mais de uma VM foi colocada no back-end. Essas informações são indicadas pelo traço azul para disponibilidade do caminho de dados, que depois estava em 100 por cento.

  • O status da investigação de integridade, indicado pelo rastreamento roxo, está em 0% no início do gráfico. A área circulada em verde destaca onde o status da investigação de integridade se tornou íntegro e em que ponto a implantação do cliente foi capaz de aceitar novos fluxos.

O gráfico permite que os clientes resolvam problemas da implantação sozinhos sem a necessidade de adivinhar ou perguntar ao suporte se outros problemas estão ocorrendo. O serviço não estava disponível porque as investigações de integridade estavam falhando devido a um erro de configuração ou a um aplicativo com falha.

Configurar alertas para métricas multidimensionais

O Azure Load Balancer dá suporte a alertas facilmente configuráveis para métricas multidimensionais. Configure limites personalizados para métricas específicas para disparar alertas com diferentes níveis de severidade para capacitar uma experiência de monitoramento de recursos sem toque.

Para configurar alertas:

  1. Vá para a página de alerta do balanceador de carga

  2. Criar nova regra de alerta

    1. Configurar a condição do alerta (Observação: para evitar alertas ruidosos, recomendamos configurar alertas com o tipo de agregação definido como Média, analisando uma janela de dados de cinco minutos e com um limite de 95%)

    2. (Opcional) Adicionar grupo de ação para reparo automatizado

    3. Atribuir severidade de alerta, nome e descrição que permitem a reação intuitiva

Alertas de disponibilidade de entrada

Observação

Se os pools de back-end do balanceador de carga estiverem vazios, o balanceador de carga não terá nenhum caminho de dados válido para testar. Como resultado, a métrica de disponibilidade do caminho de dados não estará disponível e todos os Alertas do Azure configurados na métrica de disponibilidade do caminho de dados não serão disparados.

Para alertar sobre a disponibilidade de entrada, você pode criar dois alertas separados usando as métricas de status de investigação de integridade e disponibilidade do caminho de dados. Os clientes podem ter cenários diferentes que exigem uma lógica de alerta específica, mas os exemplos abaixo são úteis para a maioria das configurações.

Usando a disponibilidade do caminho de dados, você pode acionar alertas sempre que uma regra de balanceamento de carga específica se tornar indisponível. Você pode configurar esse alerta definindo uma condição de alerta para a disponibilidade do caminho de dados e dividindo por todos os valores atuais e valores futuros para a porta de front-end e o endereço IP de front-end. Definir a lógica de alerta como menor ou igual a 0 fará com que esse alerta seja acionado sempre que qualquer regra de balanceamento de carga ficar sem resposta. Defina a granularidade de agregação e a frequência de avaliação de acordo com a avaliação desejada.

Com o status da sonda de integridade, você pode alertar quando uma determinada instância de back-end não responder à investigação de integridade por um período significativo. Configure sua condição de alerta para usar a métrica de status de investigação de integridade e dividir por endereço IP de back-end e porta de back-end. Isso garante que você possa alertar separadamente para cada capacidade de instância de back-end individual para fornecer o tráfego em uma porta específica. Use o tipo de agregação Média e defina o valor limite de acordo com a frequência com que sua instância de back-end é investigada e seu limite considerado íntegro.

Você também pode alertar em um nível de pool de back-end não dividindo por nenhuma dimensão e usando o tipo de agregação Média. Isso permite que você configure regras de alerta, como alertar, quando 50% dos membros do meu pool de back-end não estão íntegros.

Alertas de disponibilidade de saída

Para disponibilidade de saída, você pode configurar dois alertas separados usando a contagem de conexões SNAT e as métricas da porta SNAT usada.

Para detectar falhas de conexão de saída, configure um alerta usando a contagem de conexões SNAT e a filtragem para o Estado de conexão = Falha. Use a agregação Total. Em seguida, você pode dividir isso por endereço IP de back-end definido para todos os valores atuais e futuros para alertar separadamente para cada instância de back-end com conexões com falha. Defina o limite como maior que zero ou um número mais alto se você esperar ver algumas falhas de conexão de saída.

Com as portas SNAT usadas, você pode alertar sobre um risco maior de exaustão do SNAT e falha na conexão de saída. Verifique se você está dividindo pelo endereço IP de back-end e pelo protocolo ao usar este alerta. Use a agregação média. Defina o limite para ser maior que um percentual do número de portas que você alocou por instância que determina ser insegura. Por exemplo, configure um alerta de severidade baixa quando uma instância de back-end usar 75% de suas portas alocadas. Configure um alerta de severidade alta quando ele usar 90% ou 100% de suas portas alocadas.

Status de integridade de recurso

O status de integridade para os recursos do Load Balancer Standard é exposto por meio do Recursos de integridade existente em Monitor > Integridade do Serviço. Ele é avaliado a cada dois minutos medindo a disponibilidade do caminho de dados que determina se os pontos de extremidade de balanceamento de carga de front-end estão disponíveis.

Status de integridade de recurso Descrição
Disponível O recurso de balanceador carga padrão está íntegro e disponível.
Degradado O balanceador carga padrão tem eventos iniciados pela plataforma ou pelo usuário que afetam o desempenho. A métrica de disponibilidade do caminho de dados relatou menos de 90%, mas mais de 25% de integridade por pelo menos dois minutos. Com esse status, você experimenta um efeito de desempenho de moderado a grave. Siga o guia de solução de problemas de RHC para determinar se há eventos iniciados pelo usuário que causam impacto na disponibilidade.
Indisponível O recurso do balanceador de carga padrão não está íntegro. A métrica de disponibilidade do caminho de dados relatou menos de 25% de integridade por pelo menos dois minutos. Com esse status, você experimenta um efeito de desempenho significativo ou falta de disponibilidade para conectividade de entrada. Pode haver eventos de usuário ou plataforma causando indisponibilidade. Siga o guia de solução de problemas de RHC para determinar se há eventos iniciados pelo usuário que afetam a disponibilidade.
Unknown O status de integridade do recurso de balanceador de carga não foi atualizado ou não recebeu informações para disponibilidade de caminho de dados nos últimos 10 minutos. Esse estado deve ser transitório e reflete o status correto assim que os dados são recebidos.

Para exibir a integridade dos seus recursos do balanceador de carga padrão público:

  1. Selecione Monitorar>Integridade do serviço.

    The service health link on Azure Monitor.

    Figura: o link da integridade do serviço no Azure Monitor

  2. Selecione Integridade do recurso e certifique-se de que a ID da assinatura e o Tipo de recurso = balanceador de carga estão selecionados.

    Select resource for health view.

    Figura: selecione o recurso para o modo de exibição de integridade

  3. Na lista, selecione o recurso do balanceador de carga para exibir o status da integridade histórico.

    Resource health status.

    Figura: status de integridade do recurso

Uma descrição genérica de um status de integridade do recurso está disponível na documentação de integridade do recurso.

Alertas de integridade do recurso

Os alertas do Azure Resource Health podem notificá-lo quase em tempo real quando o estado de integridade do recurso do balanceador de carga for alterado. É recomendável que você defina alertas de integridade do recurso para notificá-lo quando o recurso do balanceador de carga estiver em um estado Degradado ou Indisponível .

Quando você cria alertas do Azure Resource Health para o Balanceador de carga, o Azure envia notificações de integridade do recurso para sua assinatura do Azure. Você pode criar e personalizar alertas com base:

  • Na assinatura afetada
  • Nos grupos de recursos afetados
  • No tipo de recurso afetado (Balanceador de carga)
  • No recurso específico (qualquer recurso do Balanceador de carga para o qual você optar por configurar um alerta)
  • No status do evento do recurso do Balanceador de carga afetado
  • No status atual do recurso do Balanceador de carga afetado
  • No status anterior do recurso do Balanceador de carga afetado
  • No tipo de motivo do recurso do Balanceador de carga afetado

Também é possível configurar para quem o alerta deve ser enviado:

  • Crie um novo grupo de ações (que pode ser usado posteriormente para futuros alertas)
  • Um grupo de ações existente

Para obter mais informações sobre como configurar esses alertas de integridade de recursos, consulte:

Próximas etapas