Questo documento descrive come risolvere i problemi relativi a VM Manager.
Per ulteriori informazioni su VM Manager, consulta VM Manager.
Prima di iniziare
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è la procedura mediante la quale la tua identità viene verificata per l'accesso alle API e ai servizi Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Qualsiasi messaggio di errore o avviso registrato dalla VM. È ideale per identificare errori a livello di VM o errori di altri servizi in esecuzione sulla VM. Per esaminare questi log, consulta Esaminare Cloud Logging.
- Informazioni di debug dettagliate registrate dall'agente OS Config. Questo è utile per identificare i problemi relativi a qualsiasi operazione eseguita da VM Manager. Per controllare i log di debug dell'agente OS Config, vedi Controllare i log di debug.
- Nella console Google Cloud, vai alla scheda Job patch nella pagina Gestione delle patch del sistema operativo.
- Fai clic sul nome del job di applicazione patch che vuoi eseguire il debug.
- Scorri verso il basso fino a Istanze VM aggiornate.
- Per una VM specifica, fai clic su Visualizza in Log.
- Nella console Google Cloud, vai alla scheda Istanze VM nella pagina Gestione della configurazione del sistema operativo.
- Fai clic sul nome della VM che vuoi eseguire il debug.
- Scorri verso il basso fino a Norme.
- In Log, fai clic su Visualizza.
Nella console Google Cloud, vai alla pagina Istanze VM.
Fai clic sul nome della VM per cui vuoi impostare il valore dei metadati.
Nella pagina Dettagli istanza, fai clic su Modifica per modificare le impostazioni.
In Metadati personalizzati, aggiungi le seguenti voci di metadati:
Chiave:
osconfig-log-level
Valore:debug
Fai clic su Salva per applicare le modifiche alla VM.
- Cloud Logging: utilizza la console Google Cloud o Google Cloud CLI
Console porta seriale
Vai alla pagina Logging > Esplora log (Esplora log) nella console Google Cloud:
Se necessario, seleziona un progetto Google Cloud esistente nella parte superiore della pagina o creane uno nuovo.
Nell'elenco a discesa Risorsa, seleziona Istanza VM. Viene visualizzato un elenco delle VM disponibili (
instance_id
).Fai clic sulla VM che vuoi visualizzare.
Fai clic su Aggiungi.
Nell'elenco a discesa Nome log, seleziona OSConfigAgent.
Fai clic su Aggiungi.
La query dovrebbe essere simile alla seguente:
resource.type="gce_instance" resource.labels.instance_id="INSTANCE_ID" logName="projects/PROJECT_ID/logs/OSConfigAgent"
Fai clic su Esegui query.
- Un account di servizio associato. VM Manager utilizza questo account di servizio per firmare le richieste al servizio API.
- Assicurati che l'account di servizio collegato abbia il ruolo
roles/logging.logWriter
per scrivere log nell'API Logging. - Agente servizio Cloud OS Config. VM Manager crea questo agente di servizio quando avvia i job di aggiornamento e gli assegna il ruolo Cloud OS Config Service Agent. Per creare criteri del sistema operativo, non è necessario configurare questo agente di servizio.
- Verifica che a tutte le VM sia associato un account di servizio.
Assicurati che il ruolo Agente di servizio Cloud OS Config (
roles/osconfig.serviceAgent
) sia impostato sull'agente di servizio Cloud OS Config.gcloud projects add-iam-policy-binding PROJECT_ID \ --member='serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com' \ --role='roles/osconfig.serviceAgent'
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progettoPROJECT_NUMBER
: il tuo numero di progetto
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per saperne di più, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Panoramica
Per risolvere i problemi, verifica innanzitutto che VM Manager sia configurato correttamente. Se la configurazione è corretta, ma i problemi persistono, puoi esaminare i log. Quando esamini i log, puoi identificare i problemi relativi alla VM o al flusso di lavoro di VM Manager, ad esempio errori in comandi o script, che puoi isolare e risolvere.
Dai log puoi raccogliere le seguenti informazioni:
Dopo aver identificato i problemi o gli errori, puoi anche consultare la sezione degli errori comuni per vedere le potenziali correzioni.
Controllare Cloud Logging
Puoi utilizzare i link rapidi della console Google Cloud per ogni funzionalità per visualizzare i log di una VM specifica.
Patch del sistema operativo
Criteri di sistema operativo
Questa procedura è supportata per i criteri del sistema operativo. Per i criteri guest (beta), utilizza l'opzione dei log di debug nella sezione seguente.
Controllare i log di debug
Puoi identificare i problemi relativi a qualsiasi funzionalità di VM Manager attivando il debug per l'agente OS Config e visualizzando il log di debug.
Attivare il logging di debug per l'agente OS Config
Puoi attivare il logging di debug impostando i metadati
osconfig-log-level=debug
sul progetto o sull'istanza VM.Per attivare la registrazione di debug sulla VM, completa i seguenti passaggi:
Console
gcloud
Utilizza il comando
instances add-metadata
con il flag--metadata=osconfig-log-level=debug
.gcloud compute instances add-metadata VM_NAME \ --metadata=osconfig-log-level=debug
Sostituisci
VM_NAME
con il nome della VM.REST
Per istruzioni su come impostare i metadati delle istanze, segui le istruzioni dell'API per l'impostazione dei metadati delle istanze.
La seguente coppia chiave/valore è obbligatoria all'interno della proprietà metadata:
Chiave:
osconfig-log-level
Valore:debug
Visualizzare i log di debug
Quando la registrazione di debug è attiva, l'agente di configurazione del sistema operativo scrive le voci di log in Cloud Logging e nella console della porta seriale.
Dopo aver attivato la registrazione di debug sulla VM, l'agente OS Config impiega circa dieci minuti per iniziare a scrivere i messaggi di debug in Cloud Logging. Puoi ridurre questo tempo di attesa riavviando l'agente o la VM. Per ulteriori informazioni su Cloud Logging, consulta Visualizzazione dei log di Cloud Logging.
Per visualizzare i log di debug, puoi utilizzare le seguenti opzioni:
Console
gcloud
Esegui il comando
gcloud logging read
.gcloud logging read "resource.type=gce_instance AND logName=projects/PROJECT_ID/logs/OSConfigAgent"
Sostituisci
PROJECT_ID
con l'ID progetto.Porta seriale
Per visualizzare le informazioni dei log di debug dalla console della porta seriale, consulta Visualizzazione dell'output della porta seriale.
Errori comuni
Problemi di autenticazione
Affinché VM Manager funzioni, devi disporre di quanto segue:
Se utilizzi VM Manager e non hai un account di servizio collegato o un agente di servizio di configurazione del sistema operativo Google Cloud, potresti visualizzare i seguenti errori durante l'utilizzo dei job di patch:
Service account permissions are missing. Verify that the service account has the correct permissions and try again.
OSConfigAgent Error main.go:88: error getting token from metadata: metadata: GCE metadata "instance/service-accounts/default/identity?audience=osconfig.googleapis.com&format=full" not defined
message: "Error running OPERATION_NAME: error calling OPERATION_NAME: code: "PermissionDenied", message: "The caller does not have permission", details: []"
I problemi di autenticazione potrebbero anche impedire la visualizzazione delle istanze VM nella dashboard delle patch.
Per risolvere questi problemi, prova una o tutte le seguenti operazioni:
Errore durante l'esclusione dei pacchetti per gli aggiornamenti delle patch
Se specifichi caratteri jolly o caratteri speciali per il nome dei pacchetti quando escludi i pacchetti in un job di applicazione patch, la gestione delle patch del sistema operativo potrebbe ignorare l'elenco e aggiornare tutti i pacchetti.
Per risolvere il problema, aggiorna l'agente OS Config alla versione
20220829.00
e utilizza le barre oblique (/
) per inserire il nome del pacchetto.Nell'esempio seguente, la gestione delle patch del sistema operativo esclude i pacchetti
yum
con prefissogoogle-
nel nome del pacchetto.gcloud compute os-config patch-jobs execute --instance-filter-all
--yum-excludes=/google-.*/Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-11-23 UTC.
-