Informazioni sull'utilizzo dell'IP privato

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

Per le soluzioni Terraform per il networking Cloud SQL, consulta Soluzioni di configurazione di rete cloud 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. Persone giuridiche Google che come Cloud SQL, sono chiamati producer di servizi. 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 /24 scelto dal servizio e proviene dall'intervallo di indirizzi IP allocato.

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.

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

Puoi connetterti a indirizzi IP privati in più regioni. Puoi anche eseguire il collegamento tra i progetti utilizzando una rete VPC condivisa.

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 opportuno allocare più intervalli di indirizzi IP per la connessione privata. Quando configuri un'istanza Cloud SQL IP privato, puoi selezionare sia la rete VPC sia l'intervallo di indirizzi IP allocati.

Dimensione dell'intervallo allocato

Alloca intervalli IP sufficientemente grandi per Cloud SQL e altri Servizi gestiti di Google che prevedi di utilizzare, ciascuno richiede un indirizzo IP dedicato dei blocchi dagli intervalli allocati. La dimensione minima è un singolo blocco /24 (256 indirizzi), ma la dimensione consigliata è un blocco /16 (65.536 indirizzi).

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

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

Cloud SQL utilizza gli intervalli CIDR /24 come unità di intervallo e ogni unità può essere utilizzata solo per le istanze Cloud SQL in un'unica 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, istanze non possono condividere la stessa unità di intervallo con istanze MySQL e SQL Server, e ne hanno bisogno in ogni regione. I progetti più recenti non sono soggetti a questa limitazione.

Configurare l'accesso ai servizi privati per la rete

Quando configuri la connettività 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 native per VPC.

Requisiti relativi ad 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 dispongono delle seguenti autorizzazioni IAM. Se l'utente non dispone delle autorizzazioni richieste, potresti ricevere errori relativi a autorizzazioni insufficienti.
    • compute.networks.list
    • compute.addresses.create
    • compute.addresses.list
    • servicenetworking.services.addPeering

    Se utilizzi un VPC condiviso rete, devi anche aggiungere lo stesso utente e assegnare autorizzazioni per il progetto host.

Esempio

Nell'esempio seguente, la rete VPC del cliente ha allocato l'intervallo di indirizzi 10.240.0.0/16 per i servizi Google e ha stabilito una connessione privata 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 del diagramma della configurazione dell'IP privato.

  • Alla connessione privata viene assegnato l'intervallo 10.240.0.0/16 allocato. 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 e al cliente verranno addebitate solo le risorse a cui il cliente le disposizioni in materia.
  • 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 la subnet del produttore di servizi. Un servizio esegue il provisioning di nuove risorse nelle sottoreti regionali esistenti create in precedenza dal 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 se il servizio la supporta. Alcuni servizi potrebbero non supportare la comunicazione tra regioni. Visualizza documentazione del servizio pertinente per ulteriori informazioni.
  • Costi del trasferimento di dati in uscita per tra regioni diverse, dove un'istanza VM comunica con risorse in un'altra regione.
  • 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 aver raggiunto la rete di servizi, questa contiene route che indirizzano la richiesta alla risorsa corretta.
  • Il traffico tra le reti VPC viene trasferito internamente all'interno della rete di Google, non 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, il posizionamento di istanze MySQL in due regioni richiede che gli intervalli di indirizzi IP allocati includano almeno due subnet disponibili di dimensione /24.

Le connessioni a un'istanza Cloud SQL che utilizzano un indirizzo IP privato con l'autorizzazione automatica per RFC 1918 di indirizzi IP esterni. In questo modo, tutti i client privati possono accedere al database senza passare per il proxy di autenticazione Cloud SQL.

Cloud SQL non apprende le route di subnet non RFC 1918 dal VPC per impostazione predefinita. Devi aggiornare il peering di rete con Cloud SQL per esportare eventuali route non RFC 1918.

Sicurezza

Il traffico tramite l'accesso ai servizi privati è fornito con un determinato livello di crittografia. Per ulteriori informazioni, consulta 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. Ciò consente nella tua rete VPC accedere agli indirizzi IP interni delle risorse Cloud SQL nella rete VPC di Cloud SQL.

Utilizzando Peering di rete VPC, Cloud SQL implementa internamente l'accesso privato ai servizi che consente agli indirizzi IP interni di connettersi tra due reti VPC che appartengano o meno 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 disponi di un VPC aggiuntivo, non potrà accedere ai tuoi Cloud SQL 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:

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

Per ulteriori informazioni su come connettere più VPC, consulta Connetti l'istanza a più VPC.

Riferimento rapido per gli argomenti IP privato

Quando gestisci le istanze Cloud SQL utilizzando l'IP privato, alcuni dei seguenti argomenti potrebbero essere di tuo interesse:

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 legacy. 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 l'utilizzo dell'IP privato, non puoi rimuovere la funzionalità di IP privato da quell'istanza.
IP pubblico e privato Puoi utilizzare sia l'IP pubblico che l'IP privato per connetterti nella stessa istanza Cloud SQL. Nessuno dei due metodi di connessione influisce l'altra.
Istanze Cloud SQL esistenti Puoi configurare un'istanza in modo che utilizzi l'IP privato al momento della creazione dell'istanza nel tempo. Puoi anche configurare un'istanza esistente in modo che utilizzi l'IP privato. La configurazione di un'istanza esistente per l'utilizzo di un IP privato o la modifica della rete a cui è collegata causa il riavvio dell'istanza, con un conseguente tempo di inattività di alcuni minuti.
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 di indirizzi IP esterni di repliche del server, che sono sempre statiche.
Repliche Una replica eredita lo stato dell'IP privato dall'istanza principale. Non puoi configurare l'IP privato direttamente su una replica. Se ti connetti a una replica utilizzando un indirizzo IP privato, non è necessario creare un'ulteriore connessione privata VPC per la replica, in quanto viene ereditata anche dall'istanza principale.
Il 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 nell'istanza sono abilitati entrambi i tipi di IP, per impostazione predefinita il proxy di autenticazione Cloud SQL utilizza l'IP pubblico. Per assicurarti che venga utilizzato l'IP privato, devi passare il flag -ip_address_types=PRIVATE al proxy di autenticazione Cloud SQL. Scopri di più.
Accesso VPC serverless Per connetterti da un'origine serverless, ad esempio l'ambiente standard App Engine, Cloud Run o le funzioni Cloud Run, la tua applicazione o funzione si connette direttamente all'istanza tramite l'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 esplicitamente, 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. Solo i client e le risorse all'interno del perimetro possono interagire tra loro. 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 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 è supportati. 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 non possono essere spostate da un progetto all'altro né da una rete all'altra ospitata da progetti diversi.

Passaggi successivi