Weisen Sie einzelnen Pods Sicherheitsgruppen zu - Amazon EKS

Hilf 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.

Wenn Sie zu diesem Benutzerhandbuch beitragen möchten, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.

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.

Weisen Sie einzelnen Pods Sicherheitsgruppen zu

Gilt für: Linux-Knoten mit EC2 Amazon-Instances

Gilt für: Private Subnetze

Sicherheitsgruppen für Pods integrieren EC2 Amazon-Sicherheitsgruppen in Kubernetes Pods. Sie können EC2 Amazon-Sicherheitsgruppen verwenden, um Regeln zu definieren, die eingehenden und ausgehenden Netzwerkverkehr zu und von Pods zulassen, die Sie auf Knoten bereitstellen, die auf vielen EC2 Amazon-Instance-Typen und Fargate laufen. Eine ausführliche Erläuterung dieser Funktion finden Sie im Blogbeitrag Einführung in Sicherheitsgruppen für Pods.

Kompatibilität mit den Funktionen des Amazon VPC CNI-Plug-ins für Kubernetes-Funktionen

Sie können Sicherheitsgruppen für Pods mit den folgenden Funktionen verwenden:

Überlegungen

Beachten Sie vor der Bereitstellung von Sicherheitsgruppen für Pods die folgenden Einschränkungen und Bedingungen:

  • Sicherheitsgruppen für Pods können nicht mit Windows-Knoten verwendet werden.

  • Sicherheitsgruppen für Pods können mit Clustern verwendet werden, die für die IPv6 Familie konfiguriert sind und EC2 Amazon-Knoten enthalten. Verwenden Sie dazu Version 1.16.0 oder höher des Amazon VPC CNI-Plug-ins. Sie können Sicherheitsgruppen für Pods mit Clustern verwenden und IPv6 Familien konfigurieren, die nur Fargate-Knoten enthalten, indem Sie Version 1.7.7 oder höher des Amazon VPC CNI-Plug-ins verwenden. Weitere Informationen finden Sie unter Erfahren Sie mehr über IPv6 Adressen für Cluster, Pods und Dienste

  • Sicherheitsgruppen für Pods werden von den meisten Nitro-basierten EC2 Amazon-Instance-Familien unterstützt, allerdings nicht von allen Generationen einer Familie. Beispielsweise werden die m5 r6g Instance-Familie und die Instance-Generationen c5 r5 m6gc6g,,,, und unterstützt. Es werden keine Instance-Typen in der t-Familie unterstützt. Eine vollständige Liste der unterstützten Instance-Typen finden Sie in der Datei limits.go unter. GitHub Ihre Knoten müssen von einem der aufgelisteten Instance-Typen sein, die in der Datei mit IsTrunkingCompatible: true gekennzeichnet sind.

  • Wenn Sie auch Pod-Sicherheitsrichtlinien verwenden, um den Zugriff auf die Pod-Mutation einzuschränken, muss der eks:vpc-resource-controller Kubernetes-Benutzer in den Kubernetes-Dateien angegeben werden, denen Sie ClusterRoleBinding zugewiesen sind. role psp Wenn Sie das standardmäßige Amazon EKSpsp,role, und verwendenClusterRoleBinding, ist dies der eks:podsecuritypolicy:authenticatedClusterRoleBinding. Fügen Sie beispielsweise den Benutzer zum subjects:-Abschnitt hinzu, wie im folgenden Beispiel gezeigt:

    [...] subjects: - kind: Group apiGroup: rbac.authorization.k8s.io name: system:authenticated - apiGroup: rbac.authorization.k8s.io kind: User name: eks:vpc-resource-controller - kind: ServiceAccount name: eks-vpc-resource-controller
  • Wenn Sie benutzerdefinierte Netzwerk- und Sicherheitsgruppen für Pods zusammen verwenden, wird die in den Sicherheitsgruppen für Pods angegebene Sicherheitsgruppe anstelle der in der angegebenen Sicherheitsgruppe verwendetENIConfig.

  • Wenn Sie eine Version 1.10.2 oder eine frühere Version des Amazon VPC CNI-Plug-ins verwenden und die terminationGracePeriodSeconds Einstellung in Ihre Pod-Spezifikation aufnehmen, darf der Wert für die Einstellung nicht Null sein.

  • Wenn Sie eine Version 1.10 oder eine frühere Version des Amazon VPC CNI-Plug-ins oder eine Version 1.11 mit POD_SECURITY_GROUP_ENFORCING_MODE = verwendenstrict, was die Standardeinstellung ist, werden Kubernetes-Services des Typs NodePort und die LoadBalancer Verwendung von Instance-Zielen mit der externalTrafficPolicy Einstellung auf Local nicht mit Pods unterstützt, denen Sie Sicherheitsgruppen zuweisen. Weitere Informationen zur Verwendung eines Load Balancers mit Instance-Zielen finden Sie unter Weiterleiten von TCP- und UDP-Verkehr mit Network Load Balancers.

  • Wenn Sie eine Version 1.10 oder eine frühere Version des Amazon VPC CNI-Plug-ins oder eine Version 1.11 mit POD_SECURITY_GROUP_ENFORCING_MODE = verwendenstrict, was die Standardeinstellung ist, ist die Quell-NAT für ausgehenden Datenverkehr von Pods mit zugewiesenen Sicherheitsgruppen deaktiviert, sodass die Regeln für ausgehende Sicherheitsgruppen angewendet werden. Um auf das Internet zuzugreifen, müssen Pods mit zugewiesenen Sicherheitsgruppen auf Knoten gestartet werden, die in einem privaten Subnetz bereitgestellt werden, das mit einem NAT-Gateway oder einer NAT-Instance konfiguriert ist. Pods mit zugewiesenen Sicherheitsgruppen, welche in öffentlichen Subnetzen bereitgestellt werden, können nicht auf das Internet zugreifen.

    Wenn Sie die Version 1.11 oder eine neuere Version des Plugins mit POD_SECURITY_GROUP_ENFORCING_MODE = verwendenstandard, wird der Pod-Verkehr, der für außerhalb der VPC bestimmt ist, in die IP-Adresse der primären Netzwerkschnittstelle der Instance übersetzt. Für diesen Datenverkehr werden die Regeln in den Sicherheitsgruppen für die primäre Netzwerkschnittstelle verwendet und nicht die Regeln in den Sicherheitsgruppen des Pods.

  • Um die Calico-Netzwerkrichtlinie mit Pods zu verwenden, denen Sicherheitsgruppen zugeordnet sind, müssen Sie Version 1.11.0 oder höher des Amazon VPC CNI-Plug-ins verwenden und = setzen. POD_SECURITY_GROUP_ENFORCING_MODE standard Andernfalls unterliegt der Verkehrsfluss zu und von Pods mit zugehörigen Sicherheitsgruppen nicht der Durchsetzung der Calico-Netzwerkrichtlinien und ist nur auf die Durchsetzung von EC2 Amazon-Sicherheitsgruppen beschränkt. Informationen zum Aktualisieren Ihrer Version von Amazon VPC CNI finden Sie unter Pods mit dem Amazon VPC CNI zuweisen IPs .

  • Pods, die auf EC2 Amazon-Knoten ausgeführt werden und Sicherheitsgruppen in Clustern verwenden, die diese verwenden, NodeLocal DNSCachewerden nur mit Version 1.11.0 oder höher des Amazon VPC CNI-Plug-ins und mit POD_SECURITY_GROUP_ENFORCING_MODE = unterstützt. standard Informationen zum Aktualisieren Ihrer Version des Amazon-VPC-CNI-Plug-ins finden Sie unter Pods mit dem Amazon VPC CNI zuweisen IPs .

  • Sicherheitsgruppen für Pods können zu einer höheren Pod-Startlatenz für Pods mit hoher Kundenabwanderung führen. Dies ist auf eine Ratenbegrenzung im Ressourcencontroller zurückzuführen.

  • Der Geltungsbereich der EC2 Sicherheitsgruppe liegt auf Pod-Ebene. Weitere Informationen finden Sie unter Sicherheitsgruppe.

    Wenn Sie POD_SECURITY_GROUP_ENFORCING_MODE=standard und festlegenAWS_VPC_K8S_CNI_EXTERNALSNAT=false, verwendet der Datenverkehr, der für Endpunkte außerhalb der VPC bestimmt ist, die Sicherheitsgruppen des Knotens, nicht die Sicherheitsgruppen des Pods.