Unterstützung für die Verbesserung dieser Seite beitragen
Um zu diesem Benutzerhandbuch beizutragen, klicken Sie auf den Link Diese Seite auf GitHub bearbeiten, der sich im rechten Bereich jeder Seite befindet.
Cluster-API-Server-Endpunkt
Dieses Thema hilft Ihnen, den privaten Zugriff für den Kubernetes-API-Server-Endpunkt Ihres Amazon-EKS-Clusters zu aktivieren und den öffentlichen Zugriff über das Internet einzuschränken oder vollständig zu deaktivieren.
Wenn Sie einen neuen Cluster erstellen, erstellt Amazon EKS einen Endpunkt für den verwalteten Kubernetes-API-Server, über den Sie mit Ihrem Cluster kommunizieren (mit Kubernetes-Verwaltungswerkzeugen wie kubectl). Standardmäßig ist dieser API-Server-Endpunkt öffentlich im Internet zugänglich und der Zugriff auf den API-Server wird durch eine Kombination aus AWS Identity and Access Management (IAM) und nativer Kubernetes Role Based Access Control
IPv6-Cluster-Endpunkt-Format
EKS erstellt für neue IPv6-Cluster, die nach Oktober 2024 erstellt werden, einen eindeutigen Dual-Stack-Endpunkt im folgenden Format: Ein IPv6-Cluster ist ein Cluster, für den Sie in der Einstellung „IP-Familie (ipFamily)“ des Clusters IPv6 auswählen.
Anmerkung
Der Dual-Stack-Cluster-Endpunkt wurde im Oktober 2024 eingeführt. Weitere Informationen zu IPv6-Clustern finden Sie unter Informationen zu IPv6-Adressen für Cluster, Pods und Services. Cluster, die vor Oktober 2024 erstellt wurden, verwenden stattdessen das folgende Endpunkt-Format.
IPv4-Cluster-Endpunkt-Format
EKS erstellt für jeden Cluster, der in der IP-Familieneinstellung (ipFamily) des Clusters IPv4 auswählt, einen eindeutigen Endpunkt im folgenden Format:
Anmerkung
Vor Oktober 2024 verwendeten IPv6-Cluster auch dieses Endpunkt-Format. Bei diesen Clustern werden sowohl beim öffentlichen als auch beim privaten Endpunkt nur IPv4-Adressen von diesem Endpunkt aufgelöst.
Privater Cluster-Endpunkt
Sie können den privaten Zugriff auf den Kubernetes-API-Server aktivieren, sodass die gesamte Kommunikation zwischen Ihren Knoten und dem API-Server innerhalb Ihrer VPC bleibt. Sie können einschränken, welche IP-Adressen über das Internet auf Ihren API-Server zugreifen dürfen, oder den Internetzugriff auf den API-Server vollständig deaktivieren.
Anmerkung
Da es sich bei diesem Endpunkt um den Kubernetes-API-Server und nicht um einen traditionellen AWS-PrivateLink-Endpunkt für die Kommunikation mit einer AWS-API handelt, wird er in der Amazon-VPC-Konsole nicht als Endpunkt angezeigt.
Wenn Sie den privaten Endpunktzugriff für Ihren Cluster aktivieren, erstellt Amazon EKS in Ihrem Namen eine privat gehostete Route-53-Zone und ordnet diese der VPC Ihres Clusters zu. Diese private gehostete Zone wird von Amazon EKS verwaltet und wird nicht in den Route-53-Ressourcen Ihres Kontos angezeigt. Damit die private gehostete Zone Datenverkehr ordnungsgemäß an Ihren API-Server weiterleiten kann, müssen enableDnsHostnames und enableDnsSupport für Ihre VPC auf true gesetzt sein und die DHCP-Optionen für Ihre VPC müssen AmazonProvidedDNS in ihrer Domainnamen-Serverliste enthalten. Weitere Informationen finden Sie unter Aktualisieren der DNS-Unterstützung für Ihre VPC im Amazon-VPC-Benutzerhandbuch.
Sie können Ihre Anforderungen für den Zugriff auf Ihre API-Server-Endpunkte definieren, wenn Sie einen neuen Cluster erstellen. Sie können den Zugriff auf die API-Server-Endpunkte für einen Cluster jederzeit aktualisieren.
Ändern des Cluster-Endpunktzugriffs
Verwenden Sie die Verfahren in diesem Abschnitt, um den Endpunktzugriff für einen bestehenden Cluster zu ändern. Die folgende Tabelle zeigt die unterstützten Kombinationen von API-Server-Endpunktzugriffen und das damit verbundene Verhalten.
| Endpunkt für öffentlichen Zugriff | Endpunkt für privaten Zugriff | Behavior |
|---|---|---|
|
Enabled |
Disabled |
|
|
Enabled |
Aktiviert |
|
|
Disabled |
Aktiviert |
|
CIDR-Blöcke im öffentlichen Endpunkt (IPv6-Cluster)
Sie können IPv6 und IPv4-CIDR-Blöcke zum öffentlichen Endpunkt eines IPv6-Clusters hinzufügen, da der öffentliche Endpunkt Dual-Stack-fähig ist. Dies gilt nur für neue Cluster mit dem Wert ipFamily auf IPv6, die Sie im Oktober 2024 oder später erstellt haben. Sie können diese Cluster anhand des neuen Endpunkt-Domain-Namens api.aws identifizieren.
CIDR-Blöcke im öffentlichen Endpunkt (IPv4-Cluster)
Sie können dem öffentlichen Endpunkt eines IPv4-Clusters IPv4-CIDR-Blöcke hinzufügen. Sie können keine IPv6-CIDR-Blöcke zum öffentlichen Endpunkt eines IPv4-Clusters hinzufügen. Wenn Sie dies versuchen, gibt EKS die folgende Fehlermeldung zurück: The following CIDRs are invalid in publicAccessCidrs
CIDR-Blöcke im öffentlichen Endpunkt (IPv6-Cluster vor Oktober 2024 erstellt)
Sie können IPv4-CIDR-Blöcke zum öffentlichen Endpunkt der alten IPv6-Cluster hinzufügen, die Sie vor Oktober 2024 erstellt haben. Sie können diese Cluster anhand des eks.amazonaws.com.rproxy.govskope.ca-Endpunkts identifizieren. Sie können dem öffentlichen Endpunkt dieser alten IPv6-Cluster, die Sie vor Oktober 2024 erstellt haben, keine IPv6-CIDR-Blöcke hinzufügen. Wenn Sie dies versuchen, gibt EKS die folgende Fehlermeldung zurück: The following CIDRs are invalid in publicAccessCidrs
Zugriff auf einen privaten API-Server
Wenn Sie den öffentlichen Zugriff für den Kubernetes-API-Server-Endpunkt Ihres Clusters deaktiviert haben, können Sie nur über Ihre VPC oder ein verbundenes Netzwerk auf den API-Server zugreifen. Hier sind einige Möglichkeiten, um auf den Kubernetes-API-Server-Endpunkt zuzugreifen:
- Verbundenes Netzwerk
-
Verbinden Sie Ihr Netzwerk über ein AWS-Transit-Gateway oder eine andere Konnektivitätsoption mit der VPC und verwenden Sie dann einen Computer im verbundenen Netzwerk. Sie müssen sicherstellen, dass Ihre Amazon-EKS-Steuerebenen-Sicherheitsgruppe Regeln enthält, die den eingehenden Datenverkehr auf Port 443 von Ihrem verbundenen Netzwerk zulassen.
- Bastion-Host von Amazon EC
-
Sie können eine Amazon-EC2-Instance in einem öffentlichen Subnetz in der VPC Ihres Clusters starten und sich dann über SSH in dieser Instance anmelden, um
kubectl-Befehle auszuführen. Weitere Informationen finden Sie unter Linux-Bastion-Hosts in AWS. Sie müssen sicherstellen, dass Ihre Amazon-EKS-Steuerebenen-Sicherheitsgruppe Regeln enthält, die den eingehenden Datenverkehr auf Port 443 von Ihrem Bastion-Host zulassen. Weitere Informationen finden Sie unter Anforderungen der Amazon-EKS-Sicherheitsgruppe für Cluster anzeigen. Wenn Sie
kubectlfür Ihren Bastion-Host konfigurieren, stellen Sie sicher, dass Sie AWS-Anmeldeinformationen verwenden, die der RBAC-Konfiguration Ihres Clusters bereits zugeordnet sind. Fügen Sie alternativ zur RBAC-Konfiguration den IAM-Prinzipal hinzu, die Ihre Bastion verwenden wird (bevor Sie den öffentlichen Zugriff auf den Endpunkt entfernen). Weitere Informationen erhalten Sie unter Gewähren von Zugriff auf Kubernetes-APIs für IAM-Benutzer und Rollen und Nicht autorisiert oder Zugriff verweigert (kubectl). - AWS-Cloud9-IDE
-
AWS Cloud9 ist eine cloudbasierte integrierte Entwicklungsumgebung (IDE), mit der Sie Ihren Code vollständig mit einem Browser schreiben, ausführen und debuggen können. Sie können eine AWS-Cloud9-IDE im VPC Ihres Clusters erstellen und die IDE zur Kommunikation mit Ihrem Cluster verwenden. Weitere Informationen finden Sie unter Erstellung einer Umgebung in AWS Cloud9. Sie müssen sicherstellen, dass Ihre Amazon-EKS-Steuerebenen-Sicherheitsgruppe Regeln enthält, die den eingehenden Datenverkehr auf Port 443 von Ihrer IDE-Sicherheitsgruppe zulassen. Weitere Informationen finden Sie unter Anforderungen der Amazon-EKS-Sicherheitsgruppe für Cluster anzeigen.
Wenn Sie
kubectlfür Ihre AWS-Cloud9-IDE konfigurieren, stellen Sie sicher, dass Sie AWS-Anmeldeinformationen verwenden, die der RBAC-Konfiguration Ihres Clusters bereits zugeordnet sind. Fügen Sie alternativ zur RBAC-Konfiguration den IAM-Prinzipal hinzu, die Ihre IDE verwenden wird (bevor Sie den öffentlichen Zugriff auf den Endpunkt entfernen). Weitere Informationen erhalten Sie unter Gewähren von Zugriff auf Kubernetes-APIs für IAM-Benutzer und Rollen und Nicht autorisiert oder Zugriff verweigert (kubectl).
📝 Diese Seite auf GitHub bearbeiten