Questa pagina spiega come ottenere una comunicazione affidabile assegnando direttamente uno o più indirizzi IP permanenti (statici) a pod specifici all'interno dei cluster Google Kubernetes Engine (GKE).
In alcuni casi, se esegui una soluzione NAT (Network Address Translation) personalizzata, potresti volere un indirizzo IP statico permanente sia per le connessioni in uscita che in entrata, sia quando la soluzione NAT avvia la connessione sia quando la riceve. Potresti anche voler controllare gli indirizzi IP assegnati all'applicazione per gestire il modo in cui interagisce con altri sistemi o come gestisce tipi specifici di richieste in base ai requisiti aziendali.
Per impostazione predefinita, il pod utilizza gli indirizzi IP dell'interfaccia per il traffico in uscita. Gli indirizzi IP dell'interfaccia cambiano quando il pod viene riavviato o spostato. Per avere un maggiore controllo sulla comunicazione di routing, puoi configurare manualmente gli indirizzi IP permanenti per i tuoi pod in GKE.
Questi indirizzi IP possono essere indirizzi IP esterni per comunicare su internet o indirizzi IP interni per comunicare all'interno della tua rete Google Cloud. Puoi utilizzare gli indirizzi IP forniti da Google o portare i tuoi (BYOIP).
Configurando indirizzi IP permanenti per i pod in GKE, puoi mappare la logica aziendale e dell'applicazione per consentire a pod specifici di inviare e ricevere traffico da o verso uno qualsiasi degli indirizzi IP permanenti.
Il seguente diagramma mostra come un pod con più interfacce di rete può utilizzare un indirizzo IP permanente da una rete secondaria continuando a comunicare sulla rete predefinita:

Terminologia e concetti
Questa pagina utilizza i seguenti concetti:
Classi di gateway
Le classi gateway, che gestiscono le assegnazioni di indirizzi IP permanenti, sono disponibili nelle seguenti classi:
- gke-persistent-regional-external-managed per gli indirizzi IP esterni
gke-persistent-regional-internal-managed per gli indirizzi IP interni (soloGoogle Cloud)
Le classi di gateway funzionano in regioni specifiche. Le classi di gateway offrono una gestione di base degli indirizzi IP e sono incentrate sul routing di rete di livello 3 (L3).
Oggetti gateway
Gli oggetti Gateway fungono da punto centrale per la gestione e la configurazione
di indirizzi IP permanenti. Gli oggetti Gateway in GKE gestiscono un pool
di indirizzi IP permanenti. Elencano questi indirizzi e definiscono le regole per l'assegnazione
di questi indirizzi IP a GKEIPRoute
.
Listener
Un listener è una parte della configurazione di GKE Gateway che controlla quali pod negli spazi dei nomi Gateway possono utilizzare gli indirizzi IP permanenti detenuti dal gateway. L'ascoltatore ti consente di personalizzare l'accesso per garantire flessibilità e sicurezza. Ogni listener deve avere un nome univoco e consente di filtrare l'accesso per spazio dei nomi (tutti, in base all'etichetta o solo lo spazio dei nomi del gateway).
Oggetto GKEIPRoute
L'oggetto GKEIPRoute è una risorsa personalizzata che configuri per
assegnare un indirizzo IP permanente a un pod specifico nel tuo cluster GKE. Puoi utilizzare la sezione di stato dell'oggetto GKEIPRoute
per monitorare
la configurazione dell'indirizzo IP persistente, che fornisce informazioni chiave tramite i
seguenti campi:
Pod
Il campo Pod mostra il nome esatto del pod collegato agli indirizzi IP persistenti. Un singolo pod può utilizzare più indirizzi IP permanenti.
Condizioni
Il campo Condizioni indica se la configurazione dell'indirizzo IP esterno funziona correttamente e può anche aiutarti a diagnosticare i problemi se la configurazione non è valida. Esistono quattro condizioni:
Accepted
: indica se la specifica della risorsaGKEIPRoute
è valida. Se la configurazione presenta errori, la condizioneAccepted
èFalse
con un motivo.GCPReady
: indica che Google Cloud ha preparato tutte le risorse necessarie. Gli errori durante il processo di provisioning della risorsa Google Cloud si riflettono nello stato della condizioneGCPReady
.DPV2Ready
: indica lo stato della programmazione del datapath, ad esempio se il datapath è pronto e programmato per consentire le connessioni di rete sugli indirizzi IP permanenti configurati.Ready
: indica che la configurazione dell'indirizzo IP permanente è valida e funzionale. I pod sono raggiungibili sugli indirizzi IP permanenti forniti se hai configurato l'applicazione per utilizzarli. Questa impostazione è impostata suTrue
quando anche le altre tre condizioni precedenti sonoTrue
.
Modalità Reazioni
Le modalità di reazione determinano il comportamento del sistema quando il pod collegato a un indirizzo IP permanente subisce modifiche, ad esempio lo spostamento tra i nodi o quando un pod corrispondente appena creato diventa disponibile. Puoi utilizzare le modalità di reazione per mantenere utilizzabili i tuoi indirizzi IP persistenti anche quando i pod cambiano.
Le modalità di reazione sono una delle seguenti:
ReadyCondition
In modalità ReadyCondition, il sistema di indirizzi IP permanenti dà la priorità all'integrità dei pod. Il sistema di indirizzi IP permanenti assegna indirizzi IP solo ai pod che corrispondono alle etichette specificate e hanno superato i probe di integrità di Kubernetes, indicando il loro stato
Ready
comeTrue
. Questa modalità è ideale per le applicazioni in cui è fondamentale che il pod che riceve l'indirizzo IP permanente sia completamente pronto a gestire il traffico in entrata e in uscita.Esiste
La modalità Esiste dà la priorità alla presenza di un pod. L'indirizzo IP permanente viene collegato a un pod se questo corrisponde alle etichette nella configurazione ed è stato pianificato su un nodo specifico del cluster. Ciò significa che il pod esiste e ha un luogo designato per l'esecuzione. Questa modalità è adatta a scenari in cui l'assegnazione rapida dell'indirizzo IP persistente ha la priorità rispetto alla disponibilità rigorosa o in ambienti come lo sviluppo e il test in cui la connettività immediata potrebbe essere più importante della piena integrità dell'applicazione.
StatefulSets
Gli oggetti StatefulSets sono un tipo di workload Kubernetes progettato per le applicazioni che hanno bisogno di identificatori stabili e spazio di archiviazione permanente. I pod all'interno di uno StatefulSet hanno nomi prevedibili (ad esempio: my-app-0, my-app-1).
Deployment
I deployment sono un tipo di carico di lavoro Kubernetes per la gestione di applicazioni stateless in cui i pod sono generalmente intercambiabili. I nomi dei pod all'interno dei deployment non sono completamente prevedibili.
Casi d'uso
Gli indirizzi IP permanenti per i pod GKE coprono diversi casi d'uso per i fornitori di servizi di rete e sicurezza che eseguono applicazioni correlate alla rete su GKE e GKE Enterprise.
Gli indirizzi IP permanenti per i pod GKE riguardano i seguenti casi d'uso:
- Controllo del NAT:assegnando indirizzi IP permanenti ai pod che eseguono funzioni di rete, ottieni un controllo granulare sugli indirizzi IP di origine utilizzati per il traffico in uscita. In questo modo puoi integrare la tua logica NAT proprietaria.
- Pool di indirizzi IP dedicati: gli indirizzi IP dedicati ti consentono di abbinare indirizzi specifici a singoli pod 5G Core, garantendo la compatibilità con software di fornitori specializzati.
- Flussi di traffico affidabili:poiché il traffico di ritorno deve essere reindirizzato tramite la stessa funzione di rete, gli indirizzi IP permanenti garantiscono che i sistemi esterni riconoscano e rispondano al pod corretto senza interruzioni nella comunicazione.
Vantaggi
Gli indirizzi IP permanenti per i pod GKE offrono i seguenti vantaggi:
- Identità esterna:se assegni a un pod un indirizzo IP permanente esterno, i sistemi esterni possono raggiungere in modo coerente quel pod, anche se viene riavviato o spostato all'interno del cluster. Ciò è utile per i servizi che richiedono un endpoint rilevabile esternamente.
- Comunicazione affidabile:le applicazioni che dipendono da altre risorse con indirizzi IP specifici possono stabilire connessioni in modo affidabile utilizzando indirizzi IP persistenti. Gli indirizzi IP permanenti sono importanti per i sistemi o le applicazioni legacy con dipendenze di indirizzi IP hardcoded.
- Migrazioni legacy: le migrazioni legacy possono aiutarti a eseguire la migrazione delle applicazioni che si basano su indirizzi IP specifici durante il processo di transizione.
- BYOIP: BYOIP ti consente di mantenere il controllo su intervalli di indirizzi IP specifici di tua proprietà utilizzandoli all'interno dei cluster GKE.
Passaggi successivi
- Controllare la comunicazione con i pod GKE con indirizzi IP permanenti
- Leggi Informazioni sul supporto di più reti per i pod
- Leggi Configura il supporto di più reti per i pod