Limit Pod Verkehr mit Kubernetes Netzwerkrichtlinien - Amazon EKS

Helfen Sie mit, diese Seite 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.

Möchten Sie zu diesem Benutzerhandbuch beitragen? Wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet. Ihre Beiträge werden dazu beitragen, dass unser Benutzerhandbuch für alle besser wird.

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.

Limit Pod Verkehr mit Kubernetes Netzwerkrichtlinien

Standardmäßig gibt es keine Einschränkungen in Kubernetes für IP-Adressen, Ports oder Verbindungen zwischen Pods in Ihrem Cluster oder zwischen Ihren Pods und Ressourcen in jedem anderen Netzwerk. Sie können Folgendes verwenden … Kubernetes Netzwerkrichtlinie zur Beschränkung des Netzwerkverkehrs zu und von Ihrem Pods. Weitere Informationen finden Sie unter Netzwerkrichtlinien im Kubernetes -Dokumentation.

Wenn Sie eine Version 1.13 oder eine frühere Version von haben Amazon VPC CNI plugin for Kubernetes Auf Ihrem Cluster müssen Sie eine Drittanbieterlösung implementieren, um sich bewerben zu können Kubernetes Netzwerkrichtlinien für Ihren Cluster. In der Version 1.14 oder höher des Plugins können Netzwerkrichtlinien implementiert werden, sodass Sie keine Drittanbieterlösung verwenden müssen. In diesem Thema erfahren Sie, wie Sie Ihren Cluster für die Verwendung konfigurieren Kubernetes Netzwerkrichtlinie auf Ihrem Cluster ohne Verwendung eines Drittanbieter-Add-ons.

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

  • Amazon-EKS-Cluster ab Version 1.25.

  • Version 1.14 oder höher von Amazon VPC CNI plugin for Kubernetes auf 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 Dienste von Anwendungen innerhalb eines Pod.

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

Überlegungen

Architektur

  • Bei der Bewerbung Amazon VPC CNI plugin for Kubernetes Netzwerkrichtlinien für Ihren Cluster mit dem Amazon VPC CNI plugin for Kubernetes , können Sie die Richtlinien nur auf Amazon EC2 Linux-Knoten anwenden. Sie können die Richtlinien nicht auf Fargate- oder Windows-Knoten anwenden.

  • Netzwerkrichtlinien gelten nur für eine IPv4 oder für IPv6 Adressen, aber nicht für beide. In einem IPv4 Cluster weist das VPC-CNI Pods IPv4 Adressen zu und wendet Richtlinien an. IPv4 In einem IPv6 Cluster weist das VPC-CNI Pods IPv6 Adressen zu und wendet Richtlinien an. IPv6 Alle IPv4 Netzwerkrichtlinienregeln, die auf einen IPv6 Cluster angewendet werden, werden ignoriert. Alle IPv6 Netzwerkrichtlinienregeln, die auf einen IPv4 Cluster angewendet werden, werden ignoriert.

Netzwerkrichtlinien

  • Netzwerkrichtlinien werden nur angewendet auf Pods die sind Teil eines Deployment. Eigenständig Pods auf die es kein metadata.ownerReferences Set gibt, können keine Netzwerkrichtlinien auf sie angewendet werden.

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

  • 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 von Ihnen Kubernetes Dienste, der Serviceport muss derselbe sein wie der Container-Port. Wenn Sie benannte Ports verwenden, verwenden Sie denselben Namen auch in der Servicespezifikation.

Migration

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

Installation

  • Das Netzwerkrichtlinienfeature erstellt und erfordert die Definition einer benutzerdefinierten PolicyEndpoint-Ressource (Custom Resource Definition, CRD) namens policyendpoints.networking.k8s.aws. PolicyEndpoint-Objekte der benutzerdefinierten Ressource werden von Amazon EKS verwaltet. Sie sollten diese Ressourcen nicht ändern oder löschen.

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

    Pods, die IAM-Rollen für Dienstkonten oder EKS Pod Identity verwenden, greifen nicht auf EC2 IMDS zu.

  • Das Tool Amazon VPC CNI plugin for Kubernetes wendet keine Netzwerkrichtlinien auf zusätzliche Netzwerkschnittstellen für jeden Pod an, sondern nur auf die primäre Schnittstelle für jeden Pod ()eth0. 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 der Verwendung verketteter Netzwerk-Plugins wie Multus. Da diese Plugins jedem Pod Netzwerkschnittstellen hinzufügen, werden Netzwerkrichtlinien nicht auf die verketteten Netzwerk-Plugins angewendet.