Modalità di orchestrazione per i set di scalabilità di macchine virtuali in Azure

I set di scalabilità di macchine virtuali offrono un raggruppamento logico di macchine virtuali gestite dalla piattaforma. Con i set di scalabilità, si crea un modello di configurazione della macchina virtuale, si aggiungono o si rimuovono automaticamente istanze aggiuntive in base al carico della CPU o della memoria e si esegue automaticamente l'aggiornamento alla versione più recente del sistema operativo. Tradizionalmente, i set di scalabilità consentono di creare macchine virtuali usando un modello di configurazione della macchina virtuale fornito al momento della creazione del set di scalabilità e il set di scalabilità può gestire solo le macchine virtuali create in modo implicito in base al modello di configurazione.

I modelli di orchestrazione dei set di scalabilità ti offrono un maggiore controllo sulla modalità di gestione delle istanze di macchina virtuale da parte del set di scalabilità.

Importante

La modalità di orchestrazione viene definita quando si crea il set di scalabilità e non può essere modificata o aggiornata in un secondo momento.

Set di scalabilità con orchestrazione uniforme

Ottimizzata per carichi di lavoro senza stato su larga scala con istanze identiche.

I set di scalabilità di macchine virtuali con orchestrazione uniforme usano un profilo di macchina virtuale o un modello per aumentare la capacità desiderata. Sebbene sia possibile gestire o personalizzare singole istanze di macchina virtuale, Uniform usa istanze di macchina virtuale identiche. Le singole istanze di macchine virtuali uniformi vengono esposte tramite i comandi dell'API di macchine virtuali del set di scalabilità di macchine virtuali. Le singole istanze non sono compatibili con i comandi standard dell'API della macchina virtuale IaaS di Azure, le funzionalità di gestione di Azure, ad esempio l'assegnazione di tag alle risorse di Azure Resource Manager, le autorizzazioni di controllo degli accessi in base al ruolo, Backup di Azure o Azure Site Recovery. L'orchestrazione uniforme offre garanzie di disponibilità elevata del dominio di errore quando configurate con meno di 100 istanze. L'orchestrazione uniforme è disponibile a livello generale e supporta una gamma completa di gestione e orchestrazione dei set di scalabilità, tra cui la scalabilità automatica basata sulle metriche, la protezione delle istanze e gli aggiornamenti automatici del sistema operativo.

Set di scalabilità con orchestrazione flessibile

Offre disponibilità elevata su larga scala con più tipi o tipi identici di macchine virtuali.

Con l'orchestrazione flessibile, Azure offre un'esperienza unificata nell'ecosistema di macchine virtuali di Azure. L'orchestrazione flessibile offre garanzie di disponibilità elevata (fino a 1000 macchine virtuali) distribuendo le macchine virtuali tra domini di errore in un'area o all'interno di una zona di disponibilità. In questo modo è possibile aumentare le istanze dell'applicazione mantenendo l'isolamento del dominio di errore essenziale per eseguire carichi di lavoro basati su quorum o con stato, tra cui:

  • Carichi di lavoro basati su quorum
  • Database open source
  • Applicazioni con stato
  • Servizi che richiedono disponibilità elevata e scalabilità elevata
  • Servizi che vogliono combinare tra loro i tipi di macchine virtuali o le macchine virtuali Spot e su richiesta
  • Applicazioni del set di disponibilità esistenti

Cosa è cambiato con la modalità di orchestrazione flessibile?

Uno dei principali vantaggi dell'orchestrazione flessibile è che offre funzionalità di orchestrazione rispetto alle macchine virtuali IaaS standard di Azure, anziché alle macchine virtuali figlio del set di scalabilità. Ciò significa che è possibile usare tutte le API di macchine virtuali standard quando si gestiscono istanze di orchestrazione flessibili, anziché le API di macchine virtuali del set di scalabilità di macchine virtuali usate con l'orchestrazione uniforme. Esistono diverse differenze tra la gestione delle istanze nell'orchestrazione flessibile e l'orchestrazione uniforme. In generale, è consigliabile usare le API della macchina virtuale IaaS standard di Azure, quando possibile. In questa sezione vengono illustrati esempi di procedure consigliate per la gestione delle istanze di macchine virtuali con orchestrazione flessibile.

