Partilhar via


Monitorizar o Balanceador de Carga do Azure

Este artigo descreve:

  • Os tipos de dados de monitoramento que você pode coletar para este serviço.
  • Formas de analisar esses dados.

Nota

Se já está familiarizado com este serviço e/ou Azure Monitor e só quer saber como analisar dados de monitorização, consulte a secção Analyze perto do final deste artigo.

Quando tem aplicações críticas e processos de negócio que dependem de recursos do Azure, precisa de monitorizar e receber alertas para o seu sistema. O serviço Azure Monitor recolhe e agrega métricas e registos de todos os componentes do seu sistema. O Azure Monitor fornece-lhe uma visão da disponibilidade, desempenho e resiliência, e notifica-o de problemas. Pode usar o portal Azure, PowerShell, CLI do Azure, REST API ou bibliotecas de clientes para configurar e visualizar dados de monitorização.

Balanceador de Carga fornece outros dados de monitorização através de:

Perceções

Alguns serviços no Azure têm um painel de monitorização integrado no portal Azure que fornece um ponto de partida para monitorizar o seu serviço. Estes dashboards chamam-se insights, e pode encontrá-los no Insights Hub de Azure Monitor no portal Azure.

Os insights do Balanceador de Carga fornecem:

  • Vista de dependência funcional
  • Painel de métricas
  • Separador Descrição Geral
  • Aba de Disponibilidade de Frontend e Backend
  • Guia Taxa de transferência de dados
  • Distribuição de Fluxos
  • Monitores de Ligação
  • Definições de Métricas

Para mais informações sobre Balanceador de Carga insights, consulte Usando Insights para monitorizar e configurar o seu Balanceador de Carga do Azure.

Tipos de recursos

O Azure utiliza o conceito de tipos de recursos e IDs para identificar tudo numa subscrição. Os tipos de recursos também fazem parte dos IDs de recurso para cada recurso a correr no Azure. Por exemplo, um tipo de recurso para uma máquina virtual é Microsoft.Compute/virtualMachines. Para obter uma lista de serviços e seus tipos de recursos associados, consulte Provedores de recursos.

Azure Monitor organiza de forma semelhante os dados centrais de monitorização em métricas e registos baseados nos tipos de recursos, também chamados de namespaces. Diferentes métricas e logs estão disponíveis para diferentes tipos de recursos. Seu serviço pode estar associado a mais de um tipo de recurso.

Para mais informações sobre os tipos de recursos para Balanceador de Carga, consulte a referência de dados de monitorização do Balanceador de Carga do Azure.

Armazenamento de dados

Para o Monitor Azure:

  • Os dados de métricas são armazenados na base de dados de métricas do Azure Monitor.
  • Os dados de log são armazenados na loja de logs do Azure Monitor. Log Analytics é uma ferramenta no portal do Azure que pode consultar esta loja.
  • O registo de atividades do Azure é um armazenamento separado com a sua própria interface no portal Azure.

Pode, opcionalmente, encaminhar dados de métricas e registos de atividade para o armazenamento de registos do Azure Monitor. Pode então usar o Log Analytics para consultar os dados e correlacioná-los com outros dados de log.

Muitos serviços podem usar definições de diagnóstico para enviar dados de métricas e registos para outros locais de armazenamento fora do Azure Monitor. Exemplos incluem Armazenamento do Azure, sistemas parceiros alojados e sistemas parceiros não-Azure, utilizando Hubs de Eventos.

Para informações detalhadas sobre como Azure Monitor armazena dados, consulte Azure Monitor data platform.

Azure Monitor métricas da plataforma

O Azure Monitor fornece métricas de plataforma para a maioria dos serviços. Essas métricas são:

  • Definido individualmente para cada namespace.
  • Armazenado na base de dados de métricas de séries temporais do Azure Monitor.
  • Leve e capaz de suportar alertas quase em tempo real.
  • Usado para acompanhar o desempenho de um recurso ao longo do tempo.

