Firewall & Router in Kubernetes Cluster

#7281846
Lesenswert?

Networking in k8s ist ziemlich kompliziert für alles was über HTTP- 
(Web-) Server hinaus geht. In allen größeren Clustern die ich gesehen 
habe saß eine Firewall außerhalb, vor dem Cluster, nicht innerhalb des 
Clusters. Möglich sollte es sein.

Was normal ist ist Load Balancing und ein Ingress Controller wie nginx 
oder, wenn du wahnsinnig bist, direkt istio. Den konfigurierst du so, 
dass nur die Ports für deine vom Cluster öffentlich angebotenen Dienste 
offen sind. Ob eine Firewall dahinter noch Sinn ergibt müsste man einen 
k8s Security-Experten fragen.

Innerhalb eines k8s Clusters selber herrscht erst mal Anarchie. Jeder 
Pod kann mit jedem anderen wie es beliebt. Das muss man erst mal mit 
Network Policies, typischerweise mit Calico, einschränken, sonst nutzt 
einem eine Firewall in einem Pod sehr wenig.

Egress kann man ebenfalls mit NetworkPolicies einschränken. Das sollte 
man zumindest für Production Systeme.

Ich würde vorschlagen du siehst dir erst mal die entsprechenden k8s 
Konzepte an
https://kubernetes.io/docs/concepts/services-networking/
https://kubernetes.io/docs/concepts/security/

Und wenn du richtig durchgeknallt bist istio
https://istio.io/

Um vom istio-Waschzettel zu zitieren (bitte halten Sie ihre Bingo-Karte 
bereit):
>> Istio extends Kubernetes to establish a programmable, application-aware
>> network using the powerful Envoy service proxy. Working with both
>> Kubernetes and traditional workloads, Istio brings standard, universal
>> traffic management, telemetry, and security to complex deployments.
BINGO!

Aus Erfahrung kann ich sage, ja, macht istio. Aber ein Service Mesh wie 
istio ist noch mal eine ganz andere Hausnummer als nur k8s. Istio nimmt 
man nicht aus Spaß.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren