Beschränken Sie pod den Verkehr mit Kubernetes Netzwerkrichtlinien - Amazon EKS

Hilf mit, diese Seite zu verbessern

Möchten Sie zu diesem Benutzerhandbuch beitragen? Scrollen Sie zum Ende dieser Seite und wählen Sie Diese Seite bearbeiten am aus GitHub. Ihre Beiträge werden dazu beitragen, unser Benutzerhandbuch für alle zu verbessern.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Beschränken Sie pod den Verkehr mit Kubernetes Netzwerkrichtlinien

Standardmäßig gibt es in Kubernetes keine Einschränkungen für IP-Adressen, Ports oder Verbindungen zwischen Pods in Ihrem Cluster oder zwischen Ihren Pods und Ressourcen in anderen Netzwerken. Sie können die Kubernetes-Netzwerkrichtlinie verwenden, um Netzwerkverkehr zu und von Ihren Pods einzuschränken. Weitere Informationen finden Sie unter Netzwerkrichtlinien in der Kubernetes-Dokumentation.

Wenn Sie 1.13 oder eine frühere Version des Amazon VPC CNI plugin for Kubernetes für Ihren Cluster verwenden, müssen Sie eine Drittanbieterlösung implementieren, um Kubernetes-Netzwerkrichtlinien auf Ihren Cluster anzuwenden. 1.14 oder eine höhere Version des Plug-ins kann Netzwerkrichtlinien implementieren, sodass Sie keine Drittanbieterlösung verwenden müssen. In diesem Thema erfahren Sie, wie Sie Ihren Cluster so konfigurieren, dass Sie Kubernetes-Netzwerkrichtlinien für Ihren Cluster nutzen können, ohne ein Drittanbieter-Add-on zu verwenden.

Netzwerkrichtlinien im Amazon VPC CNI plugin for Kubernetes werden in den folgenden Konfigurationen unterstützt.

  • EKSAmazon-Cluster der Version 1.25 und höher.

  • Version 1.14 oder höher von Amazon VPC CNI plugin for Kubernetes in Ihrem Cluster.

  • Für IPv4- oder IPv6-Adressen konfigurierter Cluster.

  • Sie können Netzwerkrichtlinien mit Sicherheitsgruppen für Pods verwenden. Mit Netzwerkrichtlinien können Sie die gesamte Kommunikation innerhalb eines Clusters steuern. Mit Sicherheitsgruppen für Pods können Sie den Zugriff auf AWS-Services Anwendungen innerhalb eines steuernPod.

  • Sie können Netzwerkrichtlinien mit benutzerdefinierten Netzwerken und Präfixdelegierung verwenden.

Überlegungen

  • Wenn Sie Amazon VPC CNI plugin for Kubernetes Netzwerkrichtlinien mit dem auf Ihren Cluster anwenden Amazon VPC CNI plugin for Kubernetes, können Sie die Richtlinien nur auf Amazon EC2 Linux-Knoten anwenden. Sie können nicht auf Fargate- oder Windows-Knoten angewendet werden.

  • Wenn Ihr Cluster derzeit eine Drittanbieterlösung zur Verwaltung von Kubernetes-Netzwerkrichtlinien verwendet, können Sie dieselben Richtlinien mit dem Amazon VPC CNI plugin for Kubernetes verwenden. Sie müssen jedoch Ihre vorhandene Lösung entfernen, damit sie nicht dieselben Richtlinien verwaltet.

  • Sie können mehrere Netzwerkrichtlinien auf denselben Pod anwenden. Wenn zwei oder mehr Richtlinien konfiguriert werden, die denselben Pod auswählen, werden alle Richtlinien auf den Pod angewendet.

  • Die maximale Anzahl eindeutiger Kombinationen von Ports für jedes Protokoll in jedem Protokoll ingress: oder für jeden egress: Selektor in einer Netzwerkrichtlinie beträgt 24.

  • Für jeden Ihrer Kubernetes-Services muss der Port des Services mit dem Port des Containers identisch sein. Wenn Sie benannte Ports verwenden, verwenden Sie denselben Namen auch in der Servicespezifikation.

  • Die Netzwerkrichtlinienfunktion erstellt eine PolicyEndpoint benutzerdefinierte Ressourcendefinition (CRD), die aufgerufen wirdpolicyendpoints.networking.k8s.aws, und erfordert diese. PolicyEndpointObjekte der Custom Resource werden von Amazon verwaltetEKS. Ändern oder löschen Sie diese Ressourcen nicht.

  • Wenn Sie Pods ausführen, die die IAM Anmeldeinformationen der Instance-Rolle verwenden oder eine Verbindung zu den herstellen EC2IMDS, achten Sie darauf, ob Netzwerkrichtlinien vorhanden sind, die den Zugriff auf die blockieren würden EC2IMDS. Möglicherweise müssen Sie eine Netzwerkrichtlinie hinzufügen, um den Zugriff auf zu ermöglichen EC2IMDS. Weitere Informationen finden Sie unter Instance-Metadaten und Benutzerdaten im EC2 Amazon-Benutzerhandbuch.

    Pods, die IAMRollen für Dienstkonten verwenden, greifen nicht darauf zu EC2IMDS.

  • Das Amazon VPC CNI plugin for Kubernetes wendet nur Netzwerkrichtlinien auf die primäre Schnittstelle für jeden Pod (eth0) an, nicht auf zusätzliche Netzwerkschnittstellen für die einzelnen Pods. Das hat Auswirkungen auf folgende Architekturen:

    • IPv6-Pods, bei denen die Variable ENABLE_V4_EGRESS auf true festgelegt ist. Diese Variable ermöglicht es der IPv4 Ausgangsfunktion, die IPv6 Pods mit Endpunkten zu verbinden, z. B. mit IPv4 Endpunkten außerhalb des Clusters. Die IPv4 Ausgangsfunktion erstellt eine zusätzliche Netzwerkschnittstelle mit einer lokalen Loopback-Adresse. IPv4

    • Bei Verwendung verketteter Netzwerk-Plugins wie. Multus Da diese Plugins jedem Pod Netzwerkschnittstellen hinzufügen, werden Netzwerkrichtlinien nicht auf die verketteten Netzwerk-Plugins angewendet.