Esegui l'upgrade di un'istanza alla nuova architettura di rete


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:

  1. Controlla l'architettura di rete di una singola istanza Cloud SQL o di più istanze Cloud SQL.
  2. 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?

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