Scopri di più sull'utilizzo dell'IP privato

Questa pagina fornisce informazioni sull'utilizzo dell'IP privato con Cloud SQL. Per istruzioni dettagliate sulla configurazione di un per utilizzare l'IP privato, consulta Configurazione dell'IP privato.

Per le soluzioni Terraform per la rete Cloud SQL, consulta Soluzioni di rete semplificate.

Panoramica

Per configurare un'istanza Cloud SQL per utilizzare l'IP privato è necessario accesso privato ai servizi. Accesso privato ai servizi consente di creare connessioni private tra la rete VPC e della rete VPC del producer di servizi Google sottostante. Le entità Google che offrono servizi, come Cloud SQL, sono chiamate produttori di servizi. Ogni servizio Google crea una subnet in cui eseguire il provisioning delle risorse. La l'intervallo di indirizzi IP della subnet è in genere un blocco CIDR /24 scelto e proviene dall'intervallo di indirizzi IP allocati.

Le connessioni private rendono i servizi raggiungibili senza passare per internet o utilizzare indirizzi IP esterni. Per questo motivo, l'IP privato offre una latenza di rete inferiore rispetto all'IP pubblico.

Utilizzi l'accesso privato ai servizi per connetterti alle istanze Cloud SQL:

Puoi connetterti a indirizzi IP privati in più regioni. Puoi anche collegare tramite un VPC condiviso tra i progetti.

Intervalli di indirizzi IP allocati

Per utilizzare le istanze Cloud SQL in una rete VPC con IP privato, devi alloca intervalli di indirizzi IP per configurare l'accesso privato ai servizi per questo VPC. Per organizzare le tue istanze Cloud SQL, potrebbe essere utile allocare più intervalli di indirizzi IP per la connessione privata. Quando configuri un'istanza Cloud SQL per IPv privato, puoi selezionare sia la rete VPC sia l'intervallo di indirizzi IP allocati.

Dimensione dell'intervallo allocato

Assegna intervalli IP sufficientemente ampi per Cloud SQL e per gli altri servizi gestiti Google che prevedi di utilizzare. Ogni servizio richiede blocchi IP dedicati dagli intervalli allocati. La dimensione minima è un singolo blocco /24 (256 indirizzi), ma la dimensione consigliata è un blocco /16 (65.536 indirizzi).

Quando allochi un intervallo di indirizzi IP, devi prendere in considerazione il numero di istanze che prevedi di creare.

Subnet mask Indirizzi Istanze Cloud SQL utilizzabili
/2425650
/23512100
/221024200
/212048400
/204096800

Cloud SQL utilizza intervalli CIDR /24 come unità di intervallo e ogni unità può essere utilizzata per le istanze Cloud SQL in una singola regione. Ad esempio, se crei due Istanze Cloud SQL, ma per due regioni diverse, devono essere presenti almeno due intervalli CIDR /24.

Inoltre, se un progetto ha iniziato a utilizzare Cloud SQL prima del 1° aprile 2021, le istanze Postgres non possono condividere la stessa unità di intervallo con le istanze MySQL e SQL Server e hanno bisogno di una propria unità in ogni regione. I progetti più recenti non sono soggetti a questa limitazione.

Configurare l'accesso privato ai servizi per la rete

Quando configuri la connettività con IP privato per la prima volta su una rete VPC specifica, devi eseguire una procedura una tantum per configurare l'accesso privato ai servizi per Cloud SQL.

Dopo aver stabilito l'accesso privato ai servizi, puoi creare un'istanza Cloud SQL configurata per l'utilizzo di un IP privato o configurare un IP privato per un'istanza Cloud SQL esistente. Per istruzioni dettagliate, consulta Configurare l'IP privato.

Ogni volta che modifichi una connessione stabilita, devi anche aggiornare vpc-peerings.

Requisiti per l'IP privato

Per utilizzare l'IP privato, l'ambiente di rete e delle applicazioni deve soddisfare i seguenti requisiti. Inoltre, la configurazione iniziale dell'IP privato richiede autorizzazioni IAM aggiuntive.

Requisiti dell'ambiente applicativo

  • Se ti connetti da GKE, devi eseguire GKE 1.8 o versioni successive su un Cluster VPC-native.

Requisiti per API e IAM

  • Devi abilitare l' API Service Networking per il progetto.
  • Se utilizzi una rete VPC condivisa, devi anche attivare l'API Service Networking per il progetto host.

  • Per gestire una connessione di accesso privato ai servizi, l'utente deve disporre delle seguenti autorizzazioni IAM. Se l'utente non dispone dell'autorizzazione sulle autorizzazioni, puoi ottenere errori di autorizzazioni insufficienti.
    • compute.networks.list
    • compute.addresses.create
    • compute.addresses.list
    • servicenetworking.services.addPeering

    Se utilizzi una rete VPC condivisa, devi anche aggiungere lo stesso utente e assegnare le stesse autorizzazioni al progetto host.

Esempio

