Questa pagina descrive come eseguire l'upgrade delle istanze Cloud SQL dalla vecchia architettura di rete alla nuova architettura di rete.
Questa pagina di upgrade dell'architettura di rete Cloud SQL si applica solo ad alcune istanze Cloud SQL. Se le tue istanze Cloud SQL utilizzano un progetto di rete Virtual Private Cloud (VPC) creato prima di agosto 2021, devi eseguire l'upgrade dell'architettura di rete Cloud SQL per le tue istanze.
Panoramica
La seguente tabella mostra i vantaggi della nuova architettura di rete rispetto a quella precedente:
Capacità | Architettura di rete precedente | Nuova architettura di rete |
---|---|---|
Eseguire la migrazione da Cloud SQL ad AlloyDB per PostgreSQL utilizzando Database Migration Service | Richiede la configurazione di un indirizzo IP privato per la migrazione | Nessuna configurazione di rete aggiuntiva richiesta. Ad esempio, migrazione da Cloud SQL ad AlloyDB per PostgreSQL. |
Connetti l'istanza Cloud SQL utilizzando l'IP privato a servizi privati come Cloud Build o Vertex AI | Non supportato a causa della non transitività del peering di rete | Supportato |
Istanze conformi ad Assured Workloads | Non supportata | Supportato |
Microsoft AD gestito | Non supportata | Supportato |
Private Service Connect | Non supportata | Supportato |
Quota di istanze Cloud SQL predefinita per progetto | 100 | 1000 |
Pianificare l'upgrade
Prima di eseguire l'upgrade dell'architettura di rete delle tue istanze Cloud SQL, pianifica l'upgrade in base ai seguenti vincoli:
Se esegui l'upgrade dell'architettura di rete, puoi prevedere un tempo di inattività della tua istanza fino a 4 minuti in media.
Se è in corso una migrazione dei dati, non puoi eseguire l'upgrade dell'istanza di origine alla nuova architettura durante la migrazione dei dati.
Se ti connetti a un'istanza da una sorgente esterna, verifica che tutte le connessioni di peering siano aggiornate per consentire l'esportazione di route personalizzate.
Se utilizzi i service perimeter, verifica che sia incluso il progetto host del VPC condiviso. Se questo progetto non è incluso, la migrazione non va a buon fine.
Non puoi eseguire l'upgrade dell'architettura di rete delle istanze su una rete con più di 300 istanze Cloud SQL.
Pianificare l'upgrade di tutte le istanze Cloud SQL in un progetto di rete
Le istanze Cloud SQL possono risiedere nello stesso progetto della rete VPC o in un progetto separato. Il progetto che ospita la rete VPC è il progetto di rete.
Un progetto di rete può operare in modalità dual stack, il che significa che può ospitare istanze Cloud SQL contemporaneamente, utilizzando sia l'architettura di rete precedente che quella nuova. Ciò si verifica quando almeno un'istanza all'interno del progetto utilizza la vecchia architettura. Di conseguenza, Cloud SQL non può eseguire l'upgrade del progetto alla nuova architettura.
Per eseguire query sull'architettura di rete per tutte le istanze all'interno di un progetto, puoi utilizzare l'interfaccia a riga di comando gcloud o l'API.
Considerazioni per i progetti dual stack
Quando utilizzi progetti dual stack, tieni presente le seguenti considerazioni:
- Eseguire l'upgrade di un'istanza in modo implicito: quando modifichi la rete privata di un'istanza o abiliti l'indirizzo IP privato all'interno di un progetto dual-stack, Cloud SQL potrebbe eseguire l'upgrade dell'istanza alla nuova architettura di rete in modo implicito.
- Nessun downgrade dell'architettura: le modifiche alla rete non comportano mai il downgrade dell'architettura di rete di un'istanza.
- Rifiuta richieste: se per completare una modifica di rete è necessario un downgrade, Cloud SQL rifiuta la richiesta.
- Le nuove istanze non possono utilizzare intervalli IP della vecchia architettura di rete: quando un progetto è in modalità dual stack, non puoi creare istanze che utilizzano intervalli IP associati a connessioni di servizio della vecchia architettura di rete.
Per evitare potenziali conflitti e garantire un upgrade di rete senza problemi, ti consigliamo di pianificare l'upgrade di tutte le istanze del progetto alla nuova architettura.
Esegui l'upgrade dell'architettura di rete Cloud SQL
Per eseguire l'upgrade dell'architettura di rete dell'istanza Cloud SQL:
- Controlla l'architettura di rete di una singola istanza Cloud SQL o di più istanze Cloud SQL.
- Esegui l'upgrade dell'architettura di rete di un'istanza Cloud SQL.
Controlla l'architettura di rete di una singola istanza Cloud SQL
Per controllare l'architettura di rete attuale di una singola istanza,
utilizza il comando gcloud sql instances describe
o il metodo instances.get
.
gcloud
Per informazioni sull'installazione e su come iniziare a utilizzare gcloud CLI, consulta Installare gcloud CLI. Per informazioni sull'avvio di Cloud Shell, consulta Utilizzare Cloud Shell.
Per controllare l'architettura di rete di una singola istanza, esegui il seguente comando:
gcloud sql instances describe INSTANCE_NAME
Se l'istanza utilizza la vecchia architettura di rete, la risposta è simile alla seguente:
name: INSTANCE_NAME project: PROJECT_ID ... sqlNetworkArchitecture: OLD_NETWORK_ARCHITECTURE
Se l'istanza utilizza la nuova architettura di rete, la risposta è simile alla seguente:
name: INSTANCE_NAME project: PROJECT_ID ... sqlNetworkArchitecture: NEW_NETWORK_ARCHITECTURE
Il parametro sqlNetworkArchitecture
indica se la tua istanza utilizza la vecchia architettura di rete (OLD_NETWORK_ARCHITECTURE
) o la nuova architettura di rete (NEW_NETWORK_ARCHITECTURE
).
REST v1
Per controllare l'architettura di rete di un'istanza, utilizza il
metodo instances.get
dell'API Cloud SQL Admin.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: l'ID progetto.
- INSTANCE_NAME: il nome dell'istanza.
- NETWORK_ARCHITECTURE_TYPE: Il tipo di architettura di rete è definito come segue:
OLD_NETWORK_ARCHITECTURE
: L'istanza utilizza la vecchia architettura di rete.NEW_NETWORK_ARCHITECTURE
: L'istanza utilizza la nuova architettura di rete.
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
Corpo JSON della richiesta:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": sql#instance "name": INSTANCE_NAME "project": PROJECT_ID "sqlNetworkArchitecture": enum (SqlNetworkArchitecture) ... }
REST v1beta4
Per controllare l'architettura di rete di un'istanza, utilizza il
metodo instances.get
dell'API Cloud SQL Admin.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: l'ID progetto.
- INSTANCE_NAME: il nome dell'istanza.
- NETWORK_ARCHITECTURE_TYPE: Il tipo di architettura di rete è definito come segue:
OLD_NETWORK_ARCHITECTURE
: L'istanza utilizza la vecchia architettura di rete.NEW_NETWORK_ARCHITECTURE
: L'istanza utilizza la nuova architettura di rete.
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME
Corpo JSON della richiesta:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": sql#instance "name": INSTANCE_NAME "project": PROJECT_ID "sqlNetworkArchitecture": enum (SqlNetworkArchitecture) ... }
Controlla l'architettura di rete di più istanze Cloud SQL
Per controllare l'architettura di rete di più istanze in un progetto,
utilizza il comando gcloud sql instances list
o il metodo instance.list
.
gcloud
Per controllare l'architettura di rete di più istanze in un progetto, esegui questo comando:
gcloud sql instances list --show-sql-network-architecture
L'output è simile al seguente.
NAME DATABASE_VERSION LOCATION ... SQL_NETWORK_ARCHITECTURE instance_1 POSTGRES_13 asia-northeast1-b OLD_NETWORK_ARCHITECTURE instance_2 MYSQL_5_7 europe-west1-d NEW_NETWORK_ARCHITECTURE ...
REST v1
Per controllare l'architettura di rete di più istanze in un progetto, utilizza il metodo
instance.list
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: l'ID progetto.
- NETWORK_ARCHITECTURE_TYPE: Il tipo di architettura di rete come segue:
OLD_NETWORK_ARCHITECTURE
: L'istanza utilizza la vecchia architettura di rete.NEW_NETWORK_ARCHITECTURE
: L'istanza utilizza la nuova architettura di rete.
Metodo HTTP e URL:
LIST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
Corpo JSON della richiesta:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": sql#instance "name": INSTANCE_NAME "project": PROJECT_ID "sqlNetworkArchitecture": enum (SqlNetworkArchitecture) ... }
REST v1beta4
Per controllare l'architettura di rete di più istanze in un progetto, utilizza il metodo
instance.list
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: l'ID progetto.
- NETWORK_ARCHITECTURE_TYPE: Il tipo di architettura di rete è definito come segue:
OLD_NETWORK_ARCHITECTURE
: L'istanza utilizza la vecchia architettura di rete.NEW_NETWORK_ARCHITECTURE
: L'istanza utilizza la nuova architettura di rete.
Metodo HTTP e URL:
LIST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances
Corpo JSON della richiesta:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": sql#instance "name": INSTANCE_NAME "project": PROJECT_ID "sqlNetworkArchitecture": enum (SqlNetworkArchitecture) ... }
Esegui l'upgrade dell'architettura di rete di una singola istanza Cloud SQL
Per eseguire l'upgrade dell'architettura di rete per una singola istanza, utilizza il comando
gcloud sql instances patch
, il metodo instance.update
o il metodo instance.patch
.
gcloud
Per eseguire l'upgrade dell'architettura di rete di un'istanza, esegui questo comando:
gcloud sql instances patch INSTANCE_NAME --upgrade-sql-network-architecture
L'operazione di upgrade richiede alcuni minuti.
Durante l'upgrade, viene avviata un'operazione a lunga esecuzione e viene restituito un token dell'operazione:
operation_id
REST v1
Per eseguire l'upgrade dell'architettura di rete di un'istanza, utilizza il metodo
instance.update
o instance.patch
dell'API Cloud SQL Admin.
Quando esegui l'upgrade dell'architettura di rete Cloud SQL, nella richiesta non sono consentiti aggiornamenti aggiuntivi all'istanza. Il corpo della richiesta contiene un'istanza dell'oggetto DatabaseInstance
, con sqlNetworkArchitecture
impostato su NEW_NETWORK_ARCHITECTURE
.
Durante l'upgrade, viene avviata un'operazione a lunga esecuzione e viene restituito un token dell'operazione:
operation_id
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: l'ID progetto.
- INSTANCE_NAME: il nome dell'istanza.
- NETWORK_ARCHITECTURE_TYPE: Il tipo di architettura di rete è definito come segue:
OLD_NETWORK_ARCHITECTURE
: L'istanza utilizza la vecchia architettura di rete.NEW_NETWORK_ARCHITECTURE
: L'istanza utilizza la nuova architettura di rete.
Metodo HTTP e URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
Corpo JSON della richiesta:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": sql#instance, "targetLink": string, "status": enum (SqlOperationStatus), "name": string, "insertTime": string, "startTime": string, "endTime": string ... }
Se l'upgrade dell'istanza non riesce, riprova l'operazione di upgrade.
REST v1beta4
Per eseguire l'upgrade dell'architettura di rete di un'istanza, utilizza
instance.update method
o instance.patch method
dell'API Cloud SQL Admin.
Quando esegui l'upgrade dell'architettura di rete Cloud SQL, nella richiesta non sono consentiti aggiornamenti aggiuntivi all'istanza. Il corpo della richiesta contiene un'istanza dell'oggetto DatabaseInstance
, con sqlNetworkArchitecture
impostato su NEW_NETWORK_ARCHITECTURE
.
Durante l'upgrade, viene avviata un'operazione a lunga esecuzione e viene restituito il seguente token dell'operazione:
operation_id
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: l'ID progetto.
- INSTANCE_NAME: il nome dell'istanza.
- NETWORK_ARCHITECTURE_TYPE: Il tipo di architettura di rete è definito come segue:
OLD_NETWORK_ARCHITECTURE
: L'istanza utilizza la vecchia architettura di rete.NEW_NETWORK_ARCHITECTURE
: L'istanza utilizza la nuova architettura di rete.
Metodo HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME
Corpo JSON della richiesta:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": sql#instance, "targetLink": string, "status": enum (SqlOperationStatus), "name": string, "insertTime": string, "startTime": string, "endTime": string ... }
Se l'upgrade dell'istanza non va a buon fine per qualsiasi motivo, puoi riprovare l'operazione di upgrade.
Domande frequenti
Questa sezione fornisce risposte alle domande frequenti sull'upgrade dell'architettura di rete di Cloud SQL.
- Qual è l'impatto dell'upgrade sulla mia istanza Cloud SQL?
- Tutte le funzionalità funzionano allo stesso modo dopo l'upgrade?
- Quali istanze utilizzano la vecchia architettura di rete?
- Tutte le nuove istanze Cloud SQL vengono create nella nuova architettura di rete?
- È possibile aggiornare tutte le istanze di un progetto con un unico comando?
- Se eseguo l'upgrade del database primario, viene eseguito automaticamente anche l'upgrade della replica?
- Ho ricevuto una notifica che mi informa che verrà eseguito l'upgrade dell'architettura di rete delle mie istanze Cloud SQL. Che cosa devo fare?
- Quando tento di eseguire l'upgrade della mia istanza, ricevo l'errore "al di fuori dell'intervallo di indirizzi IP riservati". Che cosa devo fare?
Qual è l'impatto dell'upgrade sulla mia istanza Cloud SQL?
Durante l'upgrade dell'architettura di rete, l'istanza Cloud SQL ha uno stato MAINTENANCE. In questo stato, l'istanza subisce un tempo di inattività fino a quattro minuti in media. Non sono consentite modifiche aggiuntive all'istanza finché l'upgrade non è completato. Le altre istanze del progetto o della rete non sono interessate dall'upgrade.
Tutte le funzionalità funzionano allo stesso modo dopo l'upgrade?
Tutte le funzionalità dell'istanza Cloud SQL funzionano allo stesso modo sulla nuova architettura rispetto a quella precedente. Dopo aver eseguito l'upgrade di un'istanza per utilizzare la nuova architettura di rete, se vuoi cambiare la rete dell'istanza, assicurati che anche tutte le istanze nella rete di destinazione siano state sottoposte all'upgrade alla nuova architettura di rete.
Quali istanze utilizzano la vecchia architettura di rete?
Tutti i nuovi progetti creati dopo agosto 2021 utilizzano automaticamente la nuova architettura di rete. I progetti esistenti possono contenere istanze Cloud SQL create prima di agosto 2021 e che utilizzano ancora la vecchia architettura di rete. Pertanto, tutte le istanze all'interno di un progetto esistente devono essere aggiornate prima che le nuove istanze del progetto possano iniziare a utilizzare la nuova architettura di rete.
Tutte le nuove istanze Cloud SQL vengono create nella nuova architettura di rete?
Per impostazione predefinita, le nuove istanze Cloud SQL create nei progetti creati dopo agosto 2021 utilizzano la nuova architettura di rete.
Se vuoi creare un'istanza in un progetto creato prima di agosto 2021 e utilizzare la nuova architettura di rete, devi aggiornare tutte le istanze esistenti nel progetto alla nuova architettura di rete. Se utilizzi il VPC condiviso, devi aggiornare tutte le istanze nei progetti che partecipano al VPC condiviso.
Dopo aver aggiornato tutte le istanze esistenti nel progetto, attendi diverse ore prima di creare istanze nel progetto. Le nuove istanze che crei nel progetto utilizzano la nuova architettura di rete.
Se sono presenti istanze eliminate di recente con la vecchia architettura di rete, devi attendere quattro giorni prima di creare una nuova istanza con la nuova architettura di rete. Questo ritardo tiene conto della procedura di ripristino di un'istanza eliminata.
È possibile aggiornare tutte le istanze di un progetto con un unico comando?
No, l'upgrade alla nuova architettura di rete si basa su ogni istanza.
Se eseguo l'upgrade della replica, viene eseguito automaticamente anche l'upgrade del primario?
No, l'upgrade alla nuova architettura di rete si basa su ogni singola istanza. Ogni replica viene trattata come un'istanza separata e deve essere aggiornata separatamente. Ciò significa che se l'istanza principale viene aggiornata e la replica utilizza la vecchia architettura di rete, la replica non viene interessata. È vero anche il contrario. Se esegui l'upgrade di una replica, il database primario non verrà interessato.
Ho ricevuto una notifica che mi informa che verrà eseguito l'upgrade dell'architettura di rete delle mie istanze Cloud SQL. Che cosa devo fare?
Non è necessario alcun intervento da parte tua.
In alcuni casi, quando l'upgrade automatico viene eseguito su una rete privata, la richiesta viene temporaneamente rifiutata. Come soluzione alternativa, puoi eseguire l'upgrade dell'architettura di rete della tua istanza seguendo la procedura descritta in Esegui l'upgrade dell'architettura di rete di una singola istanza Cloud SQL.
Quando tento di eseguire l'upgrade della mia istanza, ricevo l'errore "al di fuori dell'intervallo di indirizzi IP riservati". Che cosa devo fare?
Per utilizzare le istanze Cloud SQL in una rete VPC con IP privato, alloca intervalli di indirizzi IP quando configuri l'accesso privato ai servizi per la rete VPC.
Ad esempio, se un intervallo di indirizzi IP allocato viene modificato o eliminato, potresti riscontrare un errore simile al seguente:
Network architecture upgrade not allowed for private-ip instance PROJECT_ID:INSTANCE_NAME
whose IP address range 10.0.0.0/24
is outside the reserved IP address range for
private services access. Re-allocate the IP address range for private services access and retry.
In questo esempio, l'intervallo di indirizzi IP allocato originale ha il nome google-managed-services-VPC_NETWORK_NAME
e l'intervallo di indirizzi IP allocato originale è 10.0.0.0/16
.
Poi crei un'istanza con un indirizzo IP privato di 10.0.0.1
.
Se l'intervallo di indirizzi IP di google-managed-services-VPC_NETWORK_NAME
viene eliminato
o viene aggiornato in modo da fare riferimento a un intervallo di 10.1.0.0/16
,
questo intervallo non copre l'indirizzo IP privato dell'istanza 10.0.0.1
.
Successivamente, quando provi a eseguire l'upgrade dell'architettura di rete della tua istanza,
si verifica l'errore outside the reserved IP address range
.
Per risolvere il problema, segui la procedura descritta in
Configurare l'accesso privato ai servizi per Cloud SQL.
Riassegna un intervallo di indirizzi IP che include l'indirizzo IP della tua istanza agli intervalli allocati per l'accesso ai servizi privati.
Come minimo, puoi allocare l'intervallo di indirizzi IP riportato nel messaggio di errore (nell'esempio precedente, 10.0.0.0/24
).
Poi riprova l'upgrade dell'architettura di rete.
Passaggi successivi
- Scopri di più su Private Service Connect
- Scopri di più su Assured Workloads
- Scopri di più su Configurare l'accesso privato ai servizi per Cloud SQL
- Scopri di più su Database Migration Service per AlloyDB per PostgreSQL