Collection: Azure Monitor recolhe automaticamente métricas da plataforma. Não é necessária qualquer configuração.

Routing: Também podes encaminhar algumas métricas da plataforma para Azure Monitor Logs / Log Analytics para poderes consultá-las com outros dados de log. Verifique a definição de exportação DS para cada métrica para ver se consegue usar uma definição de diagnóstico para encaminhar a métrica para Azure Monitor Logs / Log Analytics.

Para uma lista de todas as métricas que é possível recolher para todos os recursos em Azure Monitor, veja Métricas suportadas em Azure Monitor.

Pode analisar métricas para Balanceador de Carga com métricas de outros serviços de Azure usando o explorador de métricas abrindo Métricas no menu Azure Monitor. Consulte Analise métricas com Azure Monitor explorador de métricas para detalhes sobre a utilização desta ferramenta.

Para uma lista de métricas disponíveis para Balanceador de Carga, veja Balanceador de Carga do Azure referência de dados de monitorização.

Azure Monitor registos de recursos

Os registos de recursos fornecem informações sobre operações realizadas por um recurso Azure. Os registos são gerados automaticamente, mas deve encaminhá-los para os registos do Azure Monitor para os guardar ou consultar. Os logs são organizados em categorias. Um determinado namespace pode ter várias categorias de log de recursos.

Coleção: Os logs de recursos não são recolhidos e armazenados até que crie uma configuração de diagnóstico e roteie os logs para um ou mais locais. Ao criar uma definição de diagnóstico, especifica as categorias de registos que devem ser recolhidas. Existem várias formas de criar e manter definições de diagnóstico, incluindo o portal do Azure, de forma programática e através do Azure Policy.

Routing: O padrão sugerido é encaminhar os registos de recursos para Azure Monitor Registos para poderes consultá-los com outros dados de registo. Outros locais, como Armazenamento do Azure, Hubs de Eventos do Azure e certos parceiros de monitorização da Microsoft, também estão disponíveis. Para mais informações, consulte Registos de recursos do Azure e Destinos dos registos de recursos.

Para informações detalhadas sobre a recolha, armazenamento e roteamento de registos de recursos, consulte em Azure Monitor.

Para uma lista de todas as categorias de registos de recursos disponíveis em Azure Monitor, veja Registos de recursos suportados em Azure Monitor.

Todos os registos de recursos no Azure Monitor têm os mesmos campos de cabeçalho, seguidos de campos específicos do serviço. O esquema comum está delineado no esquema Azure Monitor resource log.

Para as categorias de registos de recursos disponíveis, as tabelas associadas de Log Analytics e os esquemas de registo para Balanceador de Carga, consulte a referência de dados de monitorização do Balanceador de Carga do Azure .

Criando uma configuração de diagnóstico

Os registos de recursos não são recolhidos e armazenados até que crie uma definição de diagnóstico e os encaminhe para uma ou mais localizações. Pode criar uma definição de diagnóstico com o portal Azure, Azure PowerShell ou CLI do Azure.

Para usar o portal Azure e para orientações gerais, veja Criar definição de diagnóstico para recolher registos e métricas da plataforma em Azure. Para usar o PowerShell ou a CLI do Azure, consulte as secções seguintes.

Ao criar uma definição de diagnóstico, especifica as categorias de registos que devem ser recolhidas. A categoria para Balanceador de Carga é AllMetrics.

PowerShell

Iniciar sessão no Azure PowerShell:

Connect-AzAccount 

Espaço de trabalho de análise de log

Para enviar registos de recursos para um espaço de trabalho do Log Analytics, introduza estes comandos. Substitua os valores entre colchetes pelos seus valores:

## Place the load balancer in a variable. ##
$lbpara = @{
    ResourceGroupName = <your-resource-group-name>
    Name = <your-load-balancer-name>
}
$lb = Get-AzLoadBalancer @lbpara
    
## Place the workspace in a variable. ##
$wspara = @{
    ResourceGroupName = <your-resource-group-name>
    Name = <your-log-analytics-workspace-name>
}
$ws = Get-AzOperationalInsightsWorkspace @wspara
    
## Enable the diagnostic setting. ##
Set-AzDiagnosticSetting `
    -ResourceId $lb.id `
    -Name <your-diagnostic-setting-name> `
    -Enabled $true `
    -MetricCategory 'AllMetrics' `
    -WorkspaceId $ws.ResourceId

Conta de armazenamento

Para enviar logs de recursos para uma conta de armazenamento, insira estes comandos. Substitua os valores entre colchetes pelos seus valores:

## Place the load balancer in a variable. ##
$lbpara = @{
    ResourceGroupName = <your-resource-group-name>
    Name = <your-load-balancer-name>
}
$lb = Get-AzLoadBalancer @lbpara
    
## Place the storage account in a variable. ##
$storpara = @{
    ResourceGroupName = <your-resource-group-name>
    Name = <your-storage-account-name>
}
$storage = Get-AzStorageAccount @storpara
    
## Enable the diagnostic setting. ##
Set-AzDiagnosticSetting `
    -ResourceId $lb.id `
    -Name <your-diagnostic-setting-name> `
    -StorageAccountId $storage.id `
    -Enabled $true `
    -MetricCategory 'AllMetrics'

Hub de eventos

Para enviar logs de recursos para um namespace de hub de eventos, insira estes comandos. Substitua os valores entre colchetes pelos seus valores:

## Place the load balancer in a variable. ##
$lbpara = @{
    ResourceGroupName = <your-resource-group-name>
    Name = <your-load-balancer-name>
}
$lb = Get-AzLoadBalancer @lbpara
    
## Place the event hub in a variable. ##
$hubpara = @{
    ResourceGroupName = <your-resource-group-name>
    Name = <your-event-hub-name>
}
$eventhub = Get-AzEventHubNamespace @hubpara

## Place the event hub authorization rule in a variable. ##    
$hubrule = @{
    ResourceGroupName = 'myResourceGroup'
    Namespace = 'myeventhub8675'
}
$eventhubrule = Get-AzEventHubAuthorizationRule @hubrule

## Enable the diagnostic setting. ##
Set-AzDiagnosticSetting `
    -ResourceId $lb.Id `
    -Name 'myDiagSetting-event'`
    -EventHubName $eventhub.Name `
    -EventHubAuthorizationRuleId $eventhubrule.Id `
    -Enabled $true `
    -MetricCategory 'AllMetrics'

CLI do Azure

Iniciar sessão no CLI do Azure:

az login

Espaço de trabalho de análise de log

Para enviar registos de recursos para um espaço de trabalho do Log Analytics, introduza estes comandos. Substitua os valores entre colchetes pelos seus valores:

lbid=$(az network lb show \
    --name <your-load-balancer-name> \
    --resource-group <your-resource-group> \
    --query id \
    --output tsv)

wsid=$(az monitor log-analytics workspace show \
    --resource-group <your-resource-group> \
    --workspace-name <your-log-analytics-workspace-name> \
    --query id \
    --output tsv)
    
az monitor diagnostic-settings create \
    --name <your-diagnostic-setting-name> \
    --resource $lbid \
    --metrics '[{"category": "AllMetrics","enabled": true}]' \
    --workspace $wsid

Conta de armazenamento

Para enviar logs de recursos para uma conta de armazenamento, insira estes comandos. Substitua os valores entre colchetes pelos seus valores:

lbid=$(az network lb show \
    --name <your-load-balancer-name> \
    --resource-group <your-resource-group> \
    --query id \
    --output tsv)

storid=$(az storage account show \
        --name <your-storage-account-name> \
        --resource-group <your-resource-group> \
        --query id \
        --output tsv)
    