Nell'esempio seguente, la rete VPC del cliente ha allocato la 10.240.0.0/16 intervallo di indirizzi per i servizi Google e ha stabilito un indirizzo privato che utilizza l'intervallo allocato. Ogni servizio Google (ad esempio Cloud SQL) crea una sottorete dal blocco allocato per il provisioning di nuove risorse in una determinata regione, ad esempio le istanze Cloud SQL.

Panoramica dei diagrammi della configurazione dell'IP privato.

  • Alla connessione privata viene assegnato l'intervallo allocato 10.240.0.0/16. Da questa allocazione, i servizi Google possono creare subnet in cui vengono di cui è stato eseguito il provisioning.
  • Sul lato dei servizi Google della connessione privata, Google crea un progetto per il cliente. Il progetto è isolato, il che significa che nessun altro cliente lo condivide e al cliente vengono fatturate solo le risorse che provisiona.
  • Ogni servizio Google crea una subnet in cui eseguire il provisioning delle risorse. L'intervallo di indirizzi IP della subnet è in genere un blocco CIDR di /24 scelto dal servizio e proveniente dall'intervallo di indirizzi IP allocato. Non puoi modificare della subnet del producer di servizi. Un servizio esegue il provisioning di nuove risorse a livello di regione create in precedenza da quel servizio. Se una subnet è completa, il servizio ne crea una nuova nella stessa regione.
  • Le istanze VM nella rete del cliente possono accedere alle risorse di servizio in qualsiasi regione, se il servizio lo supporta. Alcuni servizi potrebbero non supportare la comunicazione tra regioni. Per saperne di più, consulta la documentazione del servizio pertinente.
  • Si applicano comunque i costi di trasferimento dei dati in uscita per il traffico tra regioni, quando un'istanza VM comunica con risorse in una regione diversa.
  • All'istanza Cloud SQL viene assegnato l'indirizzo IP 10.240.0.2. Nella alla rete VPC del cliente, le richieste con destinazione 10.240.0.2 indirizzato alla connessione privata alla rete del producer di servizi. Dopo il giorno raggiungendo la rete di servizi, quest'ultima contiene route che indirizzano la richiesta alla risorsa corretta.
  • Il traffico tra le reti VPC viaggia all'interno tramite la rete internet pubblica.

Problemi di rete

Cloud SQL alloca una subnet /24 dall'intervallo IP di accesso privato ai servizi per ogni regione. Ad esempio, posizionando le istanze PostgreSQL in due regioni richiede che gli intervalli di indirizzi IP allocati includano almeno due con subnet di dimensione /24.

Le connessioni a un'istanza Cloud SQL che utilizzano un indirizzo IP privato sono autorizzate automaticamente per gli intervalli di indirizzi RFC 1918. In questo modo, tutti i client privati possono accedere al database senza passare per il proxy di autenticazione Cloud SQL.

Per impostazione predefinita, Cloud SQL non apprende le route delle subnet non RFC 1918 dalla VPC. Devi aggiornare il peering di rete a Cloud SQL Esportare tutte le route non RFC 1918.

Sicurezza

Il traffico sull'accesso ai servizi privati è fornito con un determinato livello della crittografia. Per ulteriori informazioni, vedi Crittografia e autenticazione della rete virtuale di Google Cloud.

Il proxy di autenticazione Cloud SQL può essere configurato per la connessione tramite IP privato e fornisce l'autenticazione utilizzando le credenziali IAM e la crittografia end-to-end utilizzando un certificato SSL/TLS con rotazione.

Se i tuoi requisiti di sicurezza richiedono certificati SSL/TLS con gestione indipendente che gestisci, consulta le istruzioni in Configurazione di SSL/TLS.

La creazione di una rete VPC per ogni istanza con un indirizzo IP privato offre un isolamento della rete migliore rispetto all'inserimento di tutte le istanze nella rete VPC "predefinita".

Connettività VPC multipla

Cloud SQL supporta gli indirizzi IP privati accesso privato ai servizi. Quando crei un'istanza Cloud SQL, Cloud SQL la crea all'interno del proprio Virtual Private Cloud (VPC), chiamato VPC Cloud SQL. L'attivazione dell'IP privato richiede la configurazione di una connessione in peering tra la VPC Cloud SQL e la tua rete VPC. In questo modo, le risorse nella tua rete VPC possono accedere agli indirizzi IP interni delle risorse Cloud SQL nella rete VPC Cloud SQL.

Utilizzando il peering di rete VPC, Cloud SQL implementa internamente l'accesso ai servizi privati, che consente agli indirizzi IP interni di connettersi su due reti VPC indipendentemente dal fatto che appartengano allo stesso progetto o alla stessa organizzazione. Tuttavia, poiché il peering di rete VPC non è transitivo, viene trasmette route tra i due VPC direttamente in peering. Se se dispone di un VPC aggiuntivo, non potrà accedere utilizzando la connessione configurata con il VPC originale.

Per mitigare questa limitazione e connettere l'istanza Cloud SQL a più VPC utilizzando indirizzi IP privati, puoi utilizzare le opzioni di connessione:

  • Effettuare la connessione utilizzando route annunciate personalizzate
  • Connettiti utilizzando un proxy intermedio (SOCKS5)
  • Eseguire la connessione utilizzando il proxy di autenticazione Cloud SQL come servizio

Per saperne di più su come connettere più VPC, consulta Connetti la tua istanza a più VPC.

Riferimento rapido per gli argomenti IP privato

Quando gestisci istanze Cloud SQL utilizzando l'IP privato, alcune i seguenti argomenti potrebbero interessarti:

Argomento Discussione
Reti VPC condivise Puoi creare istanze Cloud SQL con indirizzi IP privati in una rete VPC condivisa. Tuttavia, non puoi assegnare un indirizzo IP privato in una rete VPC condivisa a un'istanza Cloud SQL esistente.
Regioni Puoi connetterti tramite IP privato tra regioni.
Reti precedenti Non puoi connetterti all'IP privato di un'istanza Cloud SQL da una rete precedente. Le reti legacy non supportano il peering di rete VPC o l'accesso ai servizi privati.
Rimozione di un IP privato Dopo aver configurato un'istanza Cloud SQL per utilizzare l'IP privato, impossibile rimuovere la funzionalità IP privato da quell'istanza.
IP pubblico e privato Puoi utilizzare sia l'IP pubblico che l'IP privato per connetterti alla stessa istanza Cloud SQL. Nessuno dei due metodi di connessione influisce sull'altro.
Istanze Cloud SQL esistenti Puoi configurare un'istanza in modo che utilizzi l'IP privato al momento della sua creazione. Puoi anche configurare un'istanza esistente per l'utilizzo di un IP privato. Configura un'istanza esistente per l'utilizzo dell'IP privato o modifica la rete causa il riavvio dell'istanza, il che genera la connessione dei tempi di inattività.
Indirizzi IP statici Per gli indirizzi IP pubblici e privati, l'indirizzo in entrata dell'istanza Cloud SQL è statico e non cambia. L'indirizzo in uscita non è sempre statico, ad eccezione degli indirizzi IP pubblici in uscita delle repliche del server esterno, che sono sempre statici.
Repliche Una replica eredita lo stato dell'IP privato dall'istanza principale. Non puoi configurare l'IP privato direttamente su una replica. Se ti stai collegando a un di replica utilizzando un indirizzo IP privato, una connessione privata VPC aggiuntiva per la replica, poiché ereditato anche dall'istanza principale.
Proxy di autenticazione Cloud SQL Per connetterti a un'istanza Cloud SQL utilizzando l'IP privato, il proxy di autenticazione Cloud SQL devono trovarsi su una risorsa con accesso alla stessa rete VPC del in esecuzione in un'istanza Compute Engine. Se per l'istanza sono abilitati entrambi i tipi di IP, il proxy di autenticazione Cloud SQL utilizza per impostazione predefinita utilizzando l'IP pubblico. Per assicurarti che utilizzi l'IP privato, devi passare il flag -ip_address_types=PRIVATE a Cloud SQL Auth Proxy. Scopri di più.
Accesso VPC serverless Per connetterti da un'origine serverless, come l'ambiente standard di App Engine, Cloud Run o funzioni di Cloud Run, l'applicazione o la funzione si connette direttamente all'istanza Accesso VPC serverless senza il proxy di autenticazione Cloud SQL.
Peering di rete VPC Una connessione che utilizza l'accesso privato ai servizi si basa sul peering di rete VPC. Tuttavia, non crei il peering di rete VPC perché il peering è interno a Google Cloud. Dopo aver creato la connessione di accesso ai servizi privati, puoi visualizzare il peering della rete VPC sottostante nella pagina Peering della rete VPC della console Google Cloud, ma non eliminarlo a meno che tu non voglia rimuoverla.

Scopri di più sul peering di rete VPC.

Controlli di servizio VPC I Controlli di servizio VPC migliorano la tua capacità di mitigare il rischio di esfiltrazione di dati. Con i Controlli di servizio VPC, crei perimetri attorno all'istanza Cloud SQL. I Controlli di servizio VPC limitano l'accesso alle risorse all'interno del perimetro dall'esterno. Solo clienti e risorse all'interno del perimetro possono interagire Per ulteriori informazioni, consulta la Panoramica dei Controlli di servizio VPC. Consulta anche le limitazioni di Cloud SQL quando utilizzi Controlli di servizio VPC. Per utilizzare i Controlli di servizio VPC con Cloud SQL, consulta Configurazione dei Controlli di servizio VPC.
Peering transitivo Solo le reti in peering diretto possono comunicare. Il peering transitivo non è supportato. In altre parole, se la rete VPC N1 è in peering con N2 e N3, ma N2 e N3 non sono connesse direttamente, la rete VPC N2 non può comunicare con la rete VPC N3 tramite il peering di rete VPC.

I client di un progetto possono connettersi alle istanze Cloud SQL di più progetti utilizzando le reti VPC condivise.

Spostamento delle istanze Cloud SQL Le istanze Cloud SQL possono essere spostate solo tra reti di proprietà del progetto in cui si trovano. Inoltre, le istanze Cloud SQL né possono essere spostati tra progetti né tra reti ospitate da progetti diversi.

Passaggi successivi