La modalità di orchestrazione flessibile può essere usata con tutte le dimensioni delle macchine virtuali. La modalità di orchestrazione flessibile offre la scalabilità e la configurabilità più elevate per le dimensioni delle macchine virtuali che supportano la conservazione della memoria o la migrazione in tempo reale, ad esempio quando si usano le serie B, D, E e F o quando il set di scalabilità è configurato per la distribuzione massima tra istanze platformFaultDomainCount=1. Attualmente, la modalità di orchestrazione flessibile presenta vincoli aggiuntivi per le dimensioni delle macchine virtuali che non supportano il mantenimento della memoria degli aggiornamenti, tra cui le macchine virtuali e le istanze serie G, H, L, M e N vengono distribuite in più domini di errore. È possibile usare l'API SKU delle risorse di calcolo per determinare se uno SKU di macchina virtuale specifico supporta la conservazione della memoria degli aggiornamenti.

Funzionalità Mantenimento della memoria aggiornamenti supportati o set di scalabilità con distribuzione massima (platformFaultDomainCount=1) Aggiornamenti con mantenimento della memoria non supportati e distribuzione fissa (platformFaultDomainCount > 1)
Numero massimo di istanze dei set di scalabilità di macchine virtuali 1000 200
Combinare sistemi operativi
Combinare istanze Spot e on demand No
Combinare tipi di SKU generici e speciali Sì (FDCount = 1) No
Numero massimo di domini di errore Area – 3 (a seconda del numero massimo di domini di errore a livello di area)
Zona - 1
Locale – 3
Zona - 1
Distribuire istanze tra zone
Assegnare una macchina virtuale a una zona specifica
Assegnazione macchina virtuale a un dominio di errore specifico No
Domini di aggiornamento No No
Gruppo di posizionamento singolo Facoltativo. Verrà impostato su false in base alla prima macchina virtuale distribuita Facoltativo. Verrà impostato su true in base alla prima macchina virtuale distribuita

Aumentare il numero di istanze con macchine virtuali di Azure standard

I set di scalabilità di macchine virtuali in modalità di orchestrazione flessibile supportano solo una zona. Si ha il controllo completo sul ciclo di vita della macchina virtuale, nonché sulle interfacce di rete e sui dischi usando le API e i comandi di Azure standard. Le macchine virtuali create con la modalità di orchestrazione uniforme vengono esposte e gestite tramite i comandi dell'API di macchine virtuali del set di scalabilità di macchine virtuali. Le singole istanze non sono compatibili con i comandi standard dell'API della macchina virtuale IaaS di Azure, le funzionalità di gestione di Azure, ad esempio l'assegnazione di tag alle risorse di Azure Resource Manager, le autorizzazioni di controllo degli accessi in base al ruolo, Backup di Azure o Azure Site Recovery.

Assegnare un dominio di errore durante la creazione della macchina virtuale

È possibile scegliere il numero di domini di errore per il set di scalabilità di orchestrazione flessibile. Per impostazione predefinita, quando si aggiunge una macchina virtuale a un set di scalabilità flessibile, Azure distribuisce uniformemente le istanze tra domini di errore. Anche se è consigliabile consentire ad Azure di assegnare il dominio di errore, per scenari avanzati o di risoluzione dei problemi è possibile eseguire l'override di questo comportamento predefinito e specificare il dominio di errore in cui verrà eseguita l'istanza.

az vm create –vmss "myVMSS"  –-platform-fault-domain 1

Denominazione dell'istanza

Quando si crea una macchina virtuale e la si aggiunge a un set di scalabilità flessibile, si ha il controllo completo sui nomi delle istanze all'interno delle regole delle convenzioni di denominazione di Azure. Quando le macchine virtuali vengono aggiunte automaticamente al set di scalabilità tramite la scalabilità automatica, si specifica un prefisso e Azure aggiunge un numero univoco alla fine del nome.

Eseguire query su istanze per lo stato di alimentazione

Il metodo preferito consiste nell'usare Azure Resource Graph per eseguire query per tutte le macchine virtuali in un set di scalabilità di macchine virtuali. Azure Resource Graph offre funzionalità di query efficienti per le risorse di Azure su larga scala tra sottoscrizioni.

resources
| where type =~ 'Microsoft.Compute/virtualMachines'
| where properties.virtualMachineScaleSet.id contains "demo"
| extend powerState = properties.extended.instanceView.powerState.code
| project name, resourceGroup, location, powerState
| order by resourceGroup desc, name desc