az monitor diagnostic-settings create \
    --name <your-diagnostic-setting-name> \
    --resource $lbid \
    --metrics '[{"category": "AllMetrics","enabled": true}]' \
    --storage-account $storid

Hub de eventos

Para enviar logs de recursos para um namespace de hub de eventos, insira estes comandos. Substitua os valores entre colchetes pelos seus valores:

lbid=$(az network lb show \
    --name <your-load-balancer-name> \
    --resource-group <your-resource-group> \
    --query id \
    --output tsv)

az monitor diagnostic-settings create \
    --name myDiagSetting-event \
    --resource $lbid \
    --metrics '[{"category": "AllMetrics","enabled": true}]' \
    --event-hub-rule /subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group>/providers/Microsoft.EventHub/namespaces/<your-event-hub-namespace>/authorizationrules/RootManageSharedAccessKey

Azure registo de atividades

O registo de atividades contém eventos ao nível de subscrição que acompanham as operações de cada recurso Azure vistas de fora desse recurso; por exemplo, criar um novo recurso ou iniciar uma máquina virtual.

Collection: Os eventos do registo de atividade são automaticamente gerados e recolhidos num armazenamento separado para serem visualizados no portal do Azure.

Routing: Pode enviar dados de registo de atividade para Azure Monitor Logs para os analisar juntamente com outros dados de log. Outros locais, como Armazenamento do Azure, Hubs de Eventos do Azure e certos parceiros de monitorização da Microsoft, também estão disponíveis. Para mais informações sobre como encaminhar o registo de atividade, consulte Visão geral do registo de atividade Azure.

Nota

Os logs de atividade do balanceador de carga não incluirão atualizações para pools de back-end baseados em NIC. Para monitorar e alertar sobre atualizações no pool de back-end do balanceador de carga para pools de back-end baseados em NIC, recomendamos coletar logs no nível de recursos da NIC ou em um nível de grupo de recursos.

Analise os dados de monitoramento

Existem muitas ferramentas para analisar dados de monitoramento.

Azure Monitor ferramentas

O Azure Monitor suporta as seguintes ferramentas básicas:

As ferramentas que permitem uma visualização mais complexa incluem:

  • Dashboards que permitem combinar diferentes tipos de dados num único painel no portal Azure.
  • Livros de Exercícios, relatórios personalizáveis que podes criar no portal Azure. Os livros de trabalho podem incluir texto, métricas e consultas de log.
  • Grafana, uma ferramenta de plataforma aberta que se destaca em dashboards operacionais. Pode usar o Grafana para criar dashboards que incluam dados de várias fontes além do Azure Monitor.
  • Power BI, um serviço de análise de negócios que fornece visualizações interativas em várias fontes de dados. Pode configurar o Power BI para importar automaticamente dados de registo do Azure Monitor para tirar partido destas visualizações.

Ferramentas de exportação do Azure Monitor

Pode obter dados do Azure Monitor para outras ferramentas usando os seguintes métodos:

Para começar com a API REST do Azure Monitor, consulte Guia de Introdução à API REST do Azure Monitor.

Análise do tráfego do Balanceador de Carga com registos de fluxo VNet

Registos de fluxo de rede virtual são uma funcionalidade do Observador de Rede do Azure que regista informações sobre o tráfego IP a passar por uma rede virtual. Os dados de fluxo dos registos de fluxo de rede virtual são enviados para o Armazenamento do Azure. A partir daí, você pode acessar os dados e exportá-los para qualquer ferramenta de visualização, solução de gerenciamento de eventos e informações de segurança (SIEM) ou sistema de deteção de intrusão (IDS).

Para obter orientações gerais sobre como criar e gerenciar logs de fluxo de rede virtual, consulte Gerenciar logs de fluxo de rede virtual. Depois de criares os teus registos de fluxo de rede virtual, podes aceder aos dados nos espaços de trabalho Log Analytics onde também podes consultar e filtrar os dados para identificar o tráfego que passa pela tua Balanceador de Carga. Consulte Esquema de análise de tráfego e agregação de dados para obter mais detalhes sobre o esquema de logs de fluxo de rede virtual.

