Unterstützung für die Verbesserung dieser Seite beitragen
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.
Um zu diesem Benutzerhandbuch beizutragen, 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.
Überlegungen zu den EKS-Fähigkeiten
In diesem Thema werden wichtige Überlegungen zur Nutzung von EKS-Funktionen behandelt, darunter das Design der Zugriffskontrolle, die Wahl zwischen EKS-Funktionen und selbstverwalteten Lösungen, Architekturmuster für Bereitstellungen mit mehreren Clustern und bewährte Verfahren für den Betrieb.
Capability: IAM-Rollen und Kubernetes RBAC
Jede EKS-Capability-Ressource hat eine konfigurierte Capability-IAM-Rolle. Die Capability-Rolle wird verwendet, um AWS Dienstberechtigungen für EKS-Funktionen zu erteilen, damit sie in Ihrem Namen agieren können. Um beispielsweise die EKS-Funktion für ACK zur Verwaltung von Amazon S3 S3-Buckets zu verwenden, gewähren Sie S3 Bucket Administratorberechtigungen für die Funktion, sodass sie Buckets erstellen und verwalten kann.
Sobald die Funktion konfiguriert ist, können S3-Ressourcen in AWS mit benutzerdefinierten Kubernetes-Ressourcen in Ihrem Cluster erstellt und verwaltet werden. Kubernetes RBAC ist der Cluster-interne Zugriffskontrollmechanismus, mit dem bestimmt wird, welche Benutzer und Gruppen diese benutzerdefinierten Ressourcen erstellen und verwalten können. Erteilen Sie beispielsweise bestimmten Kubernetes RBAC-Benutzern und -Gruppen Berechtigungen zum Erstellen und Verwalten von Ressourcen in Namespaces Ihrer Wahl. Bucket
Auf diese Weise sind IAM und Kubernetes RBAC zwei Hälften des Zugriffskontrollsystems, das die Berechtigungen im Zusammenhang mit den end-to-end Funktionen und Ressourcen von EKS regelt. Es ist wichtig, die richtige Kombination aus IAM-Berechtigungen und RBAC-Zugriffsrichtlinien für Ihren Anwendungsfall zu entwerfen.
Weitere Informationen zu Capability IAM-Rollen und Kubernetes-Berechtigungen finden Sie unter. Sicherheitsüberlegungen für EKS-Funktionen
Architekturmuster mit mehreren Clustern
Bei der Bereitstellung von Funktionen in mehreren Clustern sollten Sie die folgenden gängigen Architekturmuster berücksichtigen:
Hub and Spoke mit zentralisierter Verwaltung
Führen Sie alle drei Funktionen in einem zentral verwalteten Cluster aus, um Workloads zu orchestrieren und die Cloud-Infrastruktur über mehrere Workload-Cluster hinweg zu verwalten.
-
Argo CD auf dem Management-Cluster stellt Anwendungen für Workload-Cluster in verschiedenen Regionen oder Konten bereit
-
ACK auf dem Management-Cluster stellt AWS Ressourcen (RDS, S3, IAM) für alle Cluster bereit
-
kro auf dem Management-Cluster erstellt tragbare Plattformabstraktionen, die in allen Clustern funktionieren
Dieses Muster zentralisiert das Workload- und Cloud-Infrastrukturmanagement und kann den Betrieb für Unternehmen, die viele Cluster verwalten, vereinfachen.
Dezentralisiert GitOps
Workloads und Cloud-Infrastruktur werden über Funktionen auf demselben Cluster verwaltet, auf dem die Workloads ausgeführt werden.
-
Argo CD verwaltet Anwendungsressourcen auf dem lokalen Cluster.
-
ACK-Ressourcen werden für Cluster- und Workload-Anforderungen verwendet.
-
Die Abstraktionen der Kro-Plattform werden installiert und orchestrieren lokale Ressourcen.
Dieses Muster dezentralisiert den Betrieb, wobei die Teams ihre eigenen dedizierten Plattformdienste in einem oder mehreren Clustern verwalten.
Hub-and-Spoke-Lösung mit hybrider ACK-Bereitstellung
Kombinieren Sie zentralisierte und dezentrale Modelle mit zentralisierter Anwendungsbereitstellung und Ressourcenverwaltung auf der Grundlage von Umfang und Eigentümerschaft.
-
Hub-Cluster:
-
Argo CD verwaltet GitOps Bereitstellungen auf dem lokalen Cluster und allen Remote-Workload-Clustern
-
ACK wird auf dem Management-Cluster für Ressourcen im Administratorbereich (Produktionsdatenbanken, IAM-Rollen,) verwendet VPCs
-
kro wird auf dem Management-Cluster für wiederverwendbare Plattformabstraktionen verwendet
-
-
Spoke-Cluster:
-
Workloads werden über Argo CD auf dem zentralisierten Hub-Cluster verwaltet
-
ACK wird lokal für Ressourcen im Workloadbereich (S3-Buckets, Instanzen, SQS-Warteschlangen) verwendet ElastiCache
-
kro wird lokal für die Zusammenstellung von Ressourcen und für Bausteinmuster verwendet
-
Dieses Muster unterscheidet die einzelnen Anliegen: Plattformteams verwalten kritische Infrastrukturen zentral auf Managementclustern, optional einschließlich Workload-Clustern, während Anwendungsteams Cloud-Ressourcen zusammen mit Workloads spezifizieren und verwalten.
Ein Muster auswählen
Berücksichtigen Sie bei der Auswahl einer Architektur die folgenden Faktoren:
-
Organisationsstruktur: Zentralisierte Plattformteams bevorzugen Hub-Modelle; dezentrale Teams bevorzugen möglicherweise Funktionen pro Cluster
-
Umfang der Ressourcen: Ressourcen mit Administratorrechten (Datenbanken, IAM) profitieren häufig von einer zentralen Verwaltung; Workload-Ressourcen (Buckets, Warteschlangen) können lokal verwaltet werden
-
Self-Service: Zentralisierte Plattformteams können präskriptive benutzerdefinierte Ressourcen erstellen und verteilen, um Cloud-Ressourcen für allgemeine Workload-Anforderungen sicher selbst zu verwalten
-
Cluster-Flottenmanagement: Zentralisierte Management-Cluster bieten eine kundeneigene Steuerungsebene für das EKS-Cluster-Flottenmanagement, zusammen mit anderen administrativen Ressourcen
-
Compliance-Anforderungen: Einige Unternehmen benötigen eine zentrale Steuerung für Audit und Governance
-
Operative Komplexität: Weniger Funktionsinstanzen vereinfachen den Betrieb, können aber zu Engpässen führen
Anmerkung
Sie können mit einem Muster beginnen und sich mit zunehmender Reife Ihrer Plattform zu einem anderen weiterentwickeln. Die Funktionen sind unabhängig — Sie können sie je nach Bedarf in den Clustern unterschiedlich einsetzen.
Vergleich der EKS-Funktionen mit selbstverwalteten Lösungen
EKS-Funktionen bieten vollständig verwaltete Funktionen für beliebte Kubernetes-Tools und -Controller, die in EKS ausgeführt werden. Dies unterscheidet sich von selbstverwalteten Lösungen, die Sie in Ihrem Cluster installieren und betreiben.
Die wichtigsten Unterschiede
Bereitstellung und Verwaltung
AWS verwaltet die EKS-Funktionen vollständig, ohne dass eine Installation, Konfiguration oder Wartung der Komponentensoftware erforderlich ist. AWS installiert und verwaltet automatisch alle erforderlichen benutzerdefinierten Kubernetes-Ressourcendefinitionen (CRDs) im Cluster.
Bei selbstverwalteten Lösungen installieren und konfigurieren Sie Clustersoftware mithilfe von Helm Charts, Kubectl oder anderen Operatoren. Sie haben die volle Kontrolle über den Softwarelebenszyklus und die Laufzeitkonfiguration Ihrer selbstverwalteten Lösungen und können Anpassungen auf jeder Ebene der Lösung vornehmen.
Betrieb und Wartung
AWS verwaltet Patching- und andere Softwarelebenszyklusvorgänge für EKS-Funktionen mit automatischen Updates und Sicherheitspatches. Die Funktionen von EKS sind in AWS Funktionen für optimierte Konfigurationen integriert, bieten integrierte Hochverfügbarkeit und Fehlertoleranz und machen die Behebung von Controller-Workloads im Cluster überflüssig.
Bei selbstverwalteten Lösungen müssen Sie den Zustand und die Protokolle der Komponenten überwachen, Sicherheitspatches und Versionsupdates anwenden, Hochverfügbarkeit mit mehreren Replikaten und Budgets für Pod-Unterbrechungen konfigurieren, Probleme mit der Controller-Arbeitslast beheben und beheben sowie Releases und Versionen verwalten. Sie haben die volle Kontrolle über Ihre Bereitstellungen, aber dafür sind häufig maßgeschneiderte Lösungen für den privaten Clusterzugriff und andere Integrationen erforderlich, die den Unternehmensstandards und den Sicherheitsbestimmungen entsprechen müssen.
Ressourcenverbrauch
EKS-Funktionen werden in EKS und außerhalb Ihrer Cluster ausgeführt, wodurch Knoten- und Clusterressourcen freigesetzt werden. Capabilities nutzen keine Cluster-Workload-Ressourcen, verbrauchen weder CPU noch Arbeitsspeicher auf Ihren Worker-Knoten, skalieren automatisch und haben nur minimale Auswirkungen auf die Cluster-Kapazitätsplanung.
Selbstverwaltete Lösungen führen Controller und andere Komponenten auf Ihren Worker-Knoten aus und verbrauchen dabei direkt Worker-Knotenressourcen IPs, Cluster und andere Clusterressourcen. Die Verwaltung von Clusterdiensten erfordert eine Kapazitätsplanung für deren Workloads sowie die Planung und Konfiguration von Ressourcenanforderungen und -limits, um Skalierungs- und Hochverfügbarkeitsanforderungen zu bewältigen.
Unterstützung von Funktionen
Als vollständig verwaltete Servicefunktionen sind EKS Capabilities von Natur aus eigensinnig im Vergleich zu selbstverwalteten Lösungen. Die Funktionen werden zwar die meisten Funktionen und Anwendungsfälle unterstützen, allerdings wird es im Vergleich zu selbstverwalteten Lösungen einen Unterschied in der Abdeckung geben.
Bei selbstverwalteten Lösungen haben Sie die vollständige Kontrolle über die Konfiguration, optionale Funktionen und andere Aspekte der Funktionalität Ihrer Software. Sie können sich dafür entscheiden, Ihre eigenen benutzerdefinierten Images auszuführen, alle Aspekte der Konfiguration anzupassen und die Funktionen Ihrer selbstverwalteten Lösung vollständig zu kontrollieren.
Überlegungen zu den Kosten
Für jede EKS-Funktionsressource fallen Kosten pro Stunde an, die je nach Fähigkeitstyp unterschiedlich sind. Für Clusterressourcen, die von der Funktion verwaltet werden, fallen auch stündliche Kosten mit eigenen Preisen an. Weitere Informationen finden Sie unter Amazon EKS – Preise
Bei selbstverwalteten Lösungen fallen keine direkten Kosten im Zusammenhang mit AWS Gebühren an. Sie zahlen jedoch für Cluster-Rechenressourcen, die von Controllern genutzt werden, und für die damit verbundenen Workloads. Neben dem Ressourcenverbrauch von Knoten und Clustern umfassen die Gesamtbetriebskosten bei selbstverwalteten Lösungen auch die Betriebskosten sowie die Kosten für Wartung, Fehlerbehebung und Support.
Sie haben die Wahl zwischen EKS-Funktionen und selbstverwalteten Lösungen
EKS-Funktionen Ziehen Sie diese Wahl in Betracht, wenn Sie den betrieblichen Aufwand reduzieren und sich auf den Mehrwert Ihrer Software und Systeme konzentrieren möchten, anstatt den Betrieb der Clusterplattform für grundlegende Anforderungen zu bündeln. Verwenden Sie EKS Capabilities, wenn Sie den betrieblichen Aufwand durch Sicherheitspatches und Software-Lebenszyklusmanagement minimieren, Knoten- und Clusterressourcen für Anwendungsworkloads freigeben, die Konfiguration und das Sicherheitsmanagement vereinfachen und vom AWS Support profitieren möchten. Die EKS-Funktionen eignen sich ideal für die meisten Anwendungsfälle in der Produktion und sind der empfohlene Ansatz für neue Implementierungen.
Selbstverwaltete Lösungen Ziehen Sie diese Wahl in Betracht, wenn Sie bestimmte Versionen der Kubernetes-Ressourcen-API oder benutzerdefinierte Controller-Builds benötigen, bereits vorhandene Automatisierungs- und Tools auf selbstverwalteten Bereitstellungen aufbauen möchten oder wenn Sie umfassende Anpassungen der Controller-Laufzeitkonfigurationen benötigen. Selbstverwaltete Lösungen bieten Flexibilität für spezielle Anwendungsfälle, und Sie haben die vollständige Kontrolle über Ihre Bereitstellung und Laufzeitkonfiguration.
Anmerkung
EKS-Funktionen können in Ihrem Cluster mit selbstverwalteten Lösungen koexistieren, und schrittweise Migrationen sind möglich.
Fähigkeitsspezifische Vergleiche
Detaillierte Vergleiche, einschließlich funktionsspezifischer Funktionen, Upstream-Unterschiede und Migrationspfade, finden Sie unter: