Condividi tramite


Monitorare Azure Load Balancer

L'articolo illustra:

  • I tipi di dati di monitoraggio che è possibile raccogliere per questo servizio.
  • Modi per analizzare i dati.

Nota

Se si ha già familiarità con questo servizio e/o il Monitoraggio di Azure e si vuole solo sapere come analizzare i dati di monitoraggio, vedere la sezione Analizza alla fine di questo articolo.

Quando si hanno applicazioni e processi di business critici che si basano sulle risorse di Azure, è necessario monitorare e ricevere avvisi per il sistema. Il servizio Monitoraggio di Azure raccoglie e aggrega metriche e log da ogni componente del sistema. Il Monitoraggio di Azure offre una visione sulla disponibilità, le prestazioni e la resilienza e notifica i problemi. È possibile usare il portale di Azure, PowerShell, l'interfaccia della riga di comando di Azure, l'API REST o le librerie client per configurare e visualizzare i dati di monitoraggio.

Load Balancer fornisce altri dati di monitoraggio tramite:

Insights

Per alcuni servizi di Azure, nel portale di Azure è disponibile un dashboard di monitoraggio predefinito che fornisce un punto iniziale per il monitoraggio del servizio. Questi dashboard sono denominati informazioni dettagliate ed è possibile trovarli nell'hub di Insights del Monitoraggio di Azure nel portale di Azure.

Le informazioni dettagliate di Load Balancer forniscono:

  • Vista della dipendenza funzionale
  • Dashboard delle metriche
  • Scheda Panoramica
  • Scheda della disponibilità back-end e front-end
  • Scheda della velocità effettiva dei dati
  • Distribuzione del flusso
  • Monitoraggi della connessione
  • Definizioni delle metriche

Per maggiori dettagli sulle informazioni dettagliate di Load Balancer, vedere Uso di informazioni dettagliate per monitorare e configurare Azure Load Balancer.

Tipi di risorsa

Azure usa il concetto di tipi di risorse e ID per identificare tutti gli elementi in una sottoscrizione. I tipi di risorse fanno anche parte degli ID della risorsa per ogni risorsa in esecuzione in Azure. Ad esempio, un tipo di risorsa per una macchina virtuale è Microsoft.Compute/virtualMachines. Per un elenco dei servizi e dei relativi tipi di risorse associati, vedere Provider di risorse.

Il Monitoraggio di Azure organizza in modo analogo i dati di monitoraggio di base in metriche e log in base ai tipi di risorse, detti anche spazi dei nomi. Sono disponibili metriche e log diversi per diversi tipi di risorse. Il servizio potrebbe essere associato a più tipi di risorse.

Per altre informazioni sui tipi di risorse per Load Balancer, vedere Informazioni di riferimento sui dati di monitoraggio di Azure Load Balancer.

Archiviazione di dati

Per il Monitoraggio di Azure:

  • I dati delle metriche vengono archiviati dal database di metriche del Monitoraggio di Azure.
  • I dati di log vengono archiviati nell'archivio dei log del Monitoraggio di Azure. Log Analytics è uno strumento nel portale di Azure in grado di eseguire query su questo archivio.
  • Il log attività di Azure è un archivio separato con la propria interfaccia nel portale di Azure.

Facoltativamente, è possibile instradare i dati delle metriche e dei log attività all'archivio dei log di Monitoraggio di Azure. È quindi possibile usare Analisi dei log per eseguire query sui dati e correlarli con altri dati di log.

Molti servizi possono usare le impostazioni di diagnostica per inviare i dati delle metriche e dei log ad altre posizioni di archiviazione all'esterno di Monitoraggio di Azure. Gli esempi includono Archiviazione di Azure, sistemi partner ospitati e sistemi partner non Azure usando Hub eventi.

Per informazioni dettagliate su come il Monitoraggio di Azure archivia i dati, vedere la piattaforma dati del Monitoraggio di Azure.

Metriche della piattaforma del Monitoraggio di Azure

Il Monitoraggio di Azure fornisce metriche della piattaforma per la maggior parte dei servizi. Le metriche sono:

  • Definite singolarmente per ogni spazio dei nomi.
  • Archiviate in un database delle metriche di serie temporali del Monitoraggio di Azure.
  • Leggere e in grado di creare avvisi in tempo quasi reale.
  • Usate per tenere traccia delle prestazioni di una risorsa nel tempo.

