Accesso VPC serverless

L'accesso VPC serverless ti consente di connetterti direttamente alla tua rete Virtual Private Cloud (VPC) da ambienti serverless come Cloud Run, App Engine o le funzioni Cloud Run. La configurazione dell'accesso VPC serverless consente al tuo ambiente serverless di inviare richieste alla tua rete VPC utilizzando indirizzi IP e DNS interni (come definito da RFC 1918 e RFC 6598). Anche le risposte a queste richieste utilizzano la tua rete interna.

L'utilizzo di Accesso VPC serverless presenta due vantaggi principali:

  • Le richieste inviate alla tua rete VPC non vengono mai esposte a internet.
  • La comunicazione tramite accesso VPC serverless può avere una latenza inferiore rispetto a internet.

L'accesso VPC serverless invia il traffico interno dalla rete VPC all'ambiente serverless solo quando il traffico è una risposta a una richiesta inviata dall'ambiente serverless tramite il connettore di accesso VPC serverless. Per informazioni su come inviare altro traffico interno al tuo ambiente serverless, consulta Accesso privato Google.

Per accedere alle risorse su più reti VPC e progetti Google Cloud, devi anche configurare VPC condiviso o peering di rete VPC.

Come funziona

L'accesso VPC serverless si basa su una risorsa chiamata connettore. Un connettore gestisce il traffico tra l'ambiente serverless e la rete VPC. Quando crei un connettore nel tuo progetto Google Cloud, lo colleghi a una rete e a una regione VPC specifiche. Puoi quindi configurare i servizi serverless in modo che utilizzino il connettore per il traffico di rete in uscita.

Intervalli di indirizzi IP

Esistono due opzioni per impostare l'intervallo di indirizzi IP per un connettore:

  • Subnet: puoi specificare una subnet /28 esistente se non sono presenti risorse che la utilizzano già.
  • Intervallo CIDR: puoi specificare un intervallo CIDR /28 inutilizzato. Quando specifichi questo intervallo, assicurati che non si sovrapponga a intervalli CIDR in uso.

Il traffico inviato tramite il connettore alla rete VPC proviene dalla subnet o dall'intervallo CIDR specificato.

Regole firewall

Le regole firewall sono necessarie per il funzionamento del connettore e la sua comunicazione con altre risorse, incluse quelle della tua rete.

Regole firewall per i connettori nelle reti VPC autonome o nei progetti host VPC condiviso

Se crei un connettore in una rete VPC autonoma o nel progetto host di una rete VPC condiviso, Google Cloud crea tutte le regole firewall necessarie. Queste regole firewall esistono solo finché esiste il connettore associato. Sono visibili nella console Google Cloud, ma non puoi modificarli o eliminarli.

Scopo della regola firewall Formato del nome Tipo Azione Priorità Protocolli e porte
Consente il traffico alle istanze VM del connettore dagli intervalli di sonde di controllo di integrità (35.191.0.0/16, 35.191.192.0/18, 130.211.0.0/22) su determinate porte aet-CONNECTOR_REGION-CONNECTOR_NAME-hcfw In entrata Consenti 100 TCP:667
Consente il traffico alle istanze VM del connettore dall'infrastruttura serverless di Google (35.199.224.0/19) su determinate porte aet-CONNECTOR_REGION-CONNECTOR_NAME-rsgfw In entrata Consenti 100 TCP:667, UDP:665-666, ICMP
Consente il traffico dalle istanze VM del connettore all'infrastruttura serverless di Google (35.199.224.0/19) su determinate porte aet-CONNECTOR_REGION-CONNECTOR_NAME-earfw In uscita Consenti 100 TCP:667, UDP:665-666, ICMP
Blocca il traffico dalle istanze VM del connettore all'infrastruttura serverless di Google (35.199.224.0/19) per tutte le altre porte aet-CONNECTOR_REGION-CONNECTOR_NAME-egrfw In uscita Nega 100 TCP:1-666, 668-65535, UDP:1-664, 667-65535
Consente tutto il traffico dalle istanze VM del connettore (in base al loro indirizzo IP) a tutte le risorse nella rete VPC del connettore aet-CONNECTOR_REGION-CONNECTOR_NAME-sbntfw In entrata Consenti 1000 TCP, UDP, ICMP
Consente tutto il traffico dalle istanze VM del connettore (in base al relativo tag di rete) a tutte le risorse nella rete VPC del connettore aet-CONNECTOR_REGION-CONNECTOR_NAME-tagfw In entrata Consenti 1000 TCP, UDP, ICMP

