Difficoltà a monitorare il consumo di prenotazione
Problema: anche se puoi visualizzare i dettagli di una prenotazione o monitorare il consumo delle prenotazioni per vedere quante delle sue VM prenotate vengono utilizzate e monitorare le modifiche di questo numero nel tempo, non puoi visualizzare direttamente quali VM utilizzano una prenotazione.
Soluzione: se riesci a creare correttamente una VM che ha come target una
prenotazione specifica,
la VM utilizza la prenotazione specificata nella proprietà di affinità
(reservationAffinity
) della VM. In caso contrario, la creazione della VM non riesce perché le proprietà non corrispondono o non sono disponibili risorse prenotate.
Puoi anche creare una VM che ha come target una prenotazione specifica per verificare che sia correttamente configurata per utilizzare automaticamente una prenotazione corrispondente, quindi crea la VM per utilizzare qualsiasi prenotazione corrispondente.
Problemi per le VM che non utilizzano le prenotazioni
Se una VM non può utilizzare una prenotazione, la causa potrebbe essere uno o più dei seguenti problemi:
- Le proprietà della VM non corrispondono alle proprietà della prenotazione.
- L'affinità di prenotazione della VM non è corretta.
- La prenotazione è già completamente utilizzata da altre VM corrispondenti.
- La quota per la risorsa è stata superata
Questa sezione descrive come identificare ciascuno di questi problemi, risolvere ciascuno di questi problemi e come verificare il consumo delle prenotazioni.
Proprietà VM non corrispondenti
Problema: una VM non può utilizzare una prenotazione con proprietà VM diverse.
Per identificare il problema, seleziona uno dei seguenti metodi:
Visualizza i dettagli della prenotazione e della VM e verifica manualmente che le relative proprietà VM corrispondano:
Visualizza i dettagli della prenotazione che deve essere utilizzata dalla VM utilizzando il comando
gcloud compute reservations describe
:gcloud compute reservations describe RESERVATION_NAME --zone=ZONE
Sostituisci quanto segue:
- RESERVATION_NAME è il nome di una prenotazione.
- ZONE è la zona in cui si trova la prenotazione.
Mantieni disponibile questo output.
Visualizza i dettagli della VM che vuoi utilizzare per il comando
gcloud compute instances describe
di prenotazione.gcloud compute instances describe VM_NAME
dove VM_NAME è il nome della VM.
Mantieni disponibile questo output.
Utilizzando sia gli output della descrizione della VM che della descrizione della prenotazione, verifica che le seguenti proprietà corrispondano:
project
- Se la prenotazione è condivisa con più progetti (se la prenotazione ha la proprietà
shareType
impostata suSPECIFIC_PROJECTS
), il progetto della VM può corrispondere al progetto in cui si trova la prenotazione o a uno qualsiasi dei progetti elencati inshareSettings
.
- Se la prenotazione è condivisa con più progetti (se la prenotazione ha la proprietà
zone
machineType
guestAccelerators.acceleratorType
guestAccelerators.acceleratorCount
minCpuPlatform
- La VM e la prenotazione devono avere la stessa configurazione di
minCpuPlatform
. Se specifichi un valoreminCpuPlatform
per uno dei due, entrambi devono avere lo stesso valore per quella proprietà. In caso contrario, sia la prenotazione che la VM devono omettere la proprietà. Ad esempio, l'impostazione diminCpuPlatform
su"Intel Broadwell"
durante la creazione di una VM non corrisponderà al valoreminCpuPlatform
di"Automatic"
all'interno di una prenotazione.
- La VM e la prenotazione devono avere la stessa configurazione di
localSsds.interface
- La prenotazione e la VM devono avere lo stesso numero di SSD locali con
una proprietà
localSsds.interface
corrispondente per ogni SSD locale.
- La prenotazione e la VM devono avere lo stesso numero di SSD locali con
una proprietà
resourcePolicies
*
* Solo se una prenotazione specifica un criterio di posizionamento compatto.
Creare una VM che ha come target una prenotazione specifica, che restituisce un errore se le proprietà non corrispondono. Per istruzioni, consulta Verificare il consumo tramite prenotazioni.
Soluzione: aggiorna eventuali proprietà VM non corrispondenti effettuando una delle seguenti operazioni:
- Aggiorna la VM in modo che corrisponda alle proprietà della prenotazione.
- Elimina la prenotazione e crea una nuova prenotazione che corrisponda alle proprietà della VM.
Per verificare se la VM utilizza la prenotazione, vedi Verificare il consumo della prenotazione.
Se le proprietà della VM e della prenotazione corrispondono, ma la VM non utilizza la prenotazione, vai alla sezione successiva.
Le VM non presentano un criterio di posizionamento
Problema: una VM sta tentando di utilizzare una prenotazione senza specificare il criterio di posizionamento compatto della prenotazione.
Soluzione: se la prenotazione di un singolo progetto specifica un criterio di posizionamento compatto, una VM deve specificare esattamente lo stesso criterio di posizionamento compatto per utilizzare la prenotazione. In caso contrario, la VM non può utilizzare la prenotazione.
Per assicurarti che una VM utilizzi una prenotazione che specifica un criterio di posizionamento compatto, prova una delle seguenti opzioni:
Se hai creato una prenotazione per un singolo progetto specificando direttamente le proprietà, applica il criterio di posizionamento compatto durante la creazione delle VM.
Se hai creato una prenotazione per un singolo progetto specificando un modello di istanza, seleziona uno dei seguenti metodi:
Opzione consigliata: utilizza il modello di istanza della prenotazione per creare VM. Questa azione applica automaticamente lo stesso criterio di posizionamento compatto specificato nella prenotazione a ogni nuova VM che crei.
Applica il criterio di posizionamento compatto durante la creazione delle VM. Questo metodo richiede di garantire manualmente che il criterio di posizionamento compatto e qualsiasi altra proprietà VM delle VM e delle prenotazioni corrispondano esattamente: eventuali proprietà non corrispondenti impediscono il consumo.
Le VM specificano un criterio di posizionamento compatto diverso
Problema: una VM sta tentando di consumare una prenotazione, ma il criterio di posizionamento compatto specificato nella VM e nella prenotazione non corrisponde.
Soluzione: se la prenotazione di un singolo progetto specifica un criterio di posizionamento compatto, una VM deve specificare esattamente lo stesso criterio di posizionamento compatto per utilizzare la prenotazione. In caso contrario, la VM non può utilizzare la prenotazione.
Per risolvere il problema, prova una delle seguenti soluzioni:
Se hai creato una prenotazione per un singolo progetto specificando direttamente le proprietà, applica il criterio di posizionamento compatto della prenotazione quando crei nuove VM.
Se hai creato una prenotazione per un singolo progetto specificando un modello di istanza, utilizza lo stesso modello per creare VM. Questa azione applica automaticamente lo stesso criterio di posizionamento compatto specificato nella prenotazione a ogni nuova VM che crei.
L'affinità di prenotazione della VM non è corretta
Problema: l'affinità di prenotazione della VM non è configurata correttamente. L'affinità di prenotazione di una VM controlla le prenotazioni che una VM può utilizzare. Per controllare l'affinità di prenotazione della tua VM, segui questi passaggi:
-
Visualizza i dettagli della prenotazione che vuoi che la VM utilizzi con il comando
gcloud compute reservations describe
.gcloud compute reservations describe RESERVATION_NAME --zone=ZONE
Sostituisci quanto segue:
- RESERVATION_NAME è il nome di una prenotazione.
- ZONE è la zona in cui si trova la prenotazione.
Nell'output, trova il valore del campo
specificReservationRequired
,true
ofalse
. -
Visualizza i dettagli della VM usando il comando
gcloud compute instances describe
.gcloud compute instances describe VM_NAME
dove VM_NAME con il nome della VM.
Nell'output, individua il campo
reservationAffinity
, simile al seguente:... reservationAffinity: consumeReservationType: RESERVATION_AFFINITY key: compute.googleapis.com/reservation-name values: - RESERVATION_NAME ...
Soluzione: aggiorna la proprietà reservationAffinity
della VM in modo che sia compatibile con il campo specificReservationRequired
della prenotazione utilizzando una delle seguenti configurazioni accettate:
-
Se il campo
specificReservationRequired
della prenotazione ètrue
, la proprietàreservationAffinity
della VM deve corrispondere a quanto segue:... reservationAffinity: consumeReservationType: SPECIFIC_RESERVATION key: compute.googleapis.com/reservation-name values: - RESERVATION_NAME ...
dove RESERVATION_NAME è il nome della prenotazione.
-
Se il campo
specificReservationRequired
della prenotazione èfalse
, la proprietàreservationAffinity
della VM deve corrispondere a quanto segue:... reservationAffinity: consumeReservationType: ANY_RESERVATION ...
Devi riavviare la VM per eseguire l'aggiornamento. Dopo l'aggiornamento, per verificare se la VM utilizza la prenotazione, vedi Verificare il consumo della prenotazione.
Se l'affinità di prenotazione della VM è configurata correttamente, ma la VM non utilizza prenotazioni, vai alla sezione successiva.
La prenotazione è già stata consumata completamente
Problema: il numero di VM attualmente in uso per questa prenotazione corrisponde al numero totale di VM prenotate della prenotazione.
Per identificare questo problema, visualizza i dettagli della prenotazione e verifica che il numero di VM in uso per questa prenotazione sia inferiore al numero totale di VM prenotate della prenotazione.
Soluzione: puoi aumentare il numero di VM disponibili da utilizzare per la prenotazione effettuando una delle seguenti operazioni:
- Aumenta il numero di VM nella prenotazione ridimensionando la prenotazione.
- Crea una nuova prenotazione con le stesse proprietà, se la prenotazione riserva già il numero massimo di VM.
- Riduci il numero di altre VM che utilizzano la prenotazione. Per maggiori informazioni, consulta VM che utilizzano involontariamente le prenotazioni.
Per verificare se la VM utilizza la prenotazione, vedi Verificare il consumo della prenotazione.
Se la prenotazione non è completamente consumata, ma la VM non la utilizza, puoi risolvere ulteriormente il problema creando una VM che ha come target una prenotazione specifica, che restituisce un errore se il consumo non riesce. Per saperne di più, vai alla sezione successiva.
Quota di risorse superata per le prenotazioni condivise
Problema: una VM non utilizza una prenotazione condivisa perché il progetto non dispone di quota sufficiente per le risorse che stai tentando di utilizzare.
Soluzione: le prenotazioni condivise hanno requisiti di quota aggiuntivi. Se hai bisogno di aumentare la quota nel tuo progetto per utilizzare le risorse prenotate, consulta Richiedere una quota superiore nella documentazione di Cloud Quotas.
Conteggio delle VM non ripristinato dopo l'arresto o l'eliminazione di una VM
Problema: se arresti, sospendi o elimini una VM che utilizza una prenotazione, l'operazione deve essere completata prima che la VM non venga più conteggiata ai fini della prenotazione e che le risorse utilizzate in precedenza siano di nuovo disponibili per il consumo.
Soluzione: attendi alcuni minuti per il completamento dell'operazione di interruzione, sospensione o eliminazione sulle VM. Per verificare che le VM arrestate, sospese o eliminate non siano più conteggiate ai fini della prenotazione, controlla il numero totale di VM consumate nella prenotazione utilizzando uno dei seguenti metodi:
Opzione consigliata: monitora la prenotazione e cerca un cambiamento nelle misure della prenotazione.
Visualizza i dettagli della prenotazione e verifica se il valore del campo
inUseCount
è diminuito. Se il valore non è diminuito, una o più VM hanno iniziato a utilizzare la prenotazione mentre l'operazione di interruzione, sospensione o eliminazione era in corso.
VM che consumano involontariamente le prenotazioni
Problema: quando crei prenotazioni che vengono utilizzate automaticamente (impostazione predefinita), le VM potrebbero utilizzare involontariamente queste prenotazioni.
Soluzione: puoi aiutare a controllare quali VM utilizzano le prenotazioni seguendo questi passaggi:
- Utilizza VM che non possono utilizzare nessuna prenotazione dove selezionata.
- Usa le prenotazioni utilizzate solo se scelte come target specifico anziché le prenotazioni utilizzate automaticamente.