Raccolta: il Monitoraggio di Azure raccoglie automaticamente le metriche della piattaforma. Non è richiesta alcuna configurazione.

Routing: è anche possibile instradare alcune metriche della piattaforma ai log di Monitoraggio di Azure/Log Analytics per poterle eseguire query con altri dati di log. Controllare l'impostazione di esportazione DS per ogni metrica per verificare se è possibile usare un'impostazione di diagnostica per instradare la metrica ai log di Monitoraggio di Azure/Log Analytics.

Per un elenco di tutte le metriche che è possibile raccogliere per tutte le risorse nel Monitoraggio di Azure, vedere Metriche supportate nel Monitoraggio di Azure.

È possibile analizzare le metriche per Load Balancer con le metriche di altri servizi di Azure usando Esplora metriche aprendo Metriche dal menu di Monitoraggio di Azure. Per informazioni dettagliate sull'uso di questo strumento, vedere Analizzare le metriche con Esplora metriche di Monitoraggio di Azure.

Per un elenco delle metriche disponibili per Load Balancer, vedere Informazioni di riferimento sul monitoraggio di Azure Load Balancer.

Log delle risorse di Monitoraggio di Azure

I log delle risorse forniscono informazioni dettagliate sulle operazioni eseguite da una risorsa di Azure. I log vengono generati automaticamente, ma è necessario indirizzarli verso i log del Monitoraggio di Azure per salvarli o interrogarli. I log sono organizzati in categorie. Uno specifico spazio dei nomi potrebbe avere più categorie di log delle risorse.

Raccolta: i log delle risorse non vengono raccolti e archiviati fino a quando non si crea un'impostazione di diagnostica e li si instrada verso una o più posizioni. Quando si crea un'impostazione di diagnostica, si specificano quali categorie di log raccogliere. Esistono diversi modi per creare e gestire le impostazioni di diagnostica, tra cui il portale di Azure, il livello programmatico e anche i Criteri di Azure.

Pianificazione percorso: l'impostazione predefinita consigliata consiste nell'instradare i log delle risorse verso i log del Monitoraggio di Azure in modo da poterli interrogare con altri dati di log. Sono disponibili anche altre posizioni, ad esempio Archiviazione di Azure, Hub eventi di Azure e alcuni partner di monitoraggio Microsoft. Per altre informazioni, vedere Log delle risorse di Azure e Destinazioni del log delle risorse.

Per informazioni dettagliate sulla raccolta, l'archiviazione e la pianificazione percorso dei log delle risorse, vedere Impostazioni di diagnostica nel Monitoraggio di Azure.

Per un elenco di tutte le categorie di log delle risorse disponibili nel Monitoraggio di Azure, vedere Log delle risorse supportati nel Monitoraggio di Azure.

Tutti i log delle risorse nel Monitoraggio di Azure hanno gli stessi campi d'intestazione, seguiti da campi specifici del servizio. Lo schema comune è descritto in Schema dei log delle risorse di Monitoraggio di Azure.

Per le categorie di log delle risorse disponibili, le tabelle di Log Analytics associate e gli schemi dei log per Load Balancer, vedere Informazioni di riferimento sui dati di monitoraggio di Azure Load Balancer.

Creazione di un'impostazione di diagnostica

I log delle risorse non vengono raccolti e archiviati fino a quando non si crea un'impostazione di diagnostica e li si instrada a una o più posizioni. È possibile creare un'impostazione di diagnostica con il portale di Azure, Azure PowerShell o l'interfaccia della riga di comando di Azure.

Per usare il portale di Azure e per il materiale sussidiario generale, vedere Creare un'impostazione di diagnostica per raccogliere i log e le metriche della piattaforma in Azure. Per usare PowerShell o l'interfaccia della riga di comando di Azure, vedere le sezioni seguenti.

Quando si crea un'impostazione di diagnostica, si specificano quali categorie di log raccogliere. La categoria per Load Balancer è AllMetrics.

PowerShell

Accedere ad Azure PowerShell:

Connect-AzAccount 

Area di lavoro Log Analytics

Per inviare i log delle risorse a un'area di lavoro Log Analytics, immettere questi comandi. Sostituire i valori tra parentesi quadre con i valori:

## 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

Account di archiviazione

Per inviare i log delle risorse a un account di archiviazione, immettere questi comandi. Sostituire i valori tra parentesi quadre con i valori:

## 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 eventi

Per inviare i log delle risorse a uno spazio dei nomi dell'hub eventi, immettere questi comandi. Sostituire i valori tra parentesi quadre con i valori:

## 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'

Interfaccia della riga di comando di Azure

Accedere all'interfaccia della riga di comando di Azure:

az login

Area di lavoro Log Analytics

Per inviare i log delle risorse a un'area di lavoro Log Analytics, immettere questi comandi. Sostituire i valori tra parentesi quadre con i valori:

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

Account di archiviazione

Per inviare i log delle risorse a un account di archiviazione, immettere questi comandi. Sostituire i valori tra parentesi quadre con i valori:

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 eventi

Per inviare i log delle risorse a uno spazio dei nomi dell'hub eventi, immettere questi comandi. Sostituire i valori tra parentesi quadre con i valori:

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

Finestra Log attività di Azure

Il log attività contiene eventi a livello di sottoscrizione che tengono traccia delle operazioni per ogni risorsa di Azure vista dall'esterno, ad esempio la creazione di una nuova risorsa o l'avvio di una macchina virtuale.

Raccolta: gli eventi del log attività vengono generati e raccolti automaticamente in un archivio separato per la visualizzazione nel portale di Azure.

Pianificazione percorso: è possibile inviare i dati del log attività ai log di Monitoraggio di Azure in modo da poterli analizzare insieme ad altri dati di log. Sono disponibili anche altre posizioni, ad esempio Archiviazione di Azure, Hub eventi di Azure e alcuni partner di monitoraggio Microsoft. Per altre informazioni su come instradare i log attività, vedere Informazioni generali sul log attività di Azure.

Analizzare i dati di monitoraggio

Sono disponibili molti strumenti per l'analisi dei dati di monitoraggio.

Strumenti di Monitoraggio di Azure

Il Monitoraggio di Azure supporta gli strumenti di base seguenti:

Gli strumenti che consentono una visualizzazione più complessa includono:

  • I dashboard che consentono di combinare tipi di dati diversi in un singolo riquadro nel portale di Azure.
  • Cartelle di lavoro, report personalizzabili che è possibile creare nel portale di Azure. Le cartelle di lavoro possono includere testo, metriche e query di log.
  • Grafana è una piattaforma aperta, ideale per i dashboard operativi. È possibile usare Grafana per creare dashboard che includano dati da più origini diverse dal Monitoraggio di Azure.
  • Power BI, un servizio di analisi aziendale che fornisce visualizzazioni interattive per un'ampia varietà di origini dati. È possibile configurare per Power BI per importare automaticamente i dati di log da Monitoraggio di Azure per sfruttare i vantaggi di queste visualizzazioni.

Strumenti di esportazione del Monitoraggio di Azure

È possibile ottenere dati dal Monitoraggio di Azure in altri strumenti usando i metodi seguenti:

Per iniziare a usare l'API REST per il Monitoraggio di Azure, vedere Procedura dettagliata per l'API REST del Monitoraggio di Azure.

Analisi del traffico di Load Balancer con i log dei flussi di rete virtuale

I log dei flussi di rete virtuale sono una funzionalità di Azure Network Watcher che consente di registrare informazioni sul traffico IP che passa attraverso una rete virtuale. I dati del flusso dai log dei flussi di rete virtuale vengono inviati ad Archiviazione di Azure. Da qui è possibile accedere ai dati ed esportarli in qualsiasi strumento di visualizzazione, nella soluzione SIEM (Security Information and Event Management, informazioni di sicurezza e gestione degli eventi) o nel sistema di rilevamento delle intrusioni (IDS).

Per linee guida generali per la creazione e la gestione di log dei flussi di rete virtuale, vedere Gestire log dei flussi di rete virtuale. Dopo aver creato i log del flusso di rete virtuale, è possibile accedere ai dati nelle aree di lavoro Log Analytics in cui è anche possibile eseguire query e filtrare i dati per identificare il traffico che scorre attraverso Load Balancer. Per altri dettagli sullo schema dei log dei flussi di rete virtuale, vedere Schema di analisi del traffico e aggregazione dei dati.

È anche possibile abilitare Analisi del traffico quando si creano i log del flusso di rete virtuale che fornisce informazioni dettagliate e visualizzazioni sui dati del log del flusso, ad esempio la distribuzione del traffico, il modello di traffico, le porte dell'applicazione usate e i principali talker nella rete virtuale.

Query di Log Analytics per i log dei flussi della rete virtuale

Per visualizzare i log per i flussi in ingresso connessi a un Load Balancer specifico:

NTANetAnalytics
| where DestLoadBalancer == '<Subscription ID>/<Resource Group name>/<Load Balancer name>'
  1. Usare la query precedente nell'area di lavoro Log Analytics e aggiornare la stringa con i valori validi per Load Balancer. Per altre informazioni sull'uso di Log Analytics, vedere Esercitazione su Log Analytics.

  2. Per visualizzare l'indirizzo IP di origine della connessione, verrà popolata la colonna SrcIp o SrcPublicIps. Tutto il traffico proveniente da indirizzi IP pubblici non dannosi o di proprietà del servizio di Azure verrà visualizzato in SrcPublicIps e tutti gli altri indirizzi IP di origine verranno visualizzati in SrcIP. Per altri dettagli sul tipo di traffico, è possibile usare la colonna FlowType per filtrare i diversi tipi di indirizzi IP coinvolti nel flusso. Per le definizioni dei campi FlowType, vedere Note sullo schema di analisi del traffico e le aggregazioni dei dati.

  3. Identificare le istanze del pool back-end usate nella connessione in ingresso tramite una delle colonne seguenti: DestIP, MacAddress DestVM, TargetResourceID DestNic.

  4. Tramite questi log, è possibile raccogliere altre informazioni sulle connessioni che passano attraverso il Load Balancer, ad esempio informazioni sulle porte, il protocollo e le dimensioni del traffico attraverso il numero di pacchetti e byte inviati dalla destinazione e dall'origine.

Query Kusto

È possibile analizzare i dati di monitoraggio nell'archivio dei Log/Log Analytics del Monitoraggio di Azure usando il linguaggio di query Kusto (KQL).

Importante

Quando si seleziona Log dal menu del servizio nel portale, Analisi dei log si apre con l'ambito della query impostato sul servizio corrente. Questo ambito fa sì che le query di log includano solo i dati di tale tipo di risorsa. Se si vuole eseguire una query che includa dati di altri servizi di Azure, selezionare Log nel menu di Monitoraggio di Azure. Per i dettagli, vedere Ambito e intervallo di tempo delle query su log in Log Analytics di Monitoraggio di Azure.

Per un elenco delle query comuni per qualsiasi servizio, vedere l'interfaccia query di Analisi dei log.

Avvisi

Gli avvisi di Monitoraggio di Azure notificano in modo proattivo quando vengono riscontrate condizioni specifiche nei dati di monitoraggio. Consentono di identificare e risolvere i problemi del sistema prima che gli utenti li notino. Per altre informazioni, vedere Avvisi di Monitoraggio di Azure.

Esistono molte origini di avvisi comuni per le risorse di Azure. Per esempi di avvisi comuni per le risorse di Azure, vedere Query di avviso di log di esempio. Il sito Avvisi di base di Monitoraggio di Azure (AMBA) offre un metodo semi-automatizzato per implementare importanti avvisi, dashboard e linee guida per le metriche della piattaforma. Il sito si applica a un sottoinsieme di servizi di Azure in continua espansione, inclusi tutti i servizi che fanno parte della zona di destinazione di Azure.

Lo schema di avviso comune standardizza l'utilizzo delle notifiche di avviso di Monitoraggio di Azure. Per altre informazioni, vedere lo Schema degli avvisi comuni.

Tipi di avviso:

È possibile creare avvisi su qualsiasi metrica o fonte di dati di log nella piattaforma di dati di Monitoraggio di Azure. Esistono molti tipi diversi di avvisi a seconda dei servizi monitorati e dei dati di monitoraggio raccolti. Ogni tipo di avviso presenta vantaggi e svantaggi. Per altre informazioni, vedere Scegliere il tipo di avviso di monitoraggio corretto.

L'elenco seguente descrive i tipi di avvisi del Monitoraggio di Azure che è possibile creare:

  • Gli avvisi delle metriche valutano le metriche delle risorse a intervalli regolari. Le metriche possono essere metriche della piattaforma, metriche personalizzate, log di Monitoraggio di Azure convertiti in metriche o metriche di Application Insights. Gli avvisi delle metriche possono anche applicare più condizioni e soglie dinamiche.
  • Gli avvisi relativi ai log consentono agli utenti di utilizzare una query di Log Analytics per valutare i log delle risorse con una frequenza predefinita.
  • Gli avvisi dei log attività vengono attivati quando si verifica un nuovo evento del log attività che soddisfa le condizioni definite. Gli avvisi sull'integrità delle risorse e gli avvisi sull'integrità dei servizi sono avvisi di log delle attività che segnalano l'integrità dei servizi e delle risorse.

Alcuni servizi di Azure supportano anche avvisi di rilevamento intelligente, avvisi Prometheus o regole di avviso consigliate.

Per alcuni servizi, è possibile effettuare un monitoraggio su larga scala applicando la stessa regola di avviso delle metriche a più risorse dello stesso tipo presenti nella stessa area di Azure. Vengono inviate notifiche singole per ogni risorsa monitorata. Per i servizi e i cloud di Azure supportati, vedere Monitorare più risorse con una regola di avviso.

Nota

Se si crea o si esegue un'applicazione che viene eseguita nel servizio, Application Insights del Monitoraggio di Azure potrebbe offrire più tipi di avvisi.

Regole di avviso di Load Balancer

La tabella seguente elenca alcune regole di avviso suggerite per Load Balancer. Questi avvisi sono solo esempi. È possibile impostare avvisi per qualsiasi metrica, voce di log o voce di log attività elencata in Informazioni di riferimento sui dati di monitoraggio di Azure Load Balancer.

Tipo di avviso Condizione Descrizione
Regola di Load Balancer non disponibile a causa di macchine virtuali non disponibili Se la disponibilità del percorso dati divisa per indirizzo IP front-end e porta front-end (tutti i valori noti e futuri) è pari a zero o in un avviso secondario, se lo stato del probe di integrità è uguale a zero, attivare gli avvisi Questi avvisi consentono di determinare se la disponibilità del percorso dati per le regole di bilanciamento del carico configurate non supporta il traffico a causa di tutte le VM nel pool back-end associato sottoposto a probe dal probe di integrità configurato. Consultare la guida alla risoluzione dei problemi di bilanciamento del carico per analizzare la potenziale causa radice.
Disponibilità delle VM significativamente bassa Se lo stato del probe di integrità diviso per IP back-end e porta back-end corrisponde alla percentuale di elementi sottoposti a probe rispetto alle dimensioni totali del pool (ovvero il 25% viene sottoposto a probe) definita dall'utente, viene generato un avviso Questo avviso determina se sono disponibili meno VM di quelle necessarie per supportare il traffico
Le connessioni in uscita all'endpoint Internet hanno esito negativo Se il numero di connessioni SNAT filtrato in Stato connessione = Non riuscito è maggiore di zero, viene generato un avviso Questo avviso viene generato quando le porte SNAT vengono esaurite e le macchine virtuali non riescono ad avviare connessioni in uscita.
Avvicinamento all'esaurimento SNAT Se le porte SNAT usate sono maggiori del numero definito dall'utente, viene generato un avviso Questo avviso richiede una configurazione statica in uscita in cui viene sempre allocato lo stesso numero di porte. L'avviso viene quindi generato quando è usata una percentuale delle porte allocate.

Elementi consigliati di Advisor

Per alcuni servizi, se si verificano condizioni critiche o modifiche imminenti durante le operazioni sulle risorse, viene visualizzato un avviso nella pagina Panoramica del servizio nel portale. È possibile trovare altre informazioni e correzioni consigliate per l'avviso in Consigli di Advisor in Monitoraggio nel menu a sinistra. Durante il normale funzionamento non viene visualizzato nessun consiglio di Advisor.

Per altre informazioni su Azure Advisor, vedere Informazioni generali su Azure Advisor.