Ridimensionare automaticamente un set di scalabilità di macchine virtuali nel portale di Azure

Quando si crea un set di scalabilità, definire il numero di istanze di macchine virtuali da eseguire. È possibile aumentare o ridurre automaticamente il numero di istanze di macchine virtuali in base alle richieste dell'applicazione. La scalabilità automatica consente di adattarsi alle esigenze dei clienti o di rispondere alle prestazioni dell'applicazione durante il ciclo di vita dell'app.

Questo articolo illustra come creare regole di scalabilità automatica nel portale di Azure per monitorare le prestazioni delle istanze di macchine virtuali nel set di scalabilità. Queste regole di scalabilità automatica aumentano o diminuiscono il numero di istanze di macchine virtuali in risposta a queste metriche delle prestazioni. È anche possibile completare questa procedura con Azure PowerShell o l'interfaccia della riga di comando di Azure CLI.

Prerequisiti

Per creare regole di scalabilità automatica, è necessario un set di scalabilità di macchine virtuali esistente. È possibile creare un set di scalabilità con il portale di Azure, Azure PowerShell o l'interfaccia della riga di comando di Azure CLI.

Creare una regola per l'aumento automatico del numero di istanze

Se aumenta la richiesta da parte dell'applicazione, aumenta il carico sulle istanze di macchine virtuali nel set di scalabilità. Se il carico aumenta in modo coerente e non momentaneamente, è possibile configurare regole di scalabilità automatica per aumentare il numero di istanze di macchine virtuali nel set di scalabilità. Quando sono state create le istanze di macchine virtuali e sono state distribuite le applicazioni, il set di scalabilità inizia a distribuire loro il traffico tramite il bilanciamento del carico. È possibile controllare le metriche da monitorare, ad esempio per la CPU o il disco, il tempo per cui il carico dell'applicazione deve soddisfare una determinata soglia e il numero di istanze di macchine virtuali da aggiungere al set di scalabilità.

  1. Aprire il portale di Azure e selezionare Gruppi di risorse nel menu sul lato sinistro del dashboard.

  2. Selezionare il gruppo di risorse che contiene il set di scalabilità, quindi scegliere il set di scalabilità nell'elenco di risorse.

  3. Scegliere Proporzioni dal menu nella parte sinistra della finestra del set di scalabilità. Selezionare il pulsante su Scalabilità automatica personalizzata:

    Abilitare la scalabilità automatica nel portale di Azure

  4. Selezionare l'opzione Aggiungi una regola. Aggiungere una regola di scalabilità automatica nel portale di Azure

  5. È possibile creare una regola che aumenti il numero di istanze di macchine virtuali in un set di scalabilità quando il carico medio della CPU è superiore al 70% per un periodo di 10 minuti. Quando la regola viene attivata, il numero di istanze di macchine virtuali viene aumentato del 20%. Nei set di scalabilità con un numero ridotto di istanze di macchine virtuali è possibile impostare Operazione su Aumenta numero di e quindi specificare 1 o 2 per Conteggio istanze. Nei set di scalabilità con un numero elevato di istanze di macchine virtuali, potrebbe essere più appropriato un aumento del 10% o del 20% delle istanze di macchine virtuali.

    Specificare le seguenti impostazioni per la regola:

    Parametro Spiegazione valore
    Aggregazione temporale Definisce la modalità di aggregazione delle metriche raccolte per l'analisi. Media
    Nome della metrica La metrica delle prestazioni da monitorare e a cui applicare azioni dei set di scalabilità. CPU percentuale
    Statistica intervallo di tempo Definisce la modalità di aggregazione delle metriche raccolte in ogni intervallo di tempo per l'analisi. Media
    Operatore Operatore usato per confrontare i dati della metrica rispetto alla soglia. Maggiore di
    Soglia La percentuale che determina l'attivazione di un'azione da parte della regola di scalabilità automatica. 70
    Duration Il tempo monitorato prima che vengano confrontati i valori delle metriche e delle soglie. Non include il periodo di raffreddamento. 10 minuti
    Operazione Definisce se il set di scalabilità deve aumentare o ridurre quando la regola si applica e in base all'incremento. Aumenta percentuale di
    Numero di istanze La percentuale di istanze di macchine virtuali deve essere modificata quando viene attivata la regola. 20
    Disattiva regole dopo (minuti) Il tempo di attesa prima che la regola venga applicata nuovamente in modo che le azioni di scalabilità automatica diventino effettive. 5 minuti

    Gli esempi seguenti mostrano una regola creata nel portale di Azure che corrisponde a queste impostazioni:

    Creare una regola di scalabilità automatica per aumentare il numero di istanze di macchine virtuali

    Nota

    Le attività in esecuzione all'interno dell'istanza arresteranno bruscamente e l'istanza verrà ridimensionata una volta completato il periodo di raffreddamento.

  6. Per creare la regola, selezionare Aggiungi

Creare una regola per la riduzione automatica