Você também pode habilitar a Análise de Tráfego ao criar seus logs de fluxo de rede virtual, que fornece informações e visualizações sobre os dados do log de fluxo, como distribuição de tráfego, padrão de tráfego, portas de aplicativos utilizadas e principais comunicadores em sua rede virtual.

Consulta do Log Analytics para registos de fluxo VNet

Para visualizar registos de fluxos de entrada ligados a um Balanceador de Carga específico:

NTANetAnalytics
| where DestLoadBalancer == '<Subscription ID>/<Resource Group name>/<Load Balancer name>'
  1. Use a consulta acima no seu espaço de trabalho Log Analytics e atualize a cadeia com os valores válidos do seu Balanceador de Carga. Para saber mais sobre como usar Log Analytics, veja Log Analytics tutorial.

  2. Para visualizar o IP de origem da conexão, a coluna SrcIp ou a coluna SrcPublicIps será preenchida. Todo o tráfego originado de endereços IP públicos, não maliciosos ou propriedade de Azure serviço aparecerá em SrcPublicIps e todos os outros IPs de origem aparecerão em SrcIP. Se quiser mais detalhes sobre o tipo de tráfego, você pode usar a FlowType coluna para filtrar diferentes tipos de endereços IP envolvidos no fluxo. Consulte Esquema de análise de tráfego e notas de agregação de dados para FlowType obter definições de campo.

  3. Identifique as instâncias do pool de back-end que estão sendo usadas na conexão de entrada por meio de qualquer uma das seguintes colunas: DestIP, MacAddress, DestVM, TargetResourceID, DestNic.

  4. Através destes registos, pode recolher mais informações sobre as ligações que passam pelo seu Balanceador de Carga, como informações de porta, protocolo e tamanho do tráfego através do número de pacotes e bytes enviados do destino e da origem.

Consultas do Kusto

Pode analisar dados de monitorização na loja Azure Monitor Logs / Log Analytics usando a linguagem de consulta Kusto (KQL).

Importante

Quando seleciona Logs no menu do serviço no portal, Log Analytics abre-se com o âmbito da consulta definido para o serviço atual. Esse escopo significa que as consultas de log incluirão apenas dados desse tipo de recurso. Se quiser executar uma consulta que inclua dados de outros serviços Azure, selecione Logs no menu Azure Monitor. Consulte o âmbito da consulta Log e o intervalo temporal em Azure Monitor Log Analytics para mais detalhes.

Para uma lista de consultas comuns para qualquer serviço, consulte a interface de consultas Log Analytics.

Alertas

Os alertas do Azure Monitor notificam-no proativamente quando são encontradas condições específicas nos seus dados de monitorização. Os alertas permitem-lhe identificar e resolver problemas no seu sistema antes que os seus clientes os percebam. Para mais informações, consulte alertas Azure Monitor.

Existem muitas fontes de alertas comuns para recursos do Azure. Para exemplos de alertas comuns para recursos Azure, veja Exemplos de consultas de alerta de log. O site Azure Monitor Alertas de Referência (AMBA) fornece um método semi-automatizado para implementar alertas, dashboards e diretrizes métricas importantes da plataforma. O site aplica-se a um subconjunto em constante expansão de serviços Azure, incluindo todos os serviços que fazem parte da Azure Landing Zone (ALZ).

O esquema de alerta comum padroniza o consumo das notificações de alerta do Azure Monitor. Para obter mais informações, consulte Esquema de alerta comum.

Tipos de alertas

Pode alertar em qualquer fonte de dados de métrica ou log na plataforma de dados Azure Monitor. Há muitos tipos diferentes de alertas, dependendo dos serviços que você está monitorando e dos dados de monitoramento que você está coletando. Diferentes tipos de alertas têm vários benefícios e desvantagens. Para obter mais informações, consulte Escolher o tipo de alerta de monitoramento correto.