Puoi limitare ulteriormente l'accesso del connettore alle risorse nella rete VPC di destinazione utilizzando le regole firewall VPC o le regole nei criteri firewall. Quando aggiungi le regole firewall, assicurati che utilizzino una priorità superiore a 100 in modo che non entrino in conflitto con le regole firewall nascoste impostate da Google Cloud. Per maggiori informazioni, consulta Limitare l'accesso delle VM del connettore alle risorse di rete VPC.

Regole firewall per i connettori nei progetti di servizio VPC condiviso

Se crei un connettore in un progetto di servizio e il connettore ha come target una rete VPC condiviso nel progetto host, devi aggiungere regole del firewall per consentire il traffico necessario per il funzionamento del connettore.

Puoi anche limitare l'accesso del connettore alle risorse nella rete VPC di destinazione utilizzando le regole firewall VPC o le regole nei criteri firewall. Per ulteriori informazioni, consulta Accesso alle risorse VPC.

Velocità effettiva e scalabilità

Un connettore di accesso VPC serverless è costituito da istanze di connettore. Le istanze del connettore possono utilizzare uno di diversi tipi di macchine. I tipi di macchine più grandi forniscono una maggiore velocità in uscita. Puoi visualizzare il throughput e il costo stimati per ogni tipo di macchina nella console Google Cloud e nella tabella seguente.

Tipo di macchina Intervallo di velocità effettiva stimata in Mbps* Prezzo
(istanza del connettore più costi di trasferimento di dati in uscita dalla rete)
f1-micro 100-500 Prezzi di f1-micro
e2-micro 200-1000 Prezzi di e2-micro
e2-standard-4 3200-16000 Prezzi di e2 standard

* Gli intervalli di velocità effettiva massima sono stime basate sul funzionamento regolare. Il throughput effettivo dipende da molti fattori. Vedi Larghezza di banda di rete della VM.

Puoi impostare il numero minimo e massimo di istanze di connettore consentite per il connettore. Il valore minimo deve essere almeno 2. Il valore massimo può essere al massimo 10 e deve essere maggiore del valore minimo. Se non specifichi il numero minimo e massimo di istanze per il connettore, vengono applicati il valore minimo predefinito di 2 e il valore massimo predefinito di 10. Un connettore potrebbe superare temporaneamente il valore impostato per le istanze massime quando Google esegue la manutenzione bisettimanale, ad esempio gli aggiornamenti della sicurezza. Durante la manutenzione, potrebbero essere aggiunte istanze aggiuntive per garantire un servizio ininterrotto. Dopo la manutenzione, i connettori tornano allo stesso numero di istanze di prima del periodo di manutenzione. La manutenzione di solito dura pochi minuti. Per ridurre l'impatto durante la manutenzione, utilizza i pool di connessioni e non fare affidamento su connessioni che durano più di un minuto. Le istanze smettono di accettare richieste un minuto prima dell'arresto.

L'accesso VPC serverless esegue automaticamente il ridimensionamento del numero di istanze nel connettore man mano che il traffico aumenta. Le istanze aggiunte sono del tipo specificato per il connettore. I connettori non possono combinare tipi di macchine. Lo scale in dei connettori non avviene. Per evitare che i connettori eseguano il ridimensionamento più di quanto richiesto, imposta un numero ridotto di istanze. Se il connettore è stato sottoposto a scale out e preferisci avere meno istanze, ricrea il connettore con il numero necessario di istanze.

Esempio

Se scegli f1-micro per il tipo di macchina e utilizzi i valori predefiniti per il numero minimo e massimo di istanze (rispettivamente 2 e 10), il throughput stimato per il connettore è 100 Mbps con il numero minimo predefinito di istanze e 500 Mbps con il numero massimo predefinito di istanze.

Grafico della velocità effettiva

Puoi monitorare il throughput corrente dalla pagina Dettagli del connettore nella console Google Cloud. Il grafico Throughput in questa pagina mostra una visualizzazione dettagliata delle metriche sul throughput del connettore.

Tag di rete

I tag di rete di accesso VPC serverless ti consentono di fare riferimento ai connettori VPC nelle regole del firewall e nelle route.

