Questo documento spiega come arrestare, riavviare, reimpostare o riavviare manualmente un'istanza di una macchina virtuale (VM). Queste operazioni sono utili nei seguenti scenari:
Arresta una VM se non la utilizzi più o se vuoi modificare una o più delle sue proprietà, ad esempio se vuoi rinominarla, modificarne il tipo di macchina, aggiungere o rimuovere i dischi collegati o modificare la piattaforma CPU minima. Dopo aver arrestato la VM, riavviala per riprendere il carico di lavoro o eliminala se non ti serve più.
Reimposta una VM se, ad esempio, non risponde o se il sistema operativo (OS) ospite ha avuto un arresto anomalo. Dopo aver reimpostato la VM, puoi riprendere il tuo workload.
Riavvia una VM dall'OS guest se, ad esempio, vuoi cancellare la memoria della VM e reinizializzarla allo stato di avvio originale. Dopo aver riavviato una VM dal suo sistema operativo guest, puoi riprendere il carico di lavoro.
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.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
Per arrestare una VM:
compute.instances.stop
sulla VM -
Per arrestare una VM dall'interno del sistema operativo guest:
compute.instances.setMetadata
sulla VM se utilizza chiavi SSH pubbliche a livello di istanza. -
Per riavviare una VM:
compute.instances.start
sulla VM -
Per riavviare una VM che utilizza chiavi di crittografia:
compute.instances.startWithEncryptionKey
sulla VM -
Per reimpostare una VM:
compute.instances.reset
sulla VM -
Per riavviare una VM dall'OS guest:
compute.instances.setMetadata
sulla VM Compute Engine invia il segnale di arresto ACPI alla VM e attende un breve periodo di tempo affinché il sistema operativo guest esegua un arresto pulito. Quindi, Compute Engine imposta inizialmente lo stato della VM su
STOPPING
e poi lo passa aTERMINATED
entro un minuto.La VM viene reimpostata sullo stato di accensione e conserva i propri IP interni, indirizzi MAC, impostazioni di configurazione e metadati. Tuttavia, la VM perde i suoi dati in memoria e il suo stato. Se devi conservare i dati in memoria e lo stato della VM, sospendi la VM.
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona le VM da arrestare.
Fai clic su
Interrompi e poi su Interrompi per confermare.VM_NAME
: il nome della VM.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.VM_NAME
: il nome della VM.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.Per un arresto pulito che consenta alla VM di eseguire script di arresto prima di inviare il segnale di arresto ACPI alla VM, esegui il seguente comando:
sudo shutdown -h now
In caso contrario, per forzare l'arresto, esegui il seguente comando:
sudo poweroff
Per un arresto pulito che consenta alla VM di eseguire script di arresto prima di inviare il segnale di arresto ACPI alla VM, esegui il seguente comando:
shutdown /s
In caso contrario, per forzare l'arresto, esegui il seguente comando:
shutdown /f
Riavvia una VM senza dischi criptati (impostazione predefinita).
Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona una o più VM.
Fai clic su
Avvia / riprendi.VM_NAME
: il nome della VM.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.VM_NAME
: il nome della VM da riavviare.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona la VM da riavviare.
Fai clic su
Avvia / riprendi.Specifica le chiavi di crittografia per ciascuno dei dischi criptati collegati a questa VM, quindi fai clic su Inizia.
VM_NAME
: il nome della VM.ENCRYPTION_KEY_FILE
: il percorso relativo al file JSON contenente la chiave di crittografia fornita dal cliente.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.VM_NAME
: il nome della VM.DISK_URL
: URL della risorsa corrispondente al nome completo della risorsa del disco collegato che è stato criptato con una chiave di crittografia fornita dal cliente.ENCRYPTION_TYPE
: il tipo di crittografia del disco in uso, che può essere uno dei seguenti:rawKey
,kmsKeyName
orsaEncryptedKey
. Se utilizzi il tiporsaEncryptedKey
, devi effettuare una richiestaPOST
all'API beta anziché all'API v1.ENCRYPTION_KEY
: la chiave di crittografia utilizzata per criptare i dischi permanenti collegati alla VM. Le chiavirawKey
orsaEncryptedKey
devono essere codificate in base64. Inoltre, per preparare una chiaversaEncryptedKey
, consulta Wrapping delle chiavi RSA.La VM viene reinizializzata allo stato di avvio iniziale con i metadati, l'immagine e i dischi permanenti originali.
La VM cancella forzatamente i contenuti della memoria della macchina, a meno che non esegui il backup dei dati.
Lo stato della VM rimane
RUNNING
durante la procedura.Nella console Google Cloud, vai alla pagina Istanze VM.
Seleziona le VM da reimpostare.
Fai clic su Reimposta, quindi di nuovo su Reimposta.
VM_NAME
: il nome della VM.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.VM_NAME
: il nome della VM.PROJECT_ID
: l'ID del progetto in cui si trova la VM.ZONE
: la zona in cui si trova la VM.La VM viene reinizializzata allo stato di avvio iniziale con i metadati, l'immagine e i dischi permanenti originali.
La VM cancella i contenuti della memoria della macchina, a meno che non esegui il backup dei dati.
Lo stato della VM rimane
RUNNING
durante la procedura.Scollega queste risorse dalla VM arrestata.
Elimina la VM. Questa azione elimina anche le risorse collegate alla VM.
Scopri come pianificare l'avvio e l'arresto automatico delle VM.
Scopri come limitare il tempo di esecuzione di una VM.
Scopri come risolvere i problemi di una VM dopo l'arresto imprevisto eseguendo una delle seguenti operazioni:
Risolvi i problemi della VM utilizzando la console seriale interattiva.
Scopri come modificare il tipo di macchina in una VM.
Vai
Per utilizzare gli Go esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Java
Per utilizzare gli Java esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Node.js
Per utilizzare gli Node.js esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
PHP
Per utilizzare gli PHP esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
Python
Per utilizzare gli Python esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia alla gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
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 ulteriori informazioni, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per arrestare e riavviare una VM, chiedi all'amministratore di concederti il ruolo IAM Amministratore istanze Compute (v1) (
roles/compute.instanceAdmin.v1
) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Questo ruolo predefinito contiene le autorizzazioni necessarie per arrestare e riavviare una VM. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per arrestare e riavviare una VM sono necessarie le seguenti autorizzazioni:
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Arrestare una VM
Quando interrompi una VM in esecuzione, si verifica quanto segue:
Inoltre, se hai collegato risorse alla VM, queste rimangono collegate finché non le scolleghi manualmente o non elimini la VM. Se alla VM sono collegati dischi SSD locali, per impostazione predefinita l'arresto della VM comporta l'eliminazione di tutti i dati sui dischi SSD locali. Per conservare i dati sui dischi SSD locali, devi arrestare la VM utilizzando gcloud CLI con il flag
--discard-local-ssd=false
. Per ulteriori informazioni, consulta Interrompere una VM con SSD locale.Per arrestare una VM, seleziona uno dei metodi descritti in questo documento:
Dopo aver arrestato una VM, puoi riavviare o eliminarla. Se non prevedi di riavviare la VM, ti consigliamo di eliminarla.
Arrestare una VM tramite Google Cloud
Per arrestare più di una VM alla volta, utilizza la console Google Cloud.
Console
Per arrestare una o più VM:
gcloud
Per arrestare una VM, utilizza il comando
gcloud compute instances stop
.gcloud compute instances stop VM_NAME \ --project=PROJECT_ID \ --zone=ZONE
Sostituisci quanto segue:
Se hai collegato un disco SSD locale alla VM e vuoi conservare i dati dell'SSD locale dopo l'arresto della VM, utilizza il comando
gcloud beta compute instances stop
con il flag--discard-local-ssd=false
.gcloud beta compute instances stop VM_NAME \ --discard-local-ssd=false \ --project=PROJECT_ID \ --zone=ZONE
Vai
Java
Node.js
PHP
Python
REST
Per arrestare una VM, invia una richiesta
POST
al metodoinstances.stop
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Sostituisci quanto segue:
Arrestare una VM dall'interno del sistema operativo guest
Per arrestare una VM dall'interno del sistema operativo guest quando sei connesso alla VM, seleziona una delle seguenti schede.
Linux
Per arrestare una VM Linux, seleziona uno dei seguenti metodi:
Windows
Per arrestare una VM Windows, seleziona uno dei seguenti metodi:
Riavviare una VM
Puoi riavviare una VM arrestata solo se è nello stato
TERMINATED
. Per riavviare una VM, seleziona uno dei seguenti metodi descritti in questo documento:Riavviare una VM senza dischi criptati
Riavvia una VM arrestata che non utilizza dischi criptati (valore predefinito). Per riavviare più di una VM alla volta, utilizza la console Google Cloud.
Console
Per riavviare una o più VM, procedi nel seguente modo:
gcloud
Per riavviare una VM, utilizza il comando
gcloud compute instances start
.gcloud compute instances start VM_NAME \ --project=PROJECT_ID \ --zone=ZONE
Sostituisci quanto segue:
Vai
Java
Node.js
PHP
Python
REST
Per riavviare una VM, invia una richiesta
POST
al metodoinstances.start
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
Sostituisci quanto segue:
Riavviare una VM che utilizza dischi criptati
Puoi riavviare una VM arrestata che utilizza chiavi di crittografia fornite dal cliente per criptare i dischi permanenti collegati alla VM.
Console
Per riavviare una VM che utilizza dischi criptati:
gcloud
Per riavviare una VM che utilizza dischi criptati, utilizza il comando
gcloud compute instances start
con il flag--csek-key-file
. Se utilizzi una chiave con wrapping RSA, utilizza il comandogcloud beta compute instances start
.gcloud compute instances start VM_NAME \ --csek-key-file=ENCRYPTION_KEY_FILE \ --project=PROJECT_ID \ --zone=ZONE
Sostituisci quanto segue:
Vai
Java
Node.js
PHP
Python
REST
Per riavviare una VM che utilizza dischi criptati, invia una richiesta
POST
al metodoinstances.startWithEncryptionKey
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/startWithEncryptionKey { "disks": [ { "source": "DISK_URL", "diskEncryptionKey": { "ENCRYPTION_TYPE": "ENCRYPTION_KEY" } } ] }
Sostituisci quanto segue:
Reimpostare una VM
Il ripristino dei dati di fabbrica di una VM in esecuzione è simile al riavvio forzato del computer, ad esempio quando premi un pulsante di reset o tieni premuto il tasto di accensione. Quando resetti una VM, non dai alla VM il tempo di eseguire un arresto pulito del sistema operativo guest. Di conseguenza, i file system del disco potrebbero essere danneggiati. Google Cloud consiglia di reimpostare una VM solo se il sistema operativo guest ha avuto un arresto anomalo e non hai altre opzioni. Se vuoi inizializzare di nuovo una VM ed eseguire un arresto pulito, consulta la sezione Riavviare una VM in questo documento.
Quando reimposti una VM, si verifica quanto segue:
Il ripristino dei dati di fabbrica di una VM non modifica alcuna delle sue proprietà. La VM conserva i propri IP effimeri, gli IP esterni statici, i dischi permanenti, i dischi SSD locali (se presenti) e il tipo di macchina.
Console
Per reimpostare una o più VM in esecuzione, procedi nel seguente modo:
gcloud
Per reimpostare una VM in esecuzione, utilizza il comando
gcloud compute instances reset
.gcloud compute instances reset VM_NAME \ --project=PROJECT_ID \ --zone=ZONE
Sostituisci quanto segue:
Vai
Java
Node.js
PHP
Python
REST
Per reimpostare una VM in esecuzione, invia una richiesta
POST
al metodoinstances.reset
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/reset
Sostituisci quanto segue:
Riavviare una VM
Quando riavvii una VM dall'interno del sistema operativo guest, si verifica quanto segue:
Rispetto al ripristino dei dati di fabbrica di una VM, il riavvio di una VM dall'interno del sistema operativo guest attende che la VM completi tutte le attività in esecuzione prima di inviare il segnale di arresto ACPI alla VM. In questo modo la VM può eseguire un arresto pulito.
Il riavvio di una VM non modifica alcuna delle sue proprietà. La VM conserva i propri IP effimeri, gli IP esterni statici, i dischi permanenti, i dischi SSD locali (se presenti) e il tipo di macchina.
Linux
Per reimpostare una VM Linux, riavvia il sistema operativo guest eseguendo il seguente comando:
sudo reboot
Windows
Per reimpostare una VM Windows, riavvia il sistema operativo guest eseguendo il seguente comando:
shutdown /r /t 0
Se vuoi, per monitorare il processo di arresto e riavvio della VM, attiva il menu di Avvio di Windows.
Fatturazione
Dopo che una VM è stata arrestata e Compute Engine ne ha impostato lo stato su
TERMINATED
, non dovrai più pagare per l'utilizzo della CPU. Tuttavia, continuerai a sostenere gli addebiti per le risorse collegate alla VM, ad esempio dischi permanenti e indirizzi IP esterni.Per non incorrere più in addebiti per le risorse collegate a una VM, esegui una delle seguenti operazioni:
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-12-19 UTC.
-