Esercizio - Usare gli avvisi delle metriche per segnalare problemi di prestazioni nell'ambiente di Azure

Completato

La società di spedizioni per cui si lavora vuole evitare futuri problemi con gli aggiornamenti delle applicazioni sulla piattaforma Azure. Per migliorare le funzionalità di creazione di avvisi in Azure, si è scelto di usare gli avvisi delle metriche di Azure.

In questo esercizio si creerà una macchina virtuale Linux in Azure. Questa macchina virtuale eseguirà un'app che richiede l'uso della CPU al 100%. Si creeranno regole di monitoraggio nel portale di Azure e nell'interfaccia della riga di comando di Azure per segnalare l'utilizzo elevato della CPU.

Creare la macchina virtuale

Questa macchina virtuale eseguirà una configurazione specifica che stressa la CPU e genera i dati di monitoraggio delle metriche necessari per attivare un avviso.

  1. Per iniziare creare lo script di configurazione. Per creare il file cloud-init.txt con la configurazione della macchina virtuale, eseguire il comando seguente in Azure Cloud Shell:

    cat <<EOF > cloud-init.txt
    #cloud-config
    package_upgrade: true
    packages:
    - stress
    runcmd:
    - sudo stress --cpu 1
    EOF
    
  2. Per configurare una macchina virtuale Ubuntu Linux, eseguire il comando az vm create seguente. Questo comando usa il file cloud-init.txt creato nel passaggio precedente per configurare la macchina virtuale dopo che è stata creata.

    az vm create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name vm1 \
        --location eastUS \
        --image Ubuntu2204 \
        --custom-data cloud-init.txt \
        --generate-ssh-keys
    

Creare l'avviso per una metrica usando il portale di Azure

Nota

Attendere che la macchina virtuale venga creata correttamente prima di procedere con l'esercizio. Il processo di creazione della macchina virtuale viene completato quando si ottiene l'output JSON completato nella finestra di Azure Cloud Shell.

Per creare l'avviso per una metrica, è possibile usare il portale di Azure o l'interfaccia della riga di comando. In questo esercizio verranno illustrate entrambe le procedure, a partire dal portale di Azure.

  1. Accedere al portale di Azure con lo stesso account usato per attivare la sandbox.

  2. Nel menu del portale di Azure cercare e selezionare Monitoraggio. Nella pagina Panoramica di Monitoraggio selezionare Avvisi.

  3. Aprire il menu + Crea e selezionare Regola di avviso

  4. Nel riquadro Seleziona una risorsa impostare l'ambito per la regola di avviso. È possibile filtrare in base alla sottoscrizione, al tipo di risorsa o alla posizione delle risorse.

  5. Nell'elenco a discesa Tipo di risorsa iniziare a digitare "macchine virtuali" e selezionare Macchine virtuali.

  6. Selezionare la casella vicino a vm1, quindi selezionare Applica nella parte inferiore del riquadro.

    Screenshot che mostra il riquadro 'Selezionare una risorsa' con la voce 'vm1' selezionata.

  7. Selezionare Avanti: Condizione nella parte inferiore della pagina.

  8. Nell'elenco a discesa Nome segnale selezionare Percentuale CPU.

  9. Nella sezione Logica avviso immettere (o confermare) i valori seguenti per ogni impostazione.

    Impostazione Valore
    Logica avvisi
    Threshold Statico
    Tipo di aggregazione Massimo
    Operatore Maggiore di
    Valore soglia 90
    Quando valutare
    Controllare ogni 1 minuto
    Periodo di ricerca posticipata 1 minuto

    Screenshot che mostra le impostazioni per la logica della condizione della metrica.

  10. Selezionare la scheda Dettagli nella parte superiore della pagina. Nella sezione Dettagli regola di avviso immettere i valori seguenti per ogni impostazione.

    Impostazione Valore
    Gravità 2 - Avviso
    Nome regola di avviso Cpu90PercentAlert
    Descrizione La macchina virtuale è in esecuzione con un utilizzo della CPU del 90% o superiore
  11. Espandere la sezione Opzioni avanzate e confermare i valori seguenti per ogni impostazione.

    Impostazione Valore
    Abilita alla creazione Sì (selezionato)
    Automatically resolve alerts (Risolvi automaticamente gli avvisi) Sì (selezionato)

    Screenshot che mostra le impostazioni completate per la sezione Dettagli regola di avviso.

  12. Selezionare Rivedi e crea per convalidare l'input e quindi selezionare Crea.

È stata creata una regola di avviso per la metrica che attiverà un avviso quando la percentuale di CPU nella macchina virtuale supera il 90%. La regola eseguirà un controllo ogni minuto ed esaminerà un minuto di dati. Possono essere necessari fino a 10 minuti prima che una regola di avviso delle metriche diventi attiva.

Creare l'avviso per una metrica tramite l'interfaccia della riga di comando

È possibile anche configurare gli avvisi delle metriche usando l'interfaccia della riga di comando. Questa procedura può essere più veloce rispetto all'uso del portale, soprattutto se si prevede di configurare più avvisi.

Verrà ora creato un nuovo avviso delle metriche simile a quello configurato nel portale di Azure.

  1. Eseguire il comando seguente in Cloud Shell per ottenere l'ID della risorsa della macchina virtuale creata in precedenza:

    VMID=$(az vm show \
            --resource-group "<rgn>[sandbox resource group name]</rgn>" \
            --name vm1 \
            --query id \
            --output tsv)
    
  2. Usare il comando seguente per creare un nuovo avviso per la metrica che verrà attivato quando l'utilizzo della CPU della macchina virtuale supera l'80%.

    az monitor metrics alert create \
        -n "Cpu80PercentAlert" \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --scopes $VMID \
        --condition "max percentage CPU > 80" \
        --description "Virtual machine is running at or greater than 80% CPU utilization" \
        --evaluation-frequency 1m \
        --window-size 1m \
        --severity 3
    

Visualizzare gli avvisi delle metriche in Monitoraggio di Azure

In questo esercizio si configurerà una macchina virtuale Ubuntu in modo da eseguire il test di stress della CPU. È stata anche creata una regola per la metrica che consente di rilevare quando la percentuale massima della CPU è superiore all'80% e al 90%.

Nota

Potrebbero essere necessari 10 minuti prima che gli avvisi vengano visualizzati nel portale di Azure.

  1. Tornare al portale di Azure.

  2. Nel menu del portale di Azure selezionare Monitoraggio e quindi selezionare Avvisi nel riquadro del menu a sinistra.

    Verrà visualizzato il riquadro di riepilogo degli avvisi, in cui è possibile visualizzare il numero totale di avvisi. Se non vengono visualizzati gli avvisi elencati, attendere alcuni minuti e selezionare Aggiorna.

    Screenshot che mostra il riquadro Riepilogo avvisi.

  3. Gli avvisi delle metriche sono stati configurati con gravità 2 e 3. Selezionare uno degli avvisi per visualizzare il livello di gravità.

  4. Selezionare uno degli avvisi per visualizzarne i dettagli.