Questa pagina descrive le best practice per la configurazione delle opzioni di networking per le risorse Cloud Run. Prima di creare le risorse, ti consigliamo di esaminare tutte le sezioni di questa pagina per comprendere le opzioni di rete supportate da Cloud Run, nonché le relative implicazioni.
Best practice:
Monitora l'utilizzo degli indirizzi IP.Utilizza indirizzi IP non RFC 1918.
Utilizza subnet IPv4 e IPv6 (doppio stack).
Utilizza il pool di connessioni e riutilizza le connessioni.
Throughput esterno più rapido a internet.
Maggiore velocità effettiva interna a un'API Google.
Monitorare l'utilizzo degli indirizzi IP
Se utilizzi l'uscita VPC diretta, assicurati di avere indirizzi IP sufficienti per la tua subnet. Il numero di indirizzi IP che utilizzi dipende dal numero di istanze in cui vengono eseguiti i tuoi workload, pertanto ti consigliamo di monitorare l'utilizzo degli indirizzi IP. Assicurati che l'utilizzo degli IP nel tempo rimanga entro i limiti supportati dalla subnet.
Per stimare l'utilizzo dell'indirizzo IP:
Nella console Google Cloud , vai alla pagina Esplora metriche di Cloud Monitoring:
Cerca il numero di istanze nel tuo progetto utilizzando il tipo di metrica
run.googleapis.com/container/instance_count
. Cloud Monitoring consente di visualizzare il valore di questa metrica nel tempo.Moltiplica il valore della metrica Conteggio istanze per 2 per ottenere una stima del numero di indirizzi IP in uso.
Strategie di esaurimento degli indirizzi IP
Un numero elevato di carichi di lavoro Cloud Run può causare problemi di esaurimento degli IP quando si utilizza lo spazio di indirizzi IP privati RFC 1918 con l'uscita VPC diretta. Le seguenti strategie possono aiutarti a gestire l'esaurimento degli indirizzi IP utilizzando intervalli di indirizzi IP alternativi.
Utilizza indirizzi IPv4 non RFC 1918
Oltre agli intervalli di indirizzi IPv4 RFC 1918, Cloud Run supporta anche gli intervalli RFC 6598 e Classe E/RFC 5735. Tutti i servizi e le funzionalitàGoogle Cloud funzionano con questi intervalli non RFC 1918, inclusi le reti VPC, Cloud Load Balancing e Private Service Connect.
Per una compatibilità ottimale, ti consigliamo di iniziare con l'intervallo RFC 6598 (100.64.0.0/10). Se stai già utilizzando questo intervallo altrove, valuta la possibilità di utilizzare la classe E/RFC 5735 (240.0.0.0/4). La classe E è uno spazio enorme con oltre 268 milioni di indirizzi IP disponibili, quindi supporterà la tua crescita per molto tempo. Tuttavia, la classe E presenta alcune limitazioni. Ad esempio, non è supportato su Windows e su alcuni hardware on-premise. Scopri di più su come sfruttare lo spazio di indirizzi IPv4 di classe E per mitigare i problemi di esaurimento di IPv4 in GKE.
Utilizza Cloud NAT o Private Service Connect
Se il tuo workload Cloud Run che utilizza un intervallo non RFC 1918 deve raggiungere una destinazione on-premise che accetta solo RFC 1918, utilizza una delle seguenti soluzioni:
- Utilizza Hybrid NAT per eseguire la conversione degli indirizzi e l'uscita utilizzando un piccolo intervallo RFC 1918.
- Esporre il servizio on-premise come servizio ibrido Private Service Connect.
Utilizzare subnet IPv4 e IPv6 (dual-stack)
Sebbene non riduca l'esaurimento di IPv4, il trasferimento delle app a IPv6 è un buon primo passo. Configura risorse dual-stack per evitare problemi di esaurimento di IPv4 in futuro.
Strategie di riduzione dell'esaurimento delle porte
La sezione seguente descrive le strategie per ridurre l'esaurimento delle porte con Cloud Run.
Utilizza il pool di connessioni e riutilizza le connessioni
Quando invii un numero elevato di richieste a un singolo indirizzo IP di destinazione, utilizza il pool di connessioni per gestire e riutilizzare le connessioni alla destinazione. Tassi di connessione elevati a un singolo indirizzo IP possono esaurire le porte in uscita e causare errori di connessione rifiutata.
Strategie di rendimento e throughput
Questa sezione illustra le opzioni scalabili per migliorare le prestazioni e il throughput della rete verso internet e i servizi Google.
Utilizzare l'ambiente di esecuzione di seconda generazione
Per ottenere le migliori prestazioni di rete per i servizi Cloud Run, utilizza l'ambiente di esecuzione di seconda generazione quando instradano il traffico con l'uscita VPC diretto. L'ambiente di seconda generazione offre prestazioni di rete più veloci, soprattutto in presenza di perdita di pacchetti.
Puoi selezionare l'ambiente di esecuzione utilizzando la console Google Cloud , gcloud CLI, YAML o Terraform.
Utilizza l'uscita VPC diretto per una velocità effettiva di uscita di rete più elevata
Per ottenere una velocità effettiva maggiore nelle connessioni di rete in uscita, utilizza l'uscita VPC diretta per instradare il traffico attraverso la rete VPC. Ti consigliamo di utilizzarlo insieme all'ambiente di esecuzione di seconda generazione, come indicato in precedenza.
Esempio 1: traffico esterno verso internet
Se invii traffico esterno alla rete internet pubblica, instrada tutto il traffico
tramite la rete VPC impostando
--vpc-egress=all-traffic
.
Con questo approccio, devi configurare Cloud NAT per raggiungere la rete internet pubblica.
Per consentire a Cloud Run di utilizzare un gateway Cloud NAT per NAT pubblica o NAT privata, consulta Interazioni di uscita VPC diretto di Cloud NAT.
Esempio 2: traffico interno verso un'API Google
Se utilizzi l'uscita VPC diretta per inviare traffico a un'API di Google, ad esempio Cloud Storage, scegli una delle seguenti opzioni:
- Specifica
private-ranges-only
(impostazione predefinita) con l'accesso privato Google:- Imposta il flag
--vpc-egress=private-ranges-only
. - Abilita l'accesso privato Google.
- Configura il DNS per l'accesso privato Google.
Assicurati che il dominio di destinazione (ad esempio
storage.googleapis.com
) sia mappato a uno dei seguenti intervalli di indirizzi IP interni:199.36.153.8/30
199.36.153.4/30
- Imposta il flag
- Specifica
all-traffic
con l'accesso privato Google:- Imposta il flag
--vpc-egress=all-traffic
. - Abilita l'accesso privato Google.
- Imposta il flag
Utilizza l'impostazione MTU predefinita per Cloud Run
Non modificare l'impostazione dell'unità massima di trasmissione (MTU) di una rete VPC quando la utilizzi con Cloud Run. Utilizza invece l'MTU predefinita di 1460 byte.
Passaggi successivi
- Confronta l'uscita VPC diretta e i connettori VPC.
- Utilizza i tag per test, migrazione del traffico e rollback.