A lista seguinte descreve os tipos de alertas do Azure Monitor que pode criar:

  • Os alertas métricos avaliam as métricas de recursos em intervalos regulares. As métricas podem ser métricas de plataforma, métricas personalizadas, logs do Azure Monitor convertidos em métricas, ou métricas Application Insights. Os alertas métricos também podem aplicar várias condições e limites dinâmicos.
  • Alertas de Logs permitem aos utilizadores usar uma query do Log Analytics para avaliar registos de recursos numa frequência pré-definida.
  • Os alertas do log de atividades são acionados quando ocorre um novo evento do log de atividades que corresponde às condições definidas. Os alertas de Saúde dos Recursos e os alertas de Saúde do Serviço são alertas de registo de atividade que reportam a saúde dos seus recursos e serviços.

Alguns serviços de Azure também suportam alertas de deteção inteligente, alertas Prometheus ou regras de alertas sugeridas.

Para alguns serviços, pode monitorizar em larga escala aplicando a mesma regra de alerta métrica a múltiplos recursos do mesmo tipo que existem na mesma região do Azure. Notificações individuais são enviadas para cada recurso monitorado. Para serviços da Azure e nuvens suportadas, consulte Monitorizar múltiplos recursos com uma única regra de alerta.

Nota

Se estiver a criar ou executar uma aplicação que corre no seu serviço, Azure Monitor application insights pode oferecer mais tipos de alertas.

Regras de alerta do Balanceador de Carga

A tabela seguinte lista algumas regras de alerta sugeridas para o Balanceador de Carga. Estes alertas são apenas exemplos. Pode definir alertas para qualquer métrica, registo ou registo de atividade listado na referência de dados de monitorização do Balanceador de Carga do Azure.

Tipo de alerta Condição Descrição
Devido à indisponibilidade das VMs, a regra de balanceamento de carga está indisponível. Se a disponibilidade do caminho de dados dividida por endereço IP Frontend e Porta Frontend (todos os valores conhecidos e futuros) for igual a zero, ou num segundo alerta independente, se o status da sonda de verificação de integridade for igual a zero, então dispare alertas Esses alertas ajudam a determinar se a disponibilidade do caminho de dados para quaisquer regras de balanceamento de carga configuradas não está atendendo ao tráfego devido a todas as VMs no pool de back-end associado serem investigadas pela sonda de integridade configurada. Consulte Suporte e resolução de problemas para Balanceador de Carga do Azure para investigar a possível causa raiz.
Disponibilidade de VM significativamente baixa Se o status da sonda de integridade dividido por IP de back-end e porta de back-end for igual à porcentagem de sondagem definida pelo usuário do tamanho total do pool (ou seja, 25% são sondados), o alerta de incêndio Este alerta determina se há menos VMs do que o necessário disponíveis para servir o tráfego
Falha nas ligações de saída para o endpoint da Internet Se a Contagem de Conexão SNAT filtrada para o Estado da Conexão = Falhou for maior que zero, dispare um alerta. Esse alerta é acionado quando as portas SNAT estão esgotadas e as VMs não conseguem iniciar conexões de saída.
Aproximando-se da exaustão do SNAT Se as Portas SNAT usadas forem maior do que o número definido pelo utilizador, dispara um alerta. Este alerta requer uma configuração de saída estática onde o mesmo número de portas é sempre alocado. Em seguida, ele é acionado quando uma porcentagem das portas alocadas é usada.

Recomendações do assistente

Para alguns serviços, se ocorrerem condições críticas ou alterações iminentes durante as operações de recursos, será exibido um alerta na página Visão geral do serviço no portal. Você pode encontrar mais informações e correções recomendadas para o alerta em Recomendações do Advisor em Monitoramento no menu à esquerda. Durante as operações normais, nenhuma recomendação do consultor é exibida.

Para mais informações sobre Assistente do Azure, consulte Assistente do Azure visão geral.