Nelle ore serali o nel fine settimana è possibile che la richiesta delle applicazioni si riduca. Se il carico diminuisce in modo coerente nel tempo, è possibile configurare regole di scalabilità automatica per diminuire il numero di istanze di macchine virtuali nel set di scalabilità. Questa azione riduce i costi di esecuzione del set di scalabilità poiché si esegue solo il numero di istanze necessarie per soddisfare la richiesta corrente.

  1. Scegliere di nuovo Aggiungi una regola.

  2. Creare una regola che diminuisca il numero di istanze di macchine virtuali in un set di scalabilità quando il carico medio della CPU scende sotto il 30% per un periodo di 10 minuti. Quando la regola viene attivata, il numero di istanze di macchine virtuali viene diminuito del 20%.

    Usare lo stesso approccio usato con la regola precedente. Modificare le seguenti impostazioni per la regola:

    Parametro Spiegazione valore
    Operatore Operatore usato per confrontare i dati della metrica rispetto alla soglia. Minore di
    Soglia La percentuale che determina l'attivazione di un'azione da parte della regola di scalabilità automatica. 30
    Operazione Definisce se il set di scalabilità deve aumentare o diminuire quando si applica la regola e quale incremento usare Riduci percentuale di
    Numero di istanze La percentuale di istanze di macchine virtuali deve essere modificata quando viene attivata la regola. 20
  3. Per creare la regola, selezionare Aggiungi

Definire i limiti di scalabilità automatica delle istanze

Il profilo di scalabilità automatica deve definire un numero minimo e massimo e un numero predefinito di istanze di macchine virtuali. Quando vengono applicate le regole di scalabilità automatica, questi limiti delle istanze assicurano che l'aumento non superi il numero massimo di istanze o che la riduzione non superi il valore minimo di istanze.

  1. Impostare i limiti delle istanze seguenti:

    Minima Massimo Predefinito
    2 10 2
  2. Per applicare le regole di scalabilità automatica e i limiti delle istanze, selezionare Salva.

Monitorare il numero di istanze in un set di scalabilità

Per esaminare il numero e lo stato delle istanze di macchine virtuali, selezionare Istanze dal menu nella parte sinistra della finestra del set di scalabilità. Lo stato indica se l'istanza della macchina virtuale è in fase di creazione poiché il set di scalabilità esegue automaticamente l'aumento oppure di eliminazione poiché viene eseguita automaticamente la riduzione.

Visualizzare un elenco di istanze di macchine virtuali del set di scalabilità

Ridimensionare automaticamente in base a una pianificazione

Negli esempi precedenti viene aumentato o ridotto automaticamente un set di scalabilità con le metriche host di base, ad esempio l'utilizzo della CPU. È possibile anche creare regole di scalabilità automatica in base a pianificazioni. Queste regole basate su pianificazione consentono di aumentare il numero di istanze di macchine virtuali in anticipo rispetto all'aumento previsto della richiesta delle applicazioni, ad esempio nelle ore di lavoro intenso, e quindi di ridurre automaticamente il numero di istanze quando si prevede una riduzione della richiesta, ad esempio nel fine settimana.

  1. Scegliere Proporzioni dal menu nella parte sinistra della finestra del set di scalabilità.

  2. Scegliere Add a scale condition (Aggiungi una condizione di scalabilità). Selezionare l'icona della matita accanto al nome della regola e specificare un nome, ad esempio Aumento del numero di istanze per ogni giorno lavorativo.

    Rinominare la regola predefinita di scalabilità automatica

  3. Selezionare il pulsante di opzione Ridimensiona in base a un numero di istanze specifico.

  4. Per aumentare il numero di istanze, immettere 10 come numero di istanze.

  5. Selezionare Ripeti in giorni specifici per il tipo Pianificazione.

  6. Selezionare tutti i giorni lavorativi, dal lunedì al venerdì.

  7. Scegliere il fuso orario appropriato, quindi specificare come ora di inizio il valore 09:00.

  8. Scegliere di nuovo Add a scale condition (Aggiungi una condizione di scalabilità). Ripetere il processo per creare una pianificazione denominata Riduzione nelle ore serali che ridimensiona il numero di istanze a 3, viene ripetuta ogni giorno feriale e inizia alle 18:00.

  9. Per applicare regole di scalabilità automatica basate su pianificazione, selezionare Salva.

    Creare regole di scalabilità automatica basate su una pianificazione

Per visualizzare la modalità in cui vengono applicate le regole di scalabilità automatica, selezionare Cronologia di esecuzione nella parte superiore della finestra Proporzioni. Il grafo e gli eventi elencati mostrano quando si attivano le regole di scalabilità automatica e il numero di istanze di macchine virtuali nel set di scalabilità aumenta o diminuisce.

Passaggi successivi

In questo articolo si è appreso come usare le regole di scalabilità automatica per scalare orizzontalmente e aumentare o diminuire il numero di istanze di macchine virtuali nel set di scalabilità. Per informazioni su come gestire le istanze di vm, vedere Gestire set di scalabilità di macchine virtuali con Azure PowerShell.

Per informazioni su come generare avvisi all'attivazione delle regole di scalabilità automatica, vedere Usare le azioni di scalabilità automatica per inviare notifiche di avviso di webhook e posta elettronica in Monitoraggio di Azure. Vedere anche Use audit logs to send email and webhook alert notifications in Azure Monitor (Usare i log di controllo per inviare notifiche di avviso tramite e-mail e webhook in Monitoraggio di Azure).