Informazioni sugli indirizzi IP permanenti per i pod


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:

Architettura multi-rete
Architettura multi-rete

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 risorsa GKEIPRoute è valida. Se la configurazione presenta errori, la condizione Accepted è 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 condizione GCPReady.
    • 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 su True quando anche le altre tre condizioni precedenti sono True.

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 come True. 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