Ogni connettore di accesso VPC serverless riceve automaticamente i seguenti due tag di rete (a volte chiamati tag istanza):

  • Tag di rete universale (vpc-connector): si applica a tutti i connettori esistenti e a quelli creati in futuro.

  • Tag rete univoco (vpc-connector-REGION-CONNECTOR_NAME): si applica al connettoreCONNECTOR_NAME nella regione REGION.

Questi tag di rete non possono essere eliminati. Non è possibile aggiungere nuovi tag di rete.

Casi d'uso

Puoi utilizzare l'accesso VPC serverless per accedere alle istanze VM Compute Engine, alle istanze Memorystore e a qualsiasi altra risorsa con DNS interno o indirizzo IP interno. Ecco alcuni esempi:

  • Utilizzi Memorystore per archiviare i dati di un servizio serverless.
  • I carichi di lavoro serverless utilizzano software di terze parti che esegui su una VM Compute Engine.
  • Esegui un servizio di backend su un gruppo di istanze gestite in Compute Engine e hai bisogno che il tuo ambiente serverless comunichi con questo backend senza essere esposto a internet.
  • L'ambiente serverless deve accedere ai dati del database on-premise tramite Cloud VPN.

Esempio

In questo esempio, un progetto Google Cloud esegue più servizi nei seguenti ambienti serverless: App Engine, funzioni Cloud Run e Cloud Run.

È stato creato un connettore di accesso VPC serverless e a questo è stato assegnato l'intervallo IP 10.8.0.0/28. Pertanto, l'indirizzo IP di origine di qualsiasi richiesta inviata dal connettore rientra in questo intervallo.

Nella rete VPC sono presenti due risorse. Una delle risorse ha l'indirizzo IP interno 10.0.0.4. L'altra risorsa ha l'indirizzo IP interno 10.1.0.2 e si trova in una regione diversa da quella del connettore di accesso VPC serverless.

Il connettore gestisce l'invio e la ricezione sia delle richieste sia delle risposte direttamente da questi indirizzi IP interni. Quando il connettore invia richieste alla risorsa con indirizzo IP interno 10.1.0.2, vengono applicati i costi di trasferimento di dati in uscita perché la risorsa si trova in una regione diversa.

Tutte le richieste e le risposte tra gli ambienti serverless e le risorse nella rete VPC vengono inviate internamente.

Le richieste inviate ad indirizzi IP esterni passano comunque attraverso internet e non utilizzano il connettore di accesso VPC serverless.

Il seguente diagramma mostra questa configurazione.

Esempio di accesso VPC serverless.
Esempio di accesso VPC serverless (fai clic per ingrandire).

Prezzi

Per i prezzi di Accesso VPC serverless, consulta Accesso VPC serverless nella pagina dei prezzi VPC.

Servizi supportati

La tabella seguente mostra i tipi di reti che puoi raggiungere utilizzando Accesso VPC serverless:

Servizio di connettività Supporto di Accesso VPC serverless
VPC
VPC condiviso
Reti legacy
Reti connesse a Cloud Interconnect
Reti connesse a Cloud VPN
Reti connesse al peering di rete VPC

La tabella seguente mostra gli ambienti serverless che supportano Accesso VPC serverless:

Ambiente serverless Supporto di Accesso VPC serverless
Cloud Run
Knative serving*
Funzioni Cloud Run
Ambiente standard di App Engine Tutti i runtime tranne PHP 5
Ambiente flessibile di App Engine*

*Se vuoi utilizzare indirizzi IP interni quando ti connetti da un servizio Knative o dall'ambiente flessibile App Engine, non è necessario configurare l'accesso VPC serverless. Assicurati solo che il servizio sia dipiegato in una rete VPC con connettività alle risorse che vuoi raggiungere.

Protocolli di rete supportati

La seguente tabella descrive i protocolli di rete supportati dai connettori di accesso VPC serverless.

Protocollo Instrada solo le richieste a IP privati tramite il connettore Instrada tutto il traffico attraverso il connettore
TCP
UDP
ICMP Supportato solo per gli indirizzi IP esterni

Aree geografiche supportate

I connettori di accesso VPC serverless sono supportati in ogni regione che supporta Cloud Run, le funzioni Cloud Run o l'ambiente standard App Engine.

Per visualizzare le regioni disponibili:

gcloud compute networks vpc-access locations list

Passaggi successivi