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 tabella seguente 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 | Non è necessaria alcuna configurazione di rete aggiuntiva. 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 |
| Knowledge Catalog | 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 perimetri di servizio, verifica che sia incluso il progetto host 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.
Se la tua rete include due o più istanze che utilizzano indirizzi IP privati nella stessa regione, la tua istanza presenta le seguenti limitazioni:
- Cloud SQL potrebbe utilizzare un intervallo (o intervalli) /24 aggiuntivo dall'intervallo di indirizzi IP allocato per l'accesso privato ai servizi. Cloud SQL utilizza l'intervallo o gli intervalli /24 aggiuntivi per ospitare le istanze nella nuova architettura di rete.
- Se è rimasto un numero limitato di intervalli di subnet /24 disponibili nell'intervallo di indirizzi IP che hai allocato per l'accesso privato ai servizi, Cloud SQL potrebbe utilizzare un intervallo /24 di proprietà di Google per le istanze idonee. Non puoi eseguire il downgrade dell'istanza di cui è stato eseguito l'upgrade per renderla una replica di un'istanza esterna.
Queste limitazioni sono temporanee e Cloud SQL le rimuove durante un successivo evento di manutenzione.
Le istanze legacy ad alta disponibilità (HA) con repliche di failover non sono supportate per un upgrade.
Dopo l'upgrade dell'architettura di rete, non puoi creare repliche di failover HA legacy per le istanze di cui è stato eseguito l'upgrade.
Se esegui l'upgrade delle istanze IP private, il flag
import-custom-routespotrebbe essere abilitato per la connessione di peering con la reteservicenetworking. Se modifichi questa impostazione dopo l'upgrade, la tua istanza potrebbe perdere la connettività.
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 sia 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 gcloud CLI o l'API.
Considerazioni per i progetti dual stack
Quando utilizzi progetti dual stack, tieni presente quanto segue:
- Eseguire l'upgrade di un'istanza in modo implicito: quando modifichi la rete privata di un'istanza o abiliti l'indirizzo IP privato in un progetto a doppio 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 eseguono 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.
Applicazione della nuova architettura di rete: puoi forzare un'istanza a utilizzare la nuova architettura di rete quando crei l'istanza o quando modifichi la relativa configurazione di rete. Quando utilizzi il flag
--enforce-new-sql-network-architectureper creare o aggiornare l'istanza, questa viene inserita in una subnet separata dalle istanze che utilizzano la vecchia architettura di rete. La separazione è permanente e persiste anche dopo l'upgrade delle istanze della vecchia architettura di rete alla nuova.Per maggiori dettagli sull'allocazione degli IP e sulle subnet, vedi Intervalli di indirizzi IP allocati.
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 corrente 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, vedi Installa 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 comando seguente:
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 l'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 sostituzioni seguenti:
- 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 sostituzioni seguenti:
- 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 sostituzioni seguenti:
- 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)
...
}