Questo documento descrive come proteggere dall'eliminazione istanze VM specifiche impostando la proprietà deletionProtection
su una risorsa istanza. Per apprendere
per ulteriori informazioni sulle istanze VM, leggi il post Istanze
documentazione.
All'interno del carico di lavoro, potrebbero essere presenti alcune istanze VM critiche all'esecuzione dell'applicazione o dei servizi, ad esempio un'istanza che esegue server, un server usato come gestore licenze e così via. Queste istanze VM potrebbero devono rimanere in esecuzione a tempo indeterminato, quindi ti serve un modo per proteggerle in fase di eliminazione.
Impostando il flag deletionProtection
, un'istanza VM può essere protetta
per eliminazione accidentale. Se un utente tenta di eliminare un'istanza VM per la quale hai impostato il flag deletionProtection
, la richiesta non va a buon fine. Solo un utente
è stato concesso un ruolo con l'autorizzazione compute.instances.create
può reimpostare
per consentire l'eliminazione della risorsa.
Prima di iniziare
- Leggi la documentazione relativa alle istanze.
-
Se non l'hai già fatto, configura l'autenticazione.
Autenticazione è
Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine come segue.
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.
La prevenzione dell'eliminazione non impedisce le seguenti azioni:
- Terminazione di un'istanza dall'interno della VM
(ad esempio l'esecuzione del comando
shutdown
) - Arrestare un'istanza
- Reimpostazione di un'istanza
- Sospensione di un'istanza
- Rimozione delle istanze a causa di attività fraudolente o comportamenti illeciti in seguito al rilevamento da parte di Google
- Istanze rimosse a causa della terminazione del progetto
- Terminazione di un'istanza dall'interno della VM
(ad esempio l'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 ed esegui la seguenti:
- Espandi la sezione Gestione.
- Seleziona la casella di controllo Abilita la protezione da eliminazione.
Continua con la procedura di creazione della VM.
Vai alla pagina delle istanze VM.
Se richiesto, seleziona il progetto e fai clic su Continua.
Nella pagina Istanze VM, apri il menu Colonne e abilita Protezione da eliminazione.
Viene visualizzata una nuova colonna con l'icona di protezione dall'eliminazione. Se per una VM è attivata la protezione dall'eliminazione, l'icona viene visualizzata accanto al nome dell'istanza.
Vai alla pagina delle istanze VM.
Se richiesto, seleziona il progetto e fai clic su Continua.
Fai clic sul nome dell'istanza di cui vuoi attivare/disattivare l'eliminazione protezione dei dati. Viene visualizzata la pagina dei dettagli dell'istanza.
Dalla 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 o deselezionala per disattivare la protezione da eliminazione.
Salva le modifiche.
- Scopri come interrompere un'istanza.
- Eliminare le istanze se non ne hai più bisogno.
Vai
Per utilizzare gli Go esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia a riga di comando gcloud, 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 a riga di comando gcloud, 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 una località dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura 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 PHP esempi in questa pagina in una località dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura 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 Python esempi in questa pagina in un ambiente di sviluppo locale, installa e inizializza l'interfaccia a riga di comando gcloud, 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 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, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Specifiche
Autorizzazioni
Per eseguire questa attività, devi disporre delle seguenti autorizzazioni OPPURE di uno dei seguenti ruoli IAM per la risorsa.
Autorizzazioni
Ruoli
Impostazione della protezione da eliminazione durante la creazione dell'istanza
Per impostazione predefinita, la protezione da eliminazione è disattivata per l'istanza. Abilita eliminazione seguire le istruzioni riportate di seguito.
Console
gcloud
Quando crei un'istanza VM, includi
--deletion-protection
ono-deletion-protection
e i flag facoltativi. La protezione dall'eliminazione è disabilitata per impostazione predefinita, quindi per attivarla: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, include 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 per un'istanza è abilitata la protezione da eliminazione in
gcloud tool
o nell'API.Console
gcloud
In gcloud CLI, esegui il comando
instances describe
e cerca il campo della protezione dall'eliminazione. Ad esempio:gcloud compute instances describe example-instance | grep "deletionProtection"
Lo strumento restituisce il valore della proprietà
deletionProtection
, impostata sutrue
ofalse
:deletionProtection: false
Vai
Java
Node.js
Python
REST
Nell'API, effettua una richiesta
GET
e cerca il campodeletionProtection
:GET https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]
Attivare/disattivare la protezione da eliminazione per le istanze esistenti
Puoi attivare/disattivare la protezione da eliminazione per un'istanza esistente, indipendentemente dal lo stato attuale dell'istanza. Nello specifico, 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 Flag--deletion-protection
o--no-deletion-protection
:gcloud compute instances update [INSTANCE_NAME] \ [--deletion-protection | --no-deletion-protection]
Ad esempio, per attivare la protezione da eliminazione per un'istanza denominata
example-vm
:gcloud compute instances update example-vm --deletion-protection
Vai
Java
Node.js
Python
REST
Effettua una richiesta
POST
nell'API 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.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-10-14 UTC.
-