L'esecuzione di query sulle risorse con azure Resource Graph è un modo pratico ed efficiente per eseguire query sulle risorse di Azure e ridurre al minimo le chiamate API al provider di risorse. Azure Resource Graph è una cache coerente in cui le risorse nuove o aggiornate potrebbero non essere riflesse per un massimo di 60 secondi. È possibile:

  • Elencare le macchine virtuali in un gruppo di risorse o una sottoscrizione.
  • Usare l'opzione espandi per recuperare la visualizzazione dell'istanza (assegnazione di dominio di errore, stato di risparmio energia e provisioning) per tutte le macchine virtuali nella sottoscrizione.
  • Usare l'API di macchine virtuali Get e i comandi per ottenere la visualizzazione del modello e dell'istanza per una singola istanza.

Monitorare l'integrità delle applicazioni

Il monitoraggio dell'integrità delle applicazioni consente all'applicazione di fornire ad Azure un heartbeat per determinare se l'applicazione è integra o non integra. Azure può sostituire automaticamente le istanze di macchina virtuale non integre. Quando si configura il monitoraggio delle applicazioni, è necessario installare e configurare l'estensione integrità dell'applicazione se si usa l'orchestrazione flessibile. Per le istanze del set di scalabilità uniforme, è possibile usare l'estensione dell'integrità dell'applicazione o i probe di integrità.

Elencare le modifiche dell'API delle macchine virtuali dei set di scalabilità

I set di scalabilità di macchine virtuali consentono di elencare le istanze appartenenti al set di scalabilità. Con l'orchestrazione flessibile, il comando Elenca set di scalabilità di macchine virtuali fornisce un elenco di ID macchina virtuale dei set di scalabilità. È quindi possibile chiamare i comandi get dei set di scalabilità di macchine virtuali per ottenere altri dettagli sul funzionamento del set di scalabilità con l'istanza di macchina virtuale. Per ottenere i dettagli per molte macchine virtuali nel set di scalabilità, usare Azure Resource Graph o l'API e i comandi standard elencare macchine virtuali. Usare l'API e i comandi GET standard per ottenere informazioni su una singola istanza.

Recuperare i dati di diagnostica di avvio

Usare le API e i comandi standard della macchina virtuale per recuperare i dati e gli screenshot della diagnostica di avvio dell'istanza. Le API e i comandi di diagnostica di avvio delle macchine virtuali dei set di scalabilità di macchine virtuali non vengono usati con le istanze della modalità di orchestrazione flessibile.

Estensioni delle macchine virtuali

Usare le estensioni destinate alle macchine virtuali standard, anziché le estensioni destinate alle istanze della modalità di orchestrazione uniforme.

Confronto tra set di disponibilità flessibili, uniformi e di disponibilità

La tabella seguente confronta la modalità di orchestrazione flessibile, la modalità di orchestrazione uniforme e i set di disponibilità in base alle relative funzionalità.

Installazione di base

Funzionalità Supportato dall'orchestrazione flessibile per i set di scalabilità Supportato dall'orchestrazione uniforme per i set di scalabilità Supportato dai set di disponibilità
Tipo di macchina virtuale Macchina virtuale IaaS standard di Azure (Microsoft.compute/virtualmachines) Macchine virtuali specifiche del set di scalabilità (Microsoft.compute /virtualmachinescalesets/virtualmachines) Macchina virtuale IaaS standard di Azure (Microsoft.compute/virtualmachines)
Versione minima dell'API necessaria 2021-03-01 2015-06-01 2015-06-01
Numero massimo di istanze (con garanzie FD) 1000 100 200
SKU supportati Tutti gli SKU Tutti gli SKU Tutti gli SKU
Controllo completo su macchine virtuali, schede di interfaccia di rete, dischi Controllo limitato con l'API di macchine virtuali dei set di scalabilità di macchine virtuali
Autorizzazioni di controllo degli accessi in base al ruolo necessarie Scrittura su set di scalabilità di macchine virtuali di calcolo, scrittura su macchine virtuali di calcolo, rete Scrittura su set di scalabilità di macchine virtuali di calcolo N/D
Selezionare la raccolta immagini condivise
Rete accelerata
Istanze Spot e prezzi Sì, è possibile avere istanze con priorità sia Spot sia regolare Sì, le istanze devono essere tutte Spot o tutte regolari No, solo istanze con priorità regolare
Combinare sistemi operativi Sì, Linux e Windows possono risiedere nello stesso set di scalabilità Flessibile No, le istanze devono essere dello stesso sistema operativo Sì, Linux e Windows possono trovarsi nello stesso set di disponibilità
Tipi di disco Solo dischi gestiti, tutti i tipi di archiviazione Dischi gestiti e non gestiti Dischi gestiti e non gestiti. Ultradisk non supportato
Crittografia lato server con chiavi gestite dal cliente
Acceleratore di scrittura
Gruppi di posizionamento di prossimità Sì, quando si usa una zona di disponibilità o nessuna. Non può essere modificato dopo la distribuzione. Leggere la documentazione sui gruppi di posizionamento di prossimità Sì, quando si usa una zona di disponibilità o nessuna. Può essere modificato dopo l'arresto della distribuzione di tutte le istanze. Leggere la documentazione sui gruppi di posizionamento di prossimità
Host dedicati di Azure
Identità gestita Solo identità assegnata dall'utente1 Assegnata dal sistema o assegnata dall'utente N/D (può specificare l'identità gestita nelle singole istanze)
Aggiunta/Rimozione macchina virtuale esistente al gruppo No No
Service Fabric No No
Servizio Azure Kubernetes/Motore Azure Kubernetes No No
UserData UserData può essere specificato per singole macchine virtuali
Opzione per eliminare o conservare la scheda di interfaccia di rete della macchina virtuale e i dischi No (elimina sempre)
Dischi Ultra No

1 Per i set di scalabilità uniformi, la risposta GET VMSS avrà un riferimento all'identità, clientIDe principalID. Per i set di scalabilità flessibili, la risposta otterrà solo un riferimento all'identità. È possibile effettuare una chiamata a Identity per ottenere il clientID e PrincipalID.

Scalabilità automatica e orchestrazione istanze

Funzionalità Supportato dall'orchestrazione flessibile per i set di scalabilità Supportato dall'orchestrazione uniforme per i set di scalabilità Supportato dai set di disponibilità
Elenco macchine virtuali nel set Sì, elencare le macchine virtuali in AvSet
Scalabilità automatica (manuale, basata sulle metriche, basata sulla pianificazione) No
Rimozione automatica di schede di interfaccia di rete e dischi durante l'eliminazione di istanze di macchine virtuali No
Criteri di aggiornamento (set di scalabilità di macchine virtuali) Automatici, in sequenza, manuali Automatici, in sequenza, manuali N/D
Aggiornamenti automatici del sistema operativo (set di scalabilità di macchine virtuali) No N/D
Applicazione di patch di sicurezza guest Sì, leggere Applicazione automatica di patch guest alle macchine virtuali No
Notifiche di terminazioni (set di scalabilità di macchine virtuali) Sì, leggere la documentazione sulle notifiche di terminazione Sì, leggere la documentazione sulle notifiche di terminazione N/D
Monitorare l'integrità delle applicazioni Estensione di integrità dell'applicazione Estensione integrità applicazione o probe del servizio di bilanciamento del carico di Azure Estensione di integrità dell'applicazione
Ripristino dell'istanza (set di scalabilità di macchine virtuali) Sì, leggere la documentazione relativa alla riparazione delle istanze Sì, leggere la documentazione relativa alla riparazione delle istanze N/D
Protezione delle istanze No
Criteri di riduzione No
Ottenere la visualizzazione dell'istanza del set di scalabilità di macchine virtuali No N/D
Operazioni batch delle macchine virtuali (Avvia tutte, Arresta tutte, Elimina subset e così via) No

Disponibilità elevata

Funzionalità Supportato dall'orchestrazione flessibile per i set di scalabilità Supportato dall'orchestrazione uniforme per i set di scalabilità Supportato dai set di disponibilità
Contratto di Servizio relativo alla disponibilità 99,95% per le istanze distribuite tra domini di errore; 99,99% per le istanze distribuite tra più zone 99,95% per FD>1 in gruppo di posizionamento singolo; 99,99% per le istanze distribuite tra più zone 99,95%
Zone di disponibilità Specificare le istanze in 1, 2 o 3 zone di disponibilità Specificare le istanze in 1, 2 o 3 zone di disponibilità Non supportato
Assegnare una macchina virtuale a una zona di disponibilità specifica No No
Dominio di errore - Distribuzione massima (Azure distribuirà le istanze nella misura massima) No
Dominio di errore - Distribuzione fissa 2-3 domini di errore (a seconda del numero massimo di domini di errore a livello di area); 1 per le distribuzioni di zona 2, 3, 5 domini di errore 1, 5 per le distribuzioni di zona 2-3 FD (a seconda del numero massimo di FD a livello di area)
Assegnazione di macchine virtuali a un dominio di errore specifico No No
Domini di aggiornamento Deprecati (manutenzione della piattaforma eseguita un dominio di errore alla volta) 5 domini di aggiornamento Fino a 20 domini di aggiornamento
Eseguire la manutenzione Attivazione manutenzione in ogni istanza usando l'API di macchine virtuali N/D
Prenotazione della capacità

Rete

Funzionalità Supportato dall'orchestrazione flessibile per i set di scalabilità Supportato dall'orchestrazione uniforme per i set di scalabilità Supportato dai set di disponibilità
Connettività in uscita predefinita No, deve avere connettività in uscita esplicita
Azure Load Balancer con SKU Standard
Gateway applicazione
Rete Infiniband No Sì, solo gruppo di posizionamento singolo
Basic LB No
Port forwarding di rete Sì (regole NAT per singole istanze) Sì (pool NAT) Sì (regole NAT per singole istanze)

Backup e ripristino

Funzionalità Supportato dall'orchestrazione flessibile per i set di scalabilità Supportato dall'orchestrazione uniforme per i set di scalabilità Supportato dai set di disponibilità
Backup di Azure No
Azure Site Recovery Sì (tramite PowerShell) No
Avvisi di Azure
Informazioni dettagliate macchina virtuale Può essere installato in singole macchine virtuali

Parametri non supportati

I parametri del set di scalabilità di macchine virtuali seguenti non sono attualmente supportati con i set di scalabilità di macchine virtuali in modalità di orchestrazione flessibile:

  • Gruppo di posizionamento singolo: può essere impostato su null e la piattaforma selezionerà il valore corretto
  • Configurazione del disco Ultra: diskIOPSReadWrite, diskMBpsReadWrite
  • Overprovisioning del set di scalabilità di macchine virtuali
  • Aggiornamenti automatici del sistema operativo basati su immagini
  • Integrità dell'applicazione tramite probe di integrità SLB: usare l'estensione integrità dell'applicazione nelle istanze
  • Criteri di aggiornamento del set di scalabilità di macchine virtuali: devono essere null o vuoti
  • Dischi non gestiti
  • Load Balancer di base
  • Port Forwarding tramite il pool NAT di Load Balancer Standard: è possibile configurare le regole NAT
  • Identità gestita assegnata dal sistema - Usare l'identità gestita assegnata dall'utente

Introduzione alla modalità di orchestrazione flessibile

Registrare e iniziare a usare la modalità di orchestrazione flessibile per i set di scalabilità di macchine virtuali.

Domande frequenti

  • Quale livello di ridimensionamento supporta l'orchestrazione flessibile?

    È possibile aggiungere fino a 1000 macchine virtuali a un set di scalabilità in modalità di orchestrazione flessibile.

  • In che modo la disponibilità con l'orchestrazione flessibile viene confrontata con i set di disponibilità o l'orchestrazione uniforme?

    Attributo di disponibilità Orchestrazione flessibile Orchestrazione uniforme SET DI DISPONIBILITÀ
    Eseguire la distribuzione tra zone di disponibilità No
    Garanzie di disponibilità del dominio di errore all'interno di un'area Sì, fino a 1000 istanze possono essere distribuite in un massimo di 3 domini di errore nell'area. Il numero massimo di domini di errore varia in base all'area Sì, fino a 100 istanze Sì, fino a 200 istanze
    Gruppi di posizionamento N/D È possibile scegliere gruppo di posizionamento singolo o più gruppi di posizionamento N/D
    Domini di aggiornamento Nessuno, gli aggiornamenti di manutenzione o host vengono eseguiti in base al dominio di errore Fino a 5 domini di aggiornamento Fino a 20 domini di aggiornamento
  • Qual è il numero massimo assoluto di istanze con disponibilità garantita del dominio di errore?

    Funzionalità Supportato dall'orchestrazione flessibile Supportato dall'orchestrazione uniforme (disponibilità generale) Supportato da AvSets (disponibilità generale)
    Numero massimo di istanze (con garanzia di disponibilità FD) 1000 3000 200

Passaggi successivi