Questo documento descrive come proteggere istanze VM specifiche dall'eliminazione
impostando la proprietà deletionProtection
su una risorsa istanza. Per scoprire di più sulle istanze VM, consulta la documentazione relativa alle istanze.
Nell'ambito del tuo workload, potrebbero esserci alcune istanze VM fondamentali per l'esecuzione dell'applicazione o dei servizi, ad esempio un'istanza che esegue un server SQL, un server utilizzato come gestore delle licenze e così via. Queste istanze VM potrebbero dover rimanere in esecuzione a tempo indeterminato, quindi devi proteggerle dall'eliminazione.
Se imposti il flag deletionProtection
, un'istanza VM può essere protetta dall'eliminazione accidentale. Se un utente tenta di eliminare un'istanza VM per la quale
hai impostato il flag deletionProtection
, la richiesta non riesce. Solo un utente a cui è stato concesso un ruolo con l'autorizzazione compute.instances.create
può reimpostare il flag per consentire l'eliminazione della risorsa.
Prima di iniziare
- Leggi la documentazione relativa alle istanze.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è
il processo mediante il quale la tua identità viene verificata per l'accesso ai Google Cloud servizi e alle API.
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
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
La prevenzione dell'eliminazione non impedisce le seguenti azioni:
- Terminazione di un'istanza dall'interno della VM
(ad esempio, esecuzione del comando
shutdown
) - Arresto di un'istanza
- Reimpostazione di un'istanza
- Sospensione di un'istanza
- Istanze rimosse per frode e abuso dopo essere state rilevate da Google
- Istanze in fase di rimozione a causa della chiusura del progetto
- Terminazione di un'istanza dall'interno della VM
(ad esempio, esecuzione del comando
La protezione dall'eliminazione può essere applicata sia alle VM normali che a quelle prerilasciabili.
La protezione dall'eliminazione non può essere applicata alle VM che fanno parte di un gruppo di istanze gestite, ma può essere applicata alle istanze che fanno parte di gruppi di istanze non gestite.
La prevenzione dell'eliminazione non può essere specificata nei modelli di istanza.
compute.instances.create
compute.admin
compute.instanceAdmin.v1
Nella console Google Cloud , vai alla pagina Crea un'istanza.
Espandi la sezione Opzioni avanzate e segui questi passaggi:
- Espandi la sezione Gestione.
- Seleziona la casella di controllo Attiva la protezione da eliminazione.
Continua con il processo di creazione della VM.
Vai alla pagina Istanze VM.
Se richiesto, seleziona il progetto e fai clic su Continua.
Nella pagina Istanze VM, apri il menu Colonne e attiva Protezione dall'eliminazione.
Viene visualizzata una nuova colonna con l'icona di protezione dall'eliminazione. Se per una VM è abilitata la protezione dall'eliminazione, l'icona viene visualizzata accanto al nome dell'istanza.
Vai alla pagina Istanze VM.
Se richiesto, seleziona il progetto e fai clic su Continua.
Fai clic sul nome dell'istanza per la quale vuoi attivare/disattivare la protezione da eliminazione. Viene visualizzata la pagina dei dettagli dell'istanza.
Nella pagina dei dettagli dell'istanza, completa i seguenti passaggi:
- Fai clic sul pulsante Modifica nella parte superiore della pagina.
In Protezione da eliminazione, seleziona la casella per attivare la protezione da eliminazione o deselezionala per disattivarla.
Salva le modifiche.
- Scopri come arrestare un'istanza.
- Elimina le istanze se non ti servono più.
Vai
Per utilizzare gli esempi di Go questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
Java
Per utilizzare gli esempi di Java questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
Node.js
Per utilizzare gli esempi di Node.js questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
PHP
Per utilizzare gli esempi di PHP questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
Python
Per utilizzare gli esempi di Python questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .
Specifiche
Autorizzazioni
Per eseguire questa attività, devi disporre delle seguenti autorizzazioni O di uno dei seguenti ruoli IAM sulla risorsa.
Autorizzazioni
Ruoli
Impostazione della protezione da eliminazione durante la creazione dell'istanza
Per impostazione predefinita, la protezione da eliminazione è disattivata per la tua istanza. Attiva la protezione dall'eliminazione seguendo le istruzioni riportate di seguito.
Console
gcloud
Quando crei un'istanza VM, includi i flag
--deletion-protection
ono-deletion-protection
. La protezione da eliminazione è disabilitata per impostazione predefinita, quindi per abilitarla:gcloud compute instances create [INSTANCE_NAME] --deletion-protection
dove
[INSTANCE_NAME]
è il nome dell'istanza desiderata.Per disattivare la protezione da eliminazione durante la creazione:
gcloud compute instances create [INSTANCE_NAME] --no-deletion-protection
Vai
Java
Node.js
Python
REST
Nell'API, quando crei un'istanza VM, includi la proprietà
deletionProtection
nel corpo della richiesta. Ad esempio:POST https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances { "name": "[INSTANCE_NAME]", "deletionProtection": "true", ... }
Per disattivare la protezione da eliminazione, imposta
deletionProtection
sufalse
.Determinare se per un'istanza è abilitata la protezione da eliminazione
Puoi determinare se un'istanza ha la protezione da eliminazione abilitata in
gcloud tool
o nell'API.Console
gcloud
In gcloud CLI, esegui il comando
instances describe
e cerca il campo di protezione dall'eliminazione. Ad esempio:gcloud compute instances describe example-instance | grep "deletionProtection"
Lo strumento restituisce il valore della proprietà
deletionProtection
, impostato sutrue
ofalse
:deletionProtection: false
Vai
Java
Node.js
Python
REST
Nell'API, invia una richiesta
GET
e cerca il campodeletionProtection
:GET https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]
Attivazione/disattivazione della protezione dall'eliminazione per le istanze esistenti
Puoi attivare o disattivare la protezione dall'eliminazione per un'istanza esistente, indipendentemente dallo stato attuale dell'istanza. In particolare, non devi arrestare l'istanza prima di poter attivare o disattivare la protezione da eliminazione.
Console
gcloud
Utilizzando gcloud CLI, esegui il comando
update
con il flag--deletion-protection
o--no-deletion-protection
:gcloud compute instances update [INSTANCE_NAME] \ [--deletion-protection | --no-deletion-protection]
Ad esempio, per abilitare la protezione da eliminazione per un'istanza denominata
example-vm
:gcloud compute instances update example-vm --deletion-protection
Vai
Java
Node.js
Python
REST
Nell'API, invia una richiesta
POST
al metodosetDeletionProtection
con il parametro di querydeletionProtection
. Ad esempio:POST https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]/setDeletionProtection?deletionProtection=true
Per disattivare la protezione da eliminazione, imposta
deletionProtection
sufalse
. Non fornire un corpo della richiesta con la richiesta.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 2025-07-11 UTC.
-