Ansichten:
Profilanwendbarkeit: Stufe 1 - Cluster / Steuerungsebene
Stellen Sie sicher, dass die Netzwerkrichtlinie aktiviert und entsprechend festgelegt ist, wenn Sie einen Amazon EKS-Cluster erstellen, da die bei der Erstellung ausgewählte Netzwerkrichtlinienoption später nicht geändert werden kann. Amazon EKS unterstützt Calico-Netzwerkrichtlinien, eine Open-Source-Lösung, die Linux IPTables verwendet, um Netzwerksicherheitsrichtlinien durchzusetzen. Diese Richtlinien werden in Regeln übersetzt, die den Datenverkehr zwischen IP-Paaren erlauben oder verbieten und effektiv als Pod-Level-Firewall fungieren, die den Datenverkehr zwischen Quellen innerhalb eines Clusters einschränkt. Standardmäßig ist der Pod-zu-Pod-Datenverkehr innerhalb eines Clusters uneingeschränkt, es sei denn, es wird eine Netzwerkrichtlinie implementiert, die Labels verwendet, um bestimmte Pods auszuwählen.
Sobald eine Richtlinie auf ein Pod angewendet wird, sperrt sie alle Verbindungen, die nicht ausdrücklich durch die Richtlinie erlaubt sind, während Pods, die von keiner Netzwerk-Richtlinie ausgewählt wurden, weiterhin allen Datenverkehr akzeptieren. Netzwerk-Richtlinien werden über die Kubernetes Network Policy API verwaltet und müssen von einem kompatiblen Netzwerk-Plugin durchgesetzt werden; ohne dieses hat das Erstellen der Ressource allein keine Wirkung. Das Aktivieren der Netzwerk-Richtlinie erfordert das Network Policy Add-on, das automatisch enthalten ist, wenn ein neuer Cluster mit Netzwerk-Richtlinie eingerichtet wird, aber manuell zu bestehenden Clustern hinzugefügt werden muss. Der Prozess des Aktivierens oder Deaktivierens der Netzwerk-Richtlinie löst ein Rolling-Update aller Cluster-Knoten aus, ein langwieriger Vorgang, der andere Cluster-Operationen blockiert, bis er abgeschlossen ist. Darüber hinaus verbraucht die Durchsetzung der Netzwerk-Richtlinie zusätzliche Knotenressourcen, was den Speicherbedarf des kube-system-Prozesses um etwa 128 MB erhöht und etwa 300 Millicores der CPU erfordert.

Auswirkung

Netzwerkrichtlinie erfordert das Netzwerkrichtlinien-Add-on. Dieses Add-on wird automatisch hinzugefügt, wenn ein Cluster mit Netzwerkrichtlinie erstellt wird, aber für einen bestehenden Cluster muss es hinzugefügt werden, bevor die Netzwerkrichtlinie aktiviert werden kann.
Das Aktivieren oder Deaktivieren der Netzwerkrichtlinie führt zu einem rollierenden Update aller Clusterknoten, ähnlich wie bei einem Cluster-Upgrade. Dieser Vorgang ist langwierig und wird andere Vorgänge im Cluster (einschließlich Löschen) sperren, bis er abgeschlossen ist.
Das Aktivieren der Network Policy enforcement verbraucht zusätzliche Ressourcen in den Knoten, erhöht den Speicherbedarf des kube-system Prozesses um etwa 128 MB und erfordert ungefähr 300 Millicores CPU.

Prüfung

Überprüfen Sie, ob das Folgende nicht null ist und mit der entsprechenden Gruppen-ID festgelegt wurde:
    export CLUSTER_NAME=<your cluster name>
    aws eks describe-cluster --name ${CLUSTER_NAME} --query "cluster.resourcesVpcConfig.clusterSecurityGroupId"
   

Wiederherstellung

Verwenden Sie Calico oder eine andere Netzwerkrichtlinien-Engine, um Ihren Datenverkehr zu segmentieren und zu isolieren.