Deprovisioning della rete VPC condivisa
Questa pagina descrive come eseguire il deprovisioning di una configurazione VPC condivisa esistente, scollegando tutti i progetti di servizio da un progetto host VPC condiviso. Il deprovisioning è un processo unidirezionale. Assicurati di conoscere le pagine VPC condiviso e Esegui il provisioning di VPC condiviso.
Attività di amministrazione del progetto di servizio
In ogni progetto di servizio collegato al progetto host del VPC condiviso, un amministratore del progetto di servizio deve rimuovere tutte le dipendenze sul progetto host. Le dipendenze potrebbero includere istanze, gruppi di istanze, modelli di istanze, servizi di backend e regole di inoltro.
Determinare le risorse interessate
Per identificare le risorse che dipendono dal progetto host VPC condiviso, un amministratore del progetto di servizio può elencare le sue subnet condivise. Quando il progetto di servizio viene scollegato dal progetto host, queste subnet non saranno più disponibili, pertanto tutte le risorse che dipendono da queste saranno interessate.
Elimina risorse
Una volta che un amministratore del progetto di servizio ha identificato le risorse interessate dalla procedura 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 whose definitions depend on the host project.
Elimina le regole di inoltro interno per i bilanciatori del carico TCP/UDP interni che fanno riferimento a una sottorete in una rete VPC condiviso del progetto host.
Elimina gli indirizzi IP interni statici utilizzati dalle interfacce di rete dalle VM in altre reti.
Per farlo, devi prima ottenere un elenco degli indirizzi riservati, quindi eliminarli.
Attività di amministrazione del bilanciatore del carico
Gli Application Load Balancer interni e gli Application Load Balancer esterni regionali ti consentono di configurare il bilanciatore del carico in modo che una mappa URL in un progetto host o di servizio possa fare riferimento ai servizi di backend (e ai backend) situati in più progetti negli ambienti 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 URL per rimuovere i riferimenti ai servizi di backend nel progetto di servizio.
Attività di amministratore del VPC condiviso
Tutte le attività in questa sezione devono essere eseguite da un amministratore VPC condiviso.
Dissocia i progetti di servizio
Ripeti questi passaggi per ogni progetto di servizio da scollegare dal progetto host VPC condiviso.
Console
Per visualizzare la pagina VPC condiviso nella console Google Cloud, devi disporre del ruolo Amministratore del VPC condiviso.
- Vai alla pagina Rete VPC condivisa nella console Google Cloud.
Vai a Rete VPC condivisa - Accedi come amministratore della VPC condivisa.
- Seleziona il progetto host da cui stai rimuovendo i progetti di servizio.
- Fai clic sulla scheda Progetti allegati.
- Seleziona il progetto di servizio da 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, autenticati in
gcloud
come amministratore VPC condiviso. Sostituisci SHARED_VPC_ADMIN con il nome dell'amministratore 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_ID
Verifica 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
gcloud
per proteggere le credenziali del tuo account amministratore VPC condiviso. 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 ulteriori informazioni, consulta il metodo
projects.disableXpnResource
.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 ulteriori informazioni, consulta il metodo
projects.getXpnHost
.Elenca i progetti di servizio associati al progetto host VPC condiviso per confermare che il progetto non è più elencato.
GET https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/getXpnResources
Sostituisci HOST_PROJECT_ID con l'ID del progetto host.
Per ulteriori informazioni, consulta il metodo
projects.getXpnResources
.
Viene disabilitato il progetto host
La disattivazione del VPC condiviso per il progetto host è possibile solo dopo aver scollegato tutti i progetti di servizio. Se viene disattivato, il blocco che impedisce l'eliminazione facile viene rimosso automaticamente.
Console
Per visualizzare la pagina VPC condiviso nella console Google Cloud, devi disporre del ruolo Amministratore del VPC condiviso.
- Vai alla pagina Rete VPC condivisa nella console Google Cloud.
Vai a Rete VPC condivisa - Accedi come amministratore della VPC condivisa.
- Seleziona il progetto host che vuoi disattivare.
- Fai clic sul pulsante Disattiva rete VPC condivisa.
- 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, autenticati in
gcloud
come amministratore VPC condiviso. Sostituisci SHARED_VPC_ADMIN con il nome dell'amministratore VPC condiviso:gcloud auth login SHARED_VPC_ADMIN
Disattiva la 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 della tua organizzazione (determinato da
gcloud organizations list
).gcloud compute shared-vpc organizations list-host-projects ORG_ID
Se devi solo disattivare un progetto host, puoi uscire da
gcloud
per proteggere le credenziali del tuo account amministratore VPC condiviso. In caso contrario, salta questo passaggio e vai a elimina projects.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 ulteriori informazioni, consulta il metodo
projects.disableXpnHost
.Elenca i progetti host per verificare che il progetto non sia elencato.
POST https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/listXpnHosts
Sostituisci HOST_PROJECT_ID con l'ID del progetto host.
Per ulteriori informazioni, consulta il metodo
projects.listXpnHosts
.
Elimina progetti
Questa sezione illustra l'eliminazione dei progetti che non vengono più utilizzati. Ad esempio, potresti avere progetti di servizio che devono essere eliminati dopo essere stati staccati da un progetto host oppure potresti non avere più bisogno del progetto host dopo averlo disattivato.
Eliminare il progetto host
Puoi scegliere di mantenerlo come progetto normale o chiuderlo. La chiusura di un progetto comporta la sua eliminazione.
Un'entità IAM può eliminare il progetto host se dispone del ruoloresourcemanager.projectDeleter
per la tua organizzazione o se è il proprietario del progetto host.
Gli amministratori della VPC condivisa potrebbero essere in grado di eliminare i progetti host se dispongono del ruolo o della proprietà corretto.
Eliminare il progetto di servizio
Puoi scegliere di chiudere ogni progetto di servizio se non ti servono più. Prima di procedere, assicurati che il progetto di servizio sia stato scollegato dal progetto host.
Un'entità IAM può eliminare un progetto di servizio se dispone del ruoloresourcemanager.projectDeleter
per la tua organizzazione o se è il proprietario del progetto di servizio. Gli amministratori dei progetti di servizio potrebbero essere in grado di eliminare i progetti di servizio se dispongono del ruolo o della proprietà corretti.
Eliminare forzatamente un progetto host
Quando la VPC condivisa è attiva per un progetto host, viene applicato un blocco sul progetto per impedirne l'eliminazione accidentale. Poiché questo blocco può essere rimosso da un proprietario del progetto, le linee guida per il provisioning di una VPC condivisa includono i passaggi per definire un criterio dell'organizzazione che limiti 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 VPC condivisa è stata disattivata, il blocco che protegge il progetto host viene rimosso automaticamente.
Questa sezione descrive in dettaglio come arrestare forzatamente un progetto host. Ti consigliamo di prendere in considerazione questa opzione solo nelle seguenti circostanze:
- Non puoi seguire la normale procedura di scollegamento dei progetti di servizio e di disattivazione del VPC condiviso.
- Esistono altri vincoli che proteggono il progetto host oltre a quello aggiunto automaticamente.
Se chiudi forzatamente un progetto host e hai risorse nei progetti di servizio che utilizzano la rete VPC condiviso, si verificano i seguenti eventi:
- Tutte le reti VPC condivise, le relative subnet, le route, le regole firewall e tutte le risorse di rete nel progetto host vengono eliminate.
- Le risorse, ad esempio le istanze in esecuzione nei progetti di servizio collegati al progetto host, vengono interrotte.
- I bilanciatori del carico TCP/UDP interni vengono disattivati se le relative regole di inoltro dipendono dalla rete VPC condiviso.
gcloud
Esegui l'autenticazione in
gcloud
come entità IAM che può rimuovere un collegamento al progetto. Se hai un criterio dell'organizzazione che limita le persone che possono rimuovere i blocchi, devi autenticarti come entità IAM con il ruoloresourcemanager.lienModifier
per la tua organizzazione. Se non hai adottato questo tipo di norme, il proprietario del progetto host può rimuovere il blocco.Sostituisci ACCOUNT con il nome del principale IAM appropriato:
gcloud auth login ACCOUNT
Elenca i pignoramenti 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 presenti altri 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 pignoramenti siano stati rimossi.
gcloud alpha resource-manager liens list \ --project HOST_PROJECT_ID
Dopo aver rimosso il blocco, puoi uscire da
gcloud
per proteggere le credenziali dell'entità IAM che ha l'autorizzazione per rimuovere i blocchi.gcloud auth revoke ACCOUNT
Ora il progetto host può essere terminato.
API
Elenca i pignoramenti 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 ulteriori informazioni, consulta il metodo
liens.list
.Rimuovi ogni blocco per nome finché non ne sono presenti altri.
DELETE https://cloudresourcemanager.googleapis.com/v1/liens/LIEN_NAME
Sostituisci LIEN_NAME con il nome del blocco da eliminare.
Per ulteriori informazioni, consulta il metodo
liens.delete
.Elenca di nuovo i pignoramenti per verificare che siano stati rimossi.
Passaggi successivi
- Per ulteriori informazioni sul VPC condiviso, consulta VPC condiviso.
- Per istruzioni su come configurare la VPC condiviso, consulta Eseguire il provisioning della rete VPC condivisa.
- Per istruzioni sulla configurazione dei cluster Google Kubernetes Engine con VPC condiviso, consulta Configurare i cluster con VPC condiviso.