Egress (uscita controllata)
Per default i pod escono verso l’esterno con SNAT sull’IP del nodo. Spesso però serve controllare l’uscita: un IP sorgente stabile per i firewall esterni, o limitare le destinazioni raggiungibili. OVN-Kubernetes offre tre strumenti.
EgressIP — IP sorgente stabile
Sezione intitolata “EgressIP — IP sorgente stabile”Assegna un IP sorgente fisso al traffico in uscita di uno o più namespace, ospitato su nodi designati. Utile quando un sistema esterno (DB, API di terze parti) accetta connessioni solo da IP in allowlist.
apiVersion: k8s.ovn.org/v1kind: EgressIPmetadata: name: egress-prodspec: egressIPs: [192.168.10.50] namespaceSelector: matchLabels: egress: prodI nodi che possono ospitare l’IP vanno etichettati (k8s.ovn.org/egress-assignable).
EgressFirewall — limitare le destinazioni
Sezione intitolata “EgressFirewall — limitare le destinazioni”Regola, per namespace, verso quali destinazioni esterne i pod possono uscire, con regole ordinate Allow/Deny su CIDR o nomi DNS.
apiVersion: k8s.ovn.org/v1kind: EgressFirewallmetadata: name: default namespace: tenant-xspec: egress: - type: Allow to: { cidrSelector: 10.20.0.0/16 } - type: Deny to: { cidrSelector: 0.0.0.0/0 }Egress Router
Sezione intitolata “Egress Router”Un pod dedicato che fa da gateway verso una rete esterna specifica, con un IP sorgente noto — utile per integrazioni legacy che richiedono un unico punto di uscita.
Questi strumenti agiscono sul traffico nord-sud al gateway router e si combinano con le NetworkPolicy per le regole est-ovest.