La flessibilità delle istanze nei gruppi di istanze gestite (MIG) ti consente di specificare più tipi di macchine per le istanze di macchine virtuali (VM) nel gruppo, anziché limitarti a un singolo tipo di macchina. Se un tipo di macchina non è disponibile, il MIG può selezionare automaticamente un altro tipo compatibile dall'elenco in base alla disponibilità delle risorse attuale. Questa flessibilità contribuisce a migliorare l'ottenibilità delle risorse, in particolare per le applicazioni che possono funzionare su diversi tipi di macchine e che richiedono una capacità su larga scala o hardware a domanda elevata.
Questo documento descrive il funzionamento della flessibilità delle istanze in un MIG e i suoi limiti. Per sapere come configurare un MIG in modo da utilizzare la flessibilità delle istanze, consulta Aggiungi flessibilità delle istanze.
Flessibilità delle istanze
Un MIG crea tutte le sue VM in base al template di istanza che selezioni. Il template di istanza specifica il tipo di macchina da utilizzare per ogni VM. Con la flessibilità delle istanze, puoi elencare tutti i tipi di macchine compatibili con la tua applicazione.
L'immagine seguente mette a confronto un MIG che utilizza un singolo tipo di macchina con un MIG che utilizza la flessibilità delle istanze. Come mostrato nell'immagine, un MIG con un singolo tipo di macchina crea VM identiche in base a un template di istanza, mentre un MIG con flessibilità delle istanze può creare VM con dimensioni e tipi di macchine diverse.
Come funziona la flessibilità delle istanze
Per impostazione predefinita, un MIG crea tutte le VM utilizzando un singolo tipo di macchina dal template di istanza. Puoi impostare più tipi di macchine in un MIG configurando una selezione dell'istanza (instanceSelections) nella policy di flessibilità delle istanze (instanceFlexibilityPolicy).
Puoi anche specificare tipi di macchine che vengono eseguiti su piattaforme CPU diverse e quelli con architetture diverse (architettura x86 e Arm). Per utilizzare tipi di macchine con requisiti diversi per la piattaforma CPU minima o i dischi, utilizza la policy di flessibilità delle istanze per sostituire le proprietà corrispondenti del template di istanza. Per saperne di più, consulta
Come funzionano le sostituzioni di minCpuPlatform e disks.
Esempio di sostituzioni del tipo di macchina
Se il tuo workload può funzionare su diversi tipi di macchine, puoi configurare un elenco di tutti i tipi di macchine compatibili con la tua applicazione in una singola instanceSelection come segue:
"instanceFlexibilityPolicy": {
"instanceSelections": {
"instance-selection-1": {
"machineTypes": ["c2-standard-8","c2d-standard-8","c3-standard-8", "c3d-standard-8"]
}
}
}
I tipi di macchine all'interno di una selezione di istanze hanno la stessa preferenza. Se vuoi che un MIG scelga i tipi di macchine in un ordine specifico, puoi configurare più selezioni di istanze, ciascuna con un elenco di tipi di macchine e un ranking per definire la preferenza. Un valore più basso del ranking indica una preferenza più elevata. Il MIG tenta di creare le VM utilizzando i tipi di macchine con una preferenza più alta. Se questi tipi di macchine non sono disponibili, il MIG utilizza un tipo di macchina con una preferenza inferiore.
"instanceFlexibilityPolicy": {
"instanceSelections": {
"most-preferred": {
"rank": 1,
"machineTypes": ["c3-standard-8","c2-standard-8"]
},
"least-preferred": {
"rank": 2,
"machineTypes": ["n2-standard-16","n1-standard-16"]
}
}
}
L'applicazione deve essere pronta per l'esecuzione su uno dei tipi di macchine elencati poiché la disponibilità dell'hardware cambia nel tempo e l'hardware specifico non è garantito, a meno che non utilizzi le prenotazioni.
Le selezioni di istanze possono anche sostituire le proprietà dell'istanza come
minCpuPlatform e disks. Per saperne di più, consulta la sezione seguente
su Come funzionano le sostituzioni della selezione di istanze.
Come funzionano le sostituzioni di minCpuPlatform e disks
In una selezione di istanze, puoi specificare proprietà dell'istanza aggiuntive, come la piattaforma CPU minima (minCpuPlatform) e i dischi (disks), per sostituire quelle definite nel template di istanza. Quando un MIG seleziona un tipo di macchina da una selezione di istanze, crea una VM utilizzando le proprietà dell'istanza specificate in quella selezione di istanze. Se non specifichi nessuna di queste proprietà per una selezione di istanze, il MIG utilizzerà le proprietà corrispondenti del template per quella selezione.
La sostituzione di queste proprietà a livello di selezione di istanze offre maggiore controllo e flessibilità, soprattutto quando si utilizza hardware diverso in un MIG.
Sostituisci la piattaforma CPU minima quando combini tipi di macchine che vengono eseguiti su piattaforme CPU diverse. Puoi specificare una piattaforma CPU minima per le istanze create dai tipi di macchine all'interno di una selezione. Questa sostituzione ti consente di combinare tipi di macchine diversi, ma di applicare in modo selettivo le piattaforme CPU minime. In alternativa, puoi configurare la selezione di istanze in modo che selezioni automaticamente una piattaforma CPU impostando il campo
minCpuPlatformsuAUTOMATIC. Questa selezione automatica sostituisce l'impostazione della piattaforma CPU minima del template di istanza e consente al MIG di utilizzare qualsiasi piattaforma CPU compatibile per i tipi di macchine selezionati.Ad esempio, puoi combinare tipi di macchine delle serie di macchine N1 e N2 in una selezione, assicurandoti che le macchine N1 vengano eseguite su Intel Skylake per ottenere miglioramenti delle prestazioni.
Sostituisci i dischi quando combini tipi di macchine con architetture diverse. Puoi specificare una configurazione del disco personalizzata per sostituire il disco di avvio o i dischi aggiuntivi specificati nelle proprietà dell'istanza oppure per collegare uno spazio di archiviazione specifico. Questa sostituzione ti consente di combinare tipi di macchine con architetture diverse o che non condividono tecnologie di dischi e di specificare le immagini di avvio o i dischi appropriati richiesti per ogni tipo di macchina.
Ad esempio, puoi combinare i tipi di macchine C4 (architettura x86) e C4A (architettura Arm). Poiché le macchine x86 e Arm richiedono immagini di avvio diverse, puoi utilizzare selezioni di istanze separate per sostituire il disco di avvio per ogni architettura.
Quando specifichi i dischi per una selezione di istanze, il MIG unisce i dischi nel template di istanza e nella selezione di istanze in base alle chiavi
deviceName. Il seguente diagramma mostra un esempio.
Per informazioni sulle limitazioni quando utilizzi le sostituzioni della selezione di istanze, consulta la sezione Limitazioni in questo documento.
Esempio di sostituzioni della piattaforma CPU minima e dei dischi
Considera un template di istanza con la seguente configurazione:
{
...
"disks": [
{
"autoDelete": true,
"deviceName": "boot",
"boot": true,
"diskEncryptionKey": {},
"initializeParams": {
"sourceImage": "projects/debian-cloud/global/images/family/debian-12",
"diskSizeGb": "10",
"diskType": "pd-balanced"
}
}
],
"machineType": "n2-standard-2",
...
}
Il seguente esempio di policy di flessibilità delle istanze sostituisce la configurazione del template specificando una piattaforma CPU minima e una configurazione del disco.
"instanceFlexibilityPolicy": {
"instanceSelections": {
"first-preference": {
"rank": 1,
"machineTypes": ["n4-standard-4 "],
"disks": [
{
"autoDelete": true,
"deviceName": "boot",
"boot": true,
"diskEncryptionKey": {},
"initializeParams": {
"sourceImage": "projects/debian-cloud/global/images/family/debian-12",
"diskSizeGb": "10",
"diskType": "hyperdisk-balanced"
}
}
]
},
"second-preference": {
"rank": 2,
"machineTypes": ["n2-standard-4"],
"minCpuPlatform": "Intel Ice Lake",
"disks": [
{
"autoDelete": true,
"deviceName": "boot",
"boot": true,
"initializeParams": {
"sourceImage": "projects/debian-cloud/global/images/family/debian-12",
"diskSizeGb": "10",
"diskType": "pd-ssd"
}
}
]
},
"third-preference": {
"rank": 3,
"machineTypes": ["n1-standard-4"],
"minCpuPlatform": "Intel Skylake",
}
}
}
In che modo un MIG seleziona i tipi di macchine
Quando configuri più tipi di macchine, il MIG seleziona un tipo di macchina in base alla disponibilità delle risorse attuali e dà la priorità alle prenotazioni inutilizzate. Se hai configurato i ranking, il MIG prende in considerazione innanzitutto l'ordine delle tue preferenze. All'interno di una selezione di istanze con ranking, il MIG controlla la disponibilità delle risorse e poi le prenotazioni.
Anche le zone della regione del MIG potrebbero influire sulla selezione del tipo di macchina, in quanto la disponibilità delle risorse varia da una zona all'altra. Per saperne di più, consulta la sezione seguente sul modo in cui un MIG seleziona le zone.
In che modo un MIG seleziona le zone
Puoi configurare la flessibilità delle istanze in un MIG a livello di regione con una forma di distribuzione target BALANCED,
ANY, o ANY_SINGLE_ZONE. La flessibilità delle istanze non supporta la forma di distribuzione target EVEN.
Con la flessibilità delle istanze, quando un MIG a livello di regione crea una VM, il MIG seleziona una zona in base alla forma di distribuzione target selezionata nel modo seguente:
BALANCED: il MIG seleziona una zona con risorse disponibili che può bilanciare la distribuzione delle VM tra le zone nel modo più uniforme possibile. All'interno di una zona selezionata, il MIG dà la priorità ai tipi di macchine in base ai ranking, se configurato, e alle prenotazioni disponibili.ANY: il MIG seleziona una zona con risorse e prenotazioni disponibili. Se sono configurati i ranking, il MIG dà la priorità alla zona in cui è disponibile un tipo di macchina in base ai ranking.ANY_SINGLE_ZONE: il MIG seleziona la zona con il maggior numero di tipi di macchine in base al ranking, se configurato, e in cui il MIG può creare la maggior parte delle VM dalle prenotazioni inutilizzate.
Per ulteriori informazioni sul funzionamento di una forma di distribuzione target, consulta Forma di distribuzione target del MIG a livello di regione.
Flessibilità delle istanze e prenotazioni
Puoi utilizzare la flessibilità delle istanze con le prenotazioni. In base alla proprietà di affinità della prenotazione impostata nel template di istanza, un MIG utilizza le prenotazioni nel modo seguente:
ANY_RESERVATION(consigliato per la flessibilità delle istanze): quando utilizzi una prenotazione qualsiasi, il MIG seleziona prima il tipo di macchina con prenotazione inutilizzata. Se vuoi modificare l'ordine in cui il MIG seleziona i tipi di macchine, puoi configurare più selezioni di istanze e specificare la tua preferenza utilizzando il ranking. Il MIG segue quindi prima i ranking e poi prende in considerazione le prenotazioni disponibili per i tipi di macchine all'interno di un ranking.SPECIFIC: quando utilizzi una prenotazione specifica, il MIG seleziona il tipo di macchina che corrisponde alle proprietà della prenotazione. Se le selezioni di istanze non includono il tipo di macchina che corrisponde alle proprietà della prenotazione specifica, la creazione dell'istanza non va a buon fine.
Per saperne di più sulle prenotazioni, consulta Informazioni sulle prenotazioni.
Flessibilità delle istanze e VM spot
Se il tuo MIG con flessibilità delle istanze utilizza VM spot, selezionerà automaticamente un tipo di macchina con il tasso di prerilascio osservato più basso per garantire la minore interruzione possibile per il tuo workload. Se vuoi sostituire questo comportamento, completa i seguenti passaggi:
Visualizza la disponibilità delle risorse. Prima di creare un MIG con VM spot, puoi visualizzare la disponibilità delle risorse nella regione o nella zona in cui vuoi creare il MIG. Questa azione contribuisce a ridurre le probabilità di riscontrare errori di disponibilità delle risorse.
Per istruzioni, consulta Visualizza la disponibilità delle VM spot.
Configura più selezioni di istanze. Puoi specificare il tipo di macchina e le zone in cui creare le VM spot utilizzando i ranking. Il MIG segue quindi prima l'ordine delle tue preferenze e poi considera l'affidabilità delle VM spot all'interno di una selezione di istanze.
Per istruzioni, consulta Crea un MIG con più tipi di macchine e preferenze.
Per saperne di più sull'utilizzo delle VM spot in un MIG, consulta VM spot in un gruppo di istanze gestite.
Flessibilità delle istanze e riparazioni delle VM
Per impostazione predefinita, se una VM in un MIG smette di funzionare, il MIG la ripara ricreandola con la stessa configurazione, incluso il tipo di macchina. Se configuri la flessibilità delle istanze e abiliti gli aggiornamenti durante la riparazione, puoi aumentare le probabilità di ottenere risorse in caso di esaurimento scorte. Quando un MIG tenta di ricreare una VM, se il tipo di macchina originale della VM non è disponibile, riceverai un errore di esaurimento scorte. Con gli aggiornamenti durante la riparazione abilitati, il MIG utilizza le selezioni di istanze specificate e la disponibilità attuale per scegliere un altro tipo di macchina per la creazione della VM. L'abilitazione degli aggiornamenti durante la riparazione consente anche di garantire che la VM ricreata utilizzi la configurazione della flessibilità delle istanze più recente.
Per ulteriori informazioni sulle riparazioni, consulta Informazioni sulla riparazione delle VM per l'alta affidabilità.
Flessibilità delle istanze e scalabilità automatica
Quando configuri la scalabilità automatica in un MIG con più tipi di macchine, si verifica quanto segue:
Quando un gestore della scalabilità automatica esegue lo scale out di un MIG, il MIG crea le VM selezionando i tipi di macchine nello stesso modo di un MIG senza scalabilità automatica. Per saperne di più, consulta la sezione In che modo un MIG seleziona i tipi di macchine in questo documento.
Quando un gestore della scalabilità automatica esegue lo scale in di un MIG, il MIG seleziona le VM da eliminare nel modo seguente:
- Il MIG dà la priorità all'eliminazione delle VM che preservano al meglio la forma di distribuzione target.
- Se hai configurato i ranking, tra le VM con priorità, il MIG dà la priorità all'eliminazione delle VM che utilizzano tipi di macchine con ranking inferiori.
- Infine, il MIG controlla il consiglio del gestore della scalabilità automatica per selezionare le VM da eliminare.
La scalabilità automatica funziona in modo efficace quando il MIG ha tipi di macchine con prestazioni simili, ad esempio macchine con lo stesso numero di vCPU. In caso contrario, quando il MIG esegue lo scale out o lo scale in, il gestore della scalabilità automatica potrebbe tentare di aggiungere o rimuovere più spesso il tipo di macchina con le prestazioni più elevate. Questo comportamento può verificarsi indipendentemente dal ranking configurato per quel tipo di macchina.
Per ulteriori informazioni sulla scalabilità automatica, consulta Scalabilità automatica dei gruppi di istanze.
Casi d'uso
Le sezioni seguenti descrivono alcuni casi d'uso della flessibilità delle istanze nei MIG.
Migliora l'ottenibilità
Puoi configurare la flessibilità delle istanze MIG per migliorare l'ottenibilità delle risorse:
Tipi di macchine: la configurazione di base consiste nel configurare più tipi di macchine all'interno di un singolo ranking. Questo singolo ranking assegna loro la stessa preferenza, consentendo al MIG di selezionarne uno in base alla disponibilità delle risorse. Tuttavia, se hai delle preferenze, puoi assegnare ranking diversi per specificare un ordine di preferenza per i tipi di macchine.
Località: puoi aumentare ulteriormente la probabilità di ottenere le risorse scegliendo tutte le zone quando crei il MIG e utilizzando la
ANYforma di distribuzione target. La formaANYconsente al MIG di cercare la capacità in tutte le zone.VM spot e prerilascio: quando utilizzi le VM spot, per massimizzare le probabilità di ottenere le VM e ridurre al minimo i prerilasci, Google consiglia di includere il maggior numero possibile di tipi di macchine compatibili nello stesso ranking. Questa configurazione consente al MIG di scegliere i tipi di macchine con i tassi di prerilascio più bassi per ridurre al minimo le interruzioni del workload. Se configuri i tipi di macchine con ranking diversi, il MIG dà la priorità ai tipi di macchine in base al ranking anziché ai tassi di prerilascio, il che potrebbe comportare la selezione di un tipo di macchina con un tasso di prerilascio più elevato.
Ottimizza i costi
Un MIG può eseguire automaticamente il provisioning delle istanze più convenienti per la tua infrastruttura quando configuri le impostazioni di flessibilità delle istanze del MIG nel modo seguente:
Tipi di macchine: seleziona i tipi di macchine che offrono il rapporto costo-prestazioni preferito per il tuo workload. Non è necessario specificare tutte le dimensioni disponibili di ogni tipo di macchina; specifica solo le dimensioni più convenienti per le tue esigenze.
Ranking: assegna i ranking alle selezioni di istanze in base alle tue preferenze di costo, con il tipo di macchina più economico come preferito. In questo modo, ti assicuri di ottenere il tipo di macchina più economico in base alla disponibilità.
Località: quando crei il MIG, seleziona tutte le zone e la forma di distribuzione
ANYtarget. In questo modo, aumenti le probabilità di ottenere i tipi di macchine più economici nelle zone in cui sono disponibili.
In base alle impostazioni di flessibilità delle istanze, il MIG esegue automaticamente il provisioning della migliore combinazione possibile di tipi di macchine disponibili per soddisfare i tuoi criteri di costo e la capacità totale richiesta. In questo modo, il costo è il più basso possibile in un determinato momento.
Massimizza le prestazioni
Puoi configurare la flessibilità delle istanze MIG per massimizzare le prestazioni. Per farlo, seleziona le famiglie e le dimensioni delle macchine più adatte al tuo workload. Quindi, classifica i tipi di macchine in base alle prestazioni, dal più alto al più basso, utilizzando la dimensione preferita all'interno di ogni famiglia. In base al ranking e ai tipi di macchine, il MIG seleziona le macchine con le prestazioni più elevate da tutte le risorse disponibili.
Poiché le generazioni di macchine più recenti in genere offrono prestazioni per core più elevate, non è necessario limitare la selezione delle macchine all'utilizzo della stessa dimensione (numero di vCPU) in famiglie diverse per ottenere prestazioni equivalenti. Ad esempio, quando selezioni tra le famiglie di macchine, puoi combinare numeri di CPU diversi, ad esempio combinando n1-standard-32 con n2-standard-16.
Inoltre, la specifica di una minCpuPlatform per la selezione di istanze può garantire che il MIG selezioni una piattaforma CPU ad alte prestazioni.
Transizione senza interruzioni ai tipi di macchine più recenti
Puoi configurare la flessibilità delle istanze MIG per dare la priorità all'adozione dei tipi di macchine di ultima generazione, utilizzando i tipi di macchine di generazione precedente come fallback per la capacità. Per farlo, crea una selezione di istanze contenente i tipi di macchine di ultima generazione e assegna un ranking inferiore (preferenza più alta). Se questi tipi di macchine richiedono configurazioni di dischi diverse, utilizza le sostituzioni dei dischi all'interno di questa selezione di istanze per definire le proprietà specifiche dei dischi. Crea una seconda selezione di istanze contenente i tipi di macchine di generazione precedente da utilizzare come fallback. Assegna un ranking più alto (preferenza inferiore) a questa selezione di istanze.
Quando crei il MIG, seleziona tutte le zone nella regione e la forma di distribuzione target ANY. Questa configurazione garantisce che il MIG cerchi prima le macchine di ultima generazione in tutte le zone della regione. Il MIG eseguirà il provisioning delle macchine di generazione precedente solo se non riesce a trovare una capacità di ultima generazione sufficiente, garantendo che la capacità totale richiesta sia sempre soddisfatta e massimizzando la quota dell'hardware più recente.
Limitazioni
La flessibilità delle istanze presenta le seguenti limitazioni:
I MIG a livello di zona non supportano la flessibilità delle istanze. In alternativa, puoi utilizzare un MIG a livello di regione con una singola zona.
Le VM con avvio flessibile non supportano la flessibilità delle istanze.
La flessibilità delle istanze non supporta le seguenti funzionalità MIG:
- MIG a livello di regione con forma di distribuzione target
impostata su
EVEN - Aggiornamento automatico della configurazione della VM e aggiornamenti canary (due template di istanza)
- Sospensione o arresto delle VM
- Richieste di ridimensionamento che creano VM GPU contemporaneamente
- MIG a livello di regione con forma di distribuzione target
impostata su
Quando sostituisci
minCpuPlatformedisks, si applicano anche le seguenti limitazioni:Devi abilitare gli aggiornamenti durante le riparazioni.
Quando configuri
minCpuPlatformodisksper una selezione di istanze esistente, devi includere anche il campomachineTypes. Senza il campomachineTypes, l'operazione non va a buon fine e viene generato un errore.Non puoi applicare la policy stateful o la configurazione per istanza ai dischi sostituiti tramite una selezione di istanze.
Puoi sostituire gli SSD locali solo per quei tipi di macchine che ti consentono di scegliere un numero di dischi SSD locali. Non puoi sostituire l'SSD locale per le varianti
-lssddei tipi di macchine, che collegano automaticamente i dischi SSD locali.Devi specificare un tipo di macchina univoco in tutte le selezioni di istanze. Ad esempio, non puoi specificare
n1-standard-2in una selezione con una CPUSkylakee anche in un'altra selezione con una CPUBroadwell.
Per garantire un bilanciamento del carico o una scalabilità automatica efficaci in un MIG con flessibilità delle istanze, utilizza tipi di macchine con prestazioni simili, ad esempio lo stesso numero di vCPU. Tuttavia, "prestazioni simili" non si limita all'utilizzo della stessa dimensione in famiglie diverse; poiché le generazioni di macchine più recenti in genere hanno prestazioni per vCPU più elevate, puoi combinare numeri di vCPU diversi (ad esempio, combinando
n1-standard-32conn2-standard-28).In Cloud Load Balancing, i tipi di macchine con prestazioni simili possono impedire il sovrautilizzo di hardware più piccoli e il sottoutilizzo di macchine più veloci.
Nella scalabilità automatica, i tipi di macchine con prestazioni simili possono impedire l'aggiunta o l'eliminazione del tipo di macchina con le prestazioni più elevate.
Passaggi successivi
- Scopri di più sui diversi tipi di macchine.
- Aggiungi la flessibilità delle istanze a un MIG.
- Visualizza la flessibilità delle istanze in un MIG.