Eseguire la migrazione di una subnet di servizio dal peering a Private Service Connect
Questo documento descrive in che modo i produttori di servizi possono eseguire la migrazione dei propri servizi basati su peering a Private Service Connect e conservare l'indirizzo IP utilizzato per accedere al servizio. Questo processo di migrazione richiede che tutte le risorse connesse a una determinata subnet debbano essere migrate contemporaneamente.
Il processo di migrazione viene avviato dal producer di servizi, ma prevede attività completate sia dal producer sia dal consumer. I servizi gestiti da Google possono utilizzare un agente di servizio per eseguire attività per conto del consumatore. La migrazione comporta un tempo di riposo e una variazione dei prezzi sia per il produttore sia per il consumatore.
Ogni producer di servizi decide se e quando eseguire la migrazione a Private Service Connect. Per sapere se un producer di servizi sta eseguendo la migrazione dal peering di rete VPC a Private Service Connect, controlla la documentazione del servizio o contatta il producer di servizi.
Prima di iniziare
- Assicurati di comprendere la procedura di migrazione, incluse le considerazioni per la migrazione.
- Assicurati di conoscere i prezzi per i consumer e i producer di Private Service Connect.
- Assicurati di conoscere la procedura per pubblicare un servizio tramite Private Service Connect.
Esegui il deployment del servizio utilizzando Private Service Connect
Crea una nuova rete VPC, esegui il deployment delle risorse di servizio nella rete e pubblica il servizio tramite Private Service Connect.
Quando crei il bilanciatore del carico per il servizio, utilizza un indirizzo IP diverso da quello utilizzato in precedenza dal bilanciatore del carico. L'indirizzo IP originale sarà necessario in seguito per creare l'endpoint.
Quando pubblichi un servizio, crei un collegamento a un servizio. L'URI del collegamento al servizio è necessario anche in un secondo momento per creare l'endpoint.
Arresta il servizio basato su peering
Per arrestare il servizio basato su peering, devi creare un intervallo interno per prenotare l'intervallo di indirizzi IP del servizio prima di eliminare la subnet del producer.
Crea un intervallo interno
Prima di eliminare la subnet del produttore, crea un intervallo interno per impedire che l'intervallo di indirizzi IP della subnet venga riutilizzato da altre subnet nella rete del produttore o del consumatore.
Per ulteriori informazioni su questo intervallo interno, consulta Intervalli interni per la migrazione.
gcloud
Utilizza il comando internal-ranges create
.
gcloud network-connectivity internal-ranges create RANGE_NAME \ --project=PRODUCER_PROJECT_ID \ --ip-cidr-range=CIDR_RANGE \ --network=PRODUCER_NETWORK_NAME \ --usage=FOR_MIGRATION \ --migration-source=PRODUCER_SUBNET_URI \ --migration-target=CONSUMER_SUBNET_URI
Sostituisci quanto segue:
RANGE_NAME
: il nome del nuovo intervallo interno.PRODUCER_PROJECT_ID
: l'ID del progetto del produttore.CIDR_RANGE
: l'intervallo CIDR da allocare al nuovo intervallo interno.PRODUCER_NETWORK_NAME
: il nome della rete in cui creare l'intervallo interno.PRODUCER_SUBNET_URI
: l'URI della sottorete del produttore che contiene il bilanciatore del carico per il servizio.CONSUMER_SUBNET_URI
: l'URI della subnet consumer prevista. Questa subnet non esiste al momento dell'esecuzione di questo comando.
Elimina la subnet del producer del peering
Prima di poter eliminare la subnet, devi eliminare tutte le risorse al suo interno, ad esempio istanze di macchine virtuali (VM), regole di inoltro, gruppi di istanze, controlli di integrità e indirizzi IP riservati. Dopo aver eliminato le risorse, puoi eliminare la sottorete.
Creare risorse consumer
Collabora con il consumatore di servizi per creare le seguenti risorse nella sua rete VPC. Le risorse possono essere create manualmente o, per i servizi gestiti da Google, possono essere automatizzate tramite un agente di servizio.
Crea una subnet di migrazione dei peer
Crea una subnet di migrazione peer nella rete VPC del consumer per fornire l'indirizzo IP per l'endpoint Private Service Connect.
La subnet ha lo scopo PEER_MIGRATION
che impedisce di utilizzarla per risorse diverse dagli endpoint Private Service Connect.
Per ulteriori informazioni, consulta la sezione Subnet per la migrazione dei peer.
gcloud
Utilizza il comando networks subnets create
.
gcloud compute networks subnets create CONSUMER_SUBNET \ --purpose=PEER_MIGRATION \ --project=CONSUMER_PROJECT \ --network=CONSUMER_NETWORK \ --range=CIDR_RANGE \ --region=REGION
Sostituisci quanto segue:
CONSUMER_SUBNET
: il nome della sottorete del consumatoreCONSUMER_PROJECT
: l'ID del progetto consumerCONSUMER_NETWORK
: il nome della rete del consumatoreCIDR_RANGE
: l'intervallo CIDR da allocare alla nuova subnet; questo intervallo deve corrispondere all'intervallo CIDR dell'intervallo internoREGION
: la regione in cui creare la subnet
Creare un endpoint Private Service Connect
Crea un endpoint Private Service Connect nella subnet di migrazione del peer del consumer. Il consumatore ha bisogno dell'URI del collegamento al servizio per creare l'endpoint.
gcloud
Prenota un indirizzo IP interno per l'endpoint.
Utilizza il comando
addresses create
.gcloud compute addresses create ENDPOINT_ADDRESS_NAME \ --project=CONSUMER_PROJECT \ --region=REGION \ --address=ENDPOINT_ADDRESS \ --subnet=CONSUMER_SUBNET
Sostituisci quanto segue:
ENDPOINT_ADDRESS_NAME
: un nome per la risorsa indirizzo IPCONSUMER_PROJECT
: l'ID del progetto consumerREGION
: la regione in cui creare l'indirizzo IPENDPOINT_ADDRESS
: l'indirizzo IP da assegnare alla risorsa indirizzo IP. Deve essere lo stesso indirizzo IP utilizzato nel bilanciatore del carico del servizioCONSUMER_SUBNET
: il nome della sottorete del consumatore
Crea l'endpoint.
Utilizza il comando
forwarding-rules create
.gcloud compute forwarding-rules create ENDPOINT \ --region=REGION \ --network=CONSUMER_NETWORK \ --address=ENDPOINT_ADDRESS \ --target-service-attachment=SERVICE_ATTACHMENT_URI
Sostituisci quanto segue:
ENDPOINT
: un nome per l'endpointREGION
: la regione in cui creare l'endpointCONSUMER_NETWORK
: il nome della rete del consumatoreENDPOINT_ADDRESS
: l'indirizzo IP riservato da assegnare all'endpoint. Puoi specificare l'indirizzo IP direttamente o utilizzare il nome della risorsa dell'indirizzo IPSERVICE_ATTACHMENT_URI
: l'URI del collegamento al servizio
Eliminare l'intervallo interno del produttore
Dopo aver creato la sottorete di migrazione dei consumatori, l'intervallo interno non è più necessario e può essere eliminato.
gcloud
Utilizza il comando internal-ranges delete
.
gcloud network-connectivity internal-ranges delete RANGE_NAME \ --project=PRODUCER_PROJECT_ID
Sostituisci quanto segue:
RANGE_NAME
: il nome dell'intervallo internoPRODUCER_PROJECT_ID
: l'ID del progetto del produttore
Verificare il funzionamento dell'endpoint
Chiedi al consumatore di confermare di potersi connettere al servizio tramite l'endpoint.
Se l'endpoint non funziona e la risoluzione dei problemi non risolve il problema, puoi eseguire il rollback della migrazione.
Finalizzare la migrazione
Se l'endpoint funziona come previsto, puoi completare la migrazione aggiornando la sottorete di migrazione del peer del consumatore in una sottorete normale.
Aggiorna la subnet di migrazione dei peer del consumatore
L'aggiornamento della subnet di migrazione dei peer del consumatore a una subnet normale consente al consumatore di utilizzare la subnet per qualsiasi tipo di risorsa.
gcloud
Utilizza il comando networks subnets create
.
gcloud compute networks subnets update CONSUMER_SUBNET \ --purpose=PRIVATE \ --region=REGION \ --project=CONSUMER_PROJECT
Sostituisci quanto segue:
CONSUMER_SUBNET
: il nome della sottorete del consumatoreREGION
: la regione della subnet del consumatoreCONSUMER_PROJECT
: l'ID del progetto consumer
Elimina le connessioni in peering
Se la connessione di peering non è più necessaria, elimina le configurazioni di peering sia per il consumatore sia per il produttore.
Esegui il rollback della migrazione
Puoi eseguire il rollback della migrazione solo se la sottorete del consumer non è ancora stata aggiornata a una sottorete normale. Se esegui il rollback, il servizio viene reso disponibile tramite il peering di rete VPC.
- Se esiste ancora, elimina l'intervallo interno nel progetto del produttore.
Crea un intervallo interno nel progetto del consumatore. Durante il rollback, la sorgente della migrazione è la subnet del consumatore e la destinazione della migrazione è la subnet del produttore.
gcloud network-connectivity internal-ranges create RANGE_NAME \ --project=CONSUMER_PROJECT \ --ip-cidr-range=CIDR_RANGE \ --network=CONSUMER_NETWORK \ --usage=FOR_MIGRATION \ --migration-source=CONSUMER_SUBNET_URI \ --migration-target=PRODUCER_SUBNET_URI
Elimina l'endpoint Private Service Connect del consumer.
Elimina la risorsa indirizzo IP del consumatore.
Ricrea la subnet del produttore utilizzando lo stesso nome e lo stesso intervallo CIDR. Imposta lo scopo della sottorete su
PRIVATE
.Ricrea le risorse necessarie per fornire il servizio nella sottorete del produttore.
Il consumatore convalida di poter accedere al servizio tramite la connessione di peering.