Deprovisioning della rete VPC condivisa
Questa pagina descrive come eseguire il deprovisioning di una configurazione di VPC condiviso esistente, scollegando tutti i progetti di servizio da un progetto host della VPC condiviso. Il deprovisioning è un processo unidirezionale. Assicurati di conoscere le pagine Rete VPC condivisa e Provisioning della rete VPC condivisa prima di procedere.
Attività dell'amministratore del progetto di servizio
In ogni progetto di servizio collegato al progetto host della rete VPC condiviso, un amministratore del progetto di servizio deve rimuovere tutte le dipendenze dal progetto host. Le dipendenze potrebbero includere istanze, gruppi di istanze, modelli di istanza, servizi di backend e regole di forwarding.
Determinare le risorse interessate
Per identificare le risorse che dipendono dal progetto host della VPC condiviso, un amministratore del progetto di servizio può elencare le subnet condivise. Quando il progetto di servizio viene scollegato dal progetto host, queste subnet non saranno più disponibili. Di conseguenza, tutte le risorse che dipendono da queste subnet saranno interessate.
Elimina risorse
Una volta che un amministratore del progetto di servizio ha identificato le risorse che saranno interessate dal processo di deprovisioning, queste risorse dovranno essere eliminate:
Elimina le istanze che utilizzano le subnet nel progetto host.
Elimina i gruppi di istanze gestite e i gruppi di istanze non gestite che utilizzano le subnet nel progetto host.
Elimina i modelli di istanza le cui definizioni dipendono dal progetto host.
Se una risorsa serverless nel progetto di servizio si connette a una rete VPC condiviso nel progetto host utilizzando l'accesso VPC serverless, segui la procedura corrispondente per disconnettere le risorse: servizi e funzioni Cloud Run, job Cloud Run o servizi App Engine. Dopo aver disconnesso le risorse, se il connettore di accesso VPC serverless corrispondente è stato creato in il progetto di servizio, quindi elimina il connettore.
Elimina le regole di forwarding interne per i bilanciatori del carico TCP/UDP interni che fanno riferimento a una subnet in una rete VPC condiviso del progetto host.
Elimina gli indirizzi IP interni statici utilizzati dalle interfacce di rete delle VM in altre reti.
Per farlo, devi prima recuperare un elenco degli indirizzi riservati, quindi eliminarli.
Attività dell'amministratore del bilanciatore del carico
I bilanciatori del carico delle applicazioni interni e i bilanciatori del carico delle applicazioni esterni regionali consentono di configurare il bilanciatore del carico in modo che una mappa URL in un progetto host o di servizio possa fare riferimento a servizi di backend (e backend) che si trovano in più progetti in ambienti di rete VPC condiviso.
Prima di poter eliminare un progetto di servizio, devi assicurarti che tutti i riferimenti tra progetti ai servizi di backend nel progetto di servizio siano stati rimossi. Gli amministratori del bilanciatore del carico dovranno modificare le mappe degli URL per rimuovere i riferimenti ai servizi di backend nel progetto di servizio.
Attività dell'amministratore della rete VPC condivisa
Tutte le attività in questa sezione devono essere eseguite da un amministratore della rete VPC condivisa.
Scollega i progetti di servizio
Ripeti questi passaggi per ogni progetto di servizio che devi scollegare dal progetto host della rete VPC condiviso.
Console
Per visualizzare la pagina Rete VPC condiviso nella Google Cloud console, devi disporre del ruolo Amministratore della rete VPC condivisa.
- Vai alla pagina Rete VPC condivisa nella Google Cloud console.
Vai a Rete VPC condivisa - Accedi come amministratore della rete VPC condivisa.
- Seleziona il progetto host da cui stai rimuovendo i progetti di servizio.
- Fai clic sulla scheda Progetti collegati.
- Seleziona il progetto di servizio che vuoi scollegare.
- Fai clic sul pulsante Scollega progetti.
- Esamina le informazioni nella finestra di dialogo.
- Fai clic su Scollega.
gcloud
Se non l'hai ancora fatto, esegui l'autenticazione a
gcloudcome amministratore della rete VPC condivisa. Sostituisci SHARED_VPC_ADMIN con il nome dell'amministratore della VPC condiviso:gcloud auth login SHARED_VPC_ADMIN
Scollega il progetto di servizio dal progetto host. Sostituisci SERVICE_PROJECT_ID con l'ID progetto del progetto di servizio e HOST_PROJECT_ID con l'ID progetto del progetto host.
gcloud compute shared-vpc associated-projects remove SERVICE_PROJECT_ID --host-project HOST_PROJECT_IDVerifica che il progetto di servizio sia stato scollegato utilizzando uno di questi comandi:
gcloud compute shared-vpc get-host-project SERVICE_PROJECT_ID
gcloud compute shared-vpc list-associated-resources HOST_PROJECT_ID
Se dovevi solo scollegare i progetti di servizio, esci da
gcloudper proteggere le credenziali dell'account amministratore della rete VPC condivisa. In caso contrario, salta questo passaggio e procedi con la disattivazione del progetto host.gcloud auth revoke SHARED_VPC_ADMIN
API
Scollega il progetto di servizio.
POST https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/disableXpnResource { "xpnResource": { "id": "SERVICE_PROJECT_ID" } }Sostituisci i segnaposto con valori validi:
- HOST_PROJECT_ID è l'ID del progetto host.
- SERVICE_PROJECT_ID è l'ID del progetto di servizio da scollegare.
Per maggiori informazioni, consulta il
projects.disableXpnResourcemetodo.Verifica che il progetto di servizio sia stato scollegato.
Verifica che il progetto di servizio non sia collegato a nessun progetto host.
GET https://compute.googleapis.com/compute/v1/projects/SERVICE_PROJECT_ID/getXpnHost
Sostituisci SERVICE_PROJECT_ID con l'ID del progetto di servizio.
Per maggiori informazioni, consulta il
projects.getXpnHostmetodo.Elenca i progetti di servizio collegati al progetto host della rete VPC condiviso per verificare che il progetto non sia più presente nell'elenco.
GET https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/getXpnResources
Sostituisci HOST_PROJECT_ID con l'ID del progetto host.
Per maggiori informazioni, consulta il
projects.getXpnResourcesmetodo.
Viene disabilitato il progetto host
La disattivazione della rete VPC condivisa per il progetto host è possibile solo dopo che tutti i progetti di servizio sono stati scollegati. Quando è disattivato, il blocco che impedisce l'eliminazione semplice viene rimosso automaticamente.
Console
Per visualizzare la pagina Rete VPC condiviso nella Google Cloud console, devi disporre del ruolo Amministratore della rete VPC condivisa.
- Vai alla pagina Rete VPC condivisa nella Google Cloud console.
Vai a Rete VPC condivisa - Accedi come amministratore della rete VPC condivisa.
- Seleziona il progetto host che vuoi disattivare.
- Fai clic sul pulsante Disattiva VPC condiviso.
- Nella finestra di dialogo, leggi attentamente la descrizione.
- Inserisci l'ID progetto del progetto host in ID progetto host.
- Fai clic su Disattiva.
gcloud
Se non l'hai ancora fatto, esegui l'autenticazione a
gcloudcome amministratore della rete VPC condivisa. Sostituisci SHARED_VPC_ADMIN con il nome dell'amministratore della VPC condiviso:gcloud auth login SHARED_VPC_ADMIN
Disattiva la rete VPC condivisa per il progetto host. Sostituisci HOST_PROJECT_ID con l'ID del progetto host.
gcloud compute shared-vpc disable HOST_PROJECT_ID
Verifica che il progetto non sia più elencato come progetto host per la tua organizzazione. Sostituisci ORG_ID con l'ID organizzazione (determinato da
gcloud organizations list).gcloud compute shared-vpc organizations list-host-projects ORG_ID
Se dovevi solo disabilitare un progetto host, puoi uscire da
gcloudper proteggere le credenziali dell'account amministratore della rete VPC condivisa. In caso contrario, salta questo passaggio e continua con l'eliminazione dei progetti.gcloud auth revoke SHARED_VPC_ADMIN
API
Disattiva la rete VPC condivisa per il progetto.
POST https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/disableXpnHost
Sostituisci HOST_PROJECT_ID con l'ID del progetto host.
Per maggiori informazioni, consulta il
projects.disableXpnHostmetodo.Elenca i progetti host per verificare che il progetto non sia presente nell'elenco.
POST https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/listXpnHosts
Sostituisci HOST_PROJECT_ID con l'ID del progetto host.
Per maggiori informazioni, consulta il
projects.listXpnHostsmetodo.
Elimina progetti
Questa sezione descrive l'eliminazione dei progetti che non vengono più utilizzati. Ad esempio, potresti avere progetti di servizio che devono essere eliminati dopo essere stati scollegati da un progetto host oppure potresti non aver più bisogno del progetto host dopo che è stato disattivato.
Elimina progetto host
Puoi scegliere di mantenerlo come progetto normale o di chiuderlo. La chiusura di un progetto comporta la sua eliminazione.
Un'entità IAM può eliminare il progetto host se ha il
resourcemanager.projectDeleter
ruolo per la tua
organizzazione o se è il proprietario del progetto host.
Gli amministratori della rete VPC condivisa potrebbero essere in grado di eliminare i progetti host se dispongono del ruolo o della proprietà corretti.
Elimina progetto di servizio
Puoi scegliere di chiudere ogni progetto di servizio se non ne hai più bisogno. Prima di farlo, assicurati che il progetto di servizio sia stato scollegato dal progetto host.
Un'entità IAM può eliminare un progetto di servizio se ha il
resourcemanager.projectDeleter
ruolo per la tua
organizzazione o se è il proprietario del progetto di servizio. Gli amministratori del progetto di servizio potrebbero essere in grado di eliminare i progetti di servizio se dispongono del ruolo o della proprietà corretti.
Elimina forzatamente un progetto host
Mentre la rete VPC condivisa è attiva per un progetto host, viene inserito un blocco sul progetto per impedirne l'eliminazione accidentale. Poiché questo blocco può essere rimosso da un Project Owner, le linee guida per il provisioning di una rete VPC condivisa includono passaggi per definire una policy dell'organizzazione che limita le entità IAM che hanno la possibilità di rimuovere un blocco del progetto.
In genere, un progetto host deve essere eliminato dopo aver completato le seguenti attività in questo ordine:
- Tutti i progetti di servizio sono stati scollegati dal progetto host e
- La VPC condiviso è stata disattivata.
Quando la rete VPC condivisa è stata disattivata, il blocco che protegge il progetto host viene rimosso automaticamente.
Questa sezione descrive come chiudere forzatamente un progetto host. Dovresti prendere in considerazione questa opzione solo nelle seguenti circostanze:
- Non puoi seguire i passaggi normali per scollegare i progetti di servizio e disattivare la rete VPC condiviso.
- Oltre a quello aggiunto automaticamente, sono presenti altri blocchi che proteggono il progetto host.
Se chiudi forzatamente un progetto host e hai risorse in progetti di servizio che utilizzano la rete VPC condiviso, si verificano i seguenti eventi:
- Vengono eliminate tutte le reti VPC condivise, le relative subnet, le route, le regole firewall e tutte le risorse di rete nel progetto host.
- Le risorse, come le istanze in esecuzione nei progetti di servizio collegati al progetto host, vengono arrestate.
- I bilanciatori del carico TCP/UDP interni vengono disattivati se le relative regole di forwarding dipendono dalla rete VPC condiviso.
gcloud
Esegui l'autenticazione a
gcloudcome entità IAM che può rimuovere un blocco del progetto. Se hai una policy dell'organizzazione che limita le entità che possono rimuovere i blocchi, devi eseguire l'autenticazione come entità IAM con ilresourcemanager.lienModifierruolo per la tua organizzazione. Se non hai una policy di questo tipo, il Project Owner del progetto host può rimuovere il blocco.Sostituisci ACCOUNT con il nome dell'entità IAM appropriata:
gcloud auth login ACCOUNT
Elenca i blocchi associati al progetto host. Sostituisci HOST_PROJECT_ID con l'ID del progetto host.
gcloud alpha resource-manager liens list \ --project HOST_PROJECT_ID
Rimuovi ogni blocco per nome, uno alla volta, finché non sono più presenti blocchi. Sostituisci LIEN_NAME con il nome del blocco da rimuovere.
gcloud alpha resource-manager liens delete LIEN_NAME \ --project HOST_PROJECT_ID
Verifica che tutti i blocchi siano stati rimossi.
gcloud alpha resource-manager liens list \ --project HOST_PROJECT_ID
Dopo aver rimosso il blocco, puoi uscire da
gcloudper proteggere le credenziali dell'entità IAM che ha l'autorizzazione per rimuovere i blocchi.gcloud auth revoke ACCOUNT
Ora il progetto host può essere chiuso.
API
Elenca i blocchi associati al progetto host.
GET https://cloudresourcemanager.googleapis.com/v1/liens?parent=projects:HOST_PROJECT_ID
Sostituisci HOST_PROJECT_ID con l'ID del progetto host.
Per maggiori informazioni, consulta il
liens.listmetodo.Rimuovi ogni blocco per nome finché non sono più presenti blocchi.
DELETE https://cloudresourcemanager.googleapis.com/v1/liens/LIEN_NAME
Sostituisci LIEN_NAME con il nome del blocco da eliminare.
Per maggiori informazioni, consulta il
liens.deletemetodo.Elenca di nuovo i blocchi per verificare che siano stati rimossi.
Risoluzione dei problemi
Impossibile scollegare un progetto di servizio che utilizzava l'accesso VPC serverless
Potresti ricevere un errore quando tenti di scollegare un progetto di servizio per il quale è stato configurato l'accesso VPC serverless, anche se hai eliminato il connettore di accesso VPC serverless associato. Questo errore si verifica perché esiste ancora un'associazione tra una o più risorse serverless nel progetto di servizio e la rete VPC condiviso nel progetto host.
Per risolvere il problema, rimuovi eventuali associazioni al connettore di accesso VPC serverless dalle risorse serverless:
Se uno o più servizi o funzioni Cloud Run utilizzavano un connettore associato alla rete VPC condiviso, allora per ogni servizio o funzione, segui i passaggi per Disconnettere un servizio Cloud Run da una rete VPC.
Se uno o più job Cloud Run utilizzavano un connettore associato alla rete VPC condiviso, segui i passaggi per Disconnettere un job Cloud Run da una rete VPC per ogni job.
Se uno o più servizi App Engine utilizzavano un connettore associato alla rete VPC condiviso, allora per ogni servizio, segui i passaggi per Disconnettere un servizio App Engine da una rete VPC.
Dopo aver disconnesso tutte le risorse serverless dalla rete VPC , scollega il progetto di servizio.
Per evitare che questo problema si ripresenti, assicurati di disconnettere tutte le risorse serverless prima di eliminare un connettore, come descritto in Eliminare un connettore.
In rari casi, potresti comunque ricevere un errore dopo aver completato i passaggi in questa sezione. Se non riesci ancora a eliminare la rete VPC, contatta l'assistenza clienti Google Cloud.
Passaggi successivi
- Per maggiori informazioni sulla VPC condiviso, consulta Rete VPC condivisa.
- Per istruzioni sulla configurazione della VPC condiviso, consulta Provisioning della rete VPC condivisa.
- Per istruzioni sulla configurazione dei cluster Google Kubernetes Engine con la VPC condiviso, consulta Configurare i cluster con la rete VPC condivisa.