Menü

Für diese Seite wurde maschinelle Übersetzung verwendet. Einige Inhalte sind möglicherweise nicht perfekt. Lassen Sie uns wissen, wie wir uns verbessern können.

Feedback teilen

AWS EKS Architecture: Clusters, Nodes, and Networks

Inhalt

Diese Seite teilen

Yifat Perry
Yifat Perry
AWS EKS-Architektur: Cluster, Knoten und Netzwerke

Was ist AWS EKS?

Amazon Elastic Kubernetes Service (Amazon EKS) ist ein verwalteter AWS Kubernetes-Service, der containerisierte Anwendungen skaliert, verwaltet und bereitstellt. Er läuft typischerweise in der öffentlichen Amazon Cloud, kann aber auch vor Ort bereitgestellt werden. Die Kubernetes-Verwaltungsinfrastruktur von Amazon EKS läuft über mehrere Availability Zones (AZ). Amazon EKS ist Kubernetes-konform zertifiziert, sodass Sie EKS in Ihre vorhandenen Tools integrieren können.

Wie funktioniert Amazon EKS?

EKS-Cluster bestehen aus den folgenden Hauptkomponenten: einer Steuerebene und Worker-Knoten. Jeder Cluster wird in einer eigenen, vollständig verwalteten Virtual Private Cloud (VPC) ausgeführt.

Die Steuerebene besteht aus drei Masterknoten, die jeweils in einer anderen AZ ausgeführt werden, um die hohe Verfügbarkeit von AWS sicherzustellen. Eingehender Datenverkehr, der an die Kubernetes-API gerichtet ist, wird über den AWS Network Load Balancer (NLB) geleitet.

Worker-Knoten werden auf Amazon EC2-Instanzen in einer VPC ausgeführt, die nicht von AWS verwaltet wird. Sie können die den Worker-Knoten zugewiesene VPC steuern und konfigurieren. Sie können SSH verwenden, um Ihrer vorhandenen Automatisierung Zugriff zu gewähren oder Worker-Knoten bereitzustellen.

Es gibt zwei Hauptbereitstellungsoptionen:

  • Sie stellen für jede Umgebung oder Anwendung einen eigenen Cluster bereit.
  • Alternativ definieren Sie IAM-Sicherheitsrichtlinien und Kubernetes-Namespaces, um einen Cluster für mehrere Anwendungen gemeinsam zu nutzen.

Um den Datenverkehr zwischen der Steuerebene und einem Cluster einzuschränken, stellt EKS Amazon-VPC-Netzwerkrichtlinien bereit. Nur autorisierte Cluster und Konten, die durch die rollenbasierte Zugriffskontrolle (RBAC) von Kubernetes definiert sind, können Komponenten der Steuerebene anzeigen oder mit ihnen kommunizieren.

Typischerweise verläuft die Bereitstellung so: Sie weisen EKS an, einen Cluster zu erstellen, Cloud-Ressourcen werden im Hintergrund bereitgestellt und Sie können anschließend eine Verbindung zum Kubernetes-Cluster herstellen und Ihre Workloads ausführen.

AWS EKS-Komponenten

Die AWS EKS-Architektur besteht aus den folgenden Hauptkomponenten: Cluster, Knoten und Netzwerk.

Amazon EKS-Cluster

Cluster bestehen aus einer Steuerebene und EKS-Knoten.

EKS-Steuerebene

Die Steuerungsebene läuft auf einem zugeordneten Satz von EC2-Instanzen in einem von Amazon verwalteten AWS-Konto und stellt einen API-Endpunkt bereit, auf den Ihre Anwendungen zugreifen können. Sie läuft im Single-Tenant-Modus und ist für die Steuerung von Kubernetes-Masterkomponenten wie API-Server und etcd verantwortlich.

Daten auf etcd werden mit Amazon Key Management Service (KMS) verschlüsselt. Kubernetes-Masterknoten sind über mehrere AWS-Verfügbarkeitszonen (AZ) verteilt, und der Datenverkehr wird über einen Elastic Load Balancer (ELB) verwaltet.

EKS-Knoten

Kubernetes-Workerknoten werden auf EC2-Instanzen im AWS-Konto Ihrer Organisation ausgeführt. Sie verwenden den API-Endpunkt, um über eine Zertifikatsdatei eine Verbindung zur Steuerungsebene herzustellen. Für jeden Cluster wird ein eindeutiges Zertifikat genutzt.

Amazon EKS-Knoten

Amazon EKS-Cluster können Pods mithilfe von drei Hauptmethoden planen.

Selbstverwaltete Knoten

Ein „Knoten“ in EKS ist eine Amazon EC2-Instanz, auf der Kubernetes-Pods geplant werden können. Pods verbinden sich mit dem API-Endpunkt des EKS-Clusters. Knoten sind in Knotengruppen organisiert. Alle EC2-Instanzen in einer Knotengruppe müssen dieselben Eigenschaften aufweisen:

  • Amazon-Instanztyp
  • Amazon Machine Image (AMI)
  • IAM-Rolle

Sie können in einem Cluster mehrere Knotengruppen betreiben, die jeweils unterschiedliche Instanztypen oder Rollen repräsentieren.

Verwaltete Knotengruppen

Amazon EKS bietet verwaltete Knotengruppen mit automatisierter Lebenszyklusverwaltung. So können Sie Knoten in einem Vorgang automatisch erstellen, aktualisieren oder entfernen. EKS verwendet die neuesten, für EKS optimierten Linux-AMIs von Amazon. Wenn Sie Knoten beenden, entleert EKS diese ordnungsgemäß, um eine unterbrechungsarme Bereitstellung zu gewährleisten.

Verwaltete Knoten werden mit EC2 Auto Scaling-Gruppen betrieben, die vom Amazon-EKS-Service verwaltet werden. Sie können festlegen, in welchen Verfügbarkeitszonen die Gruppen ausgeführt werden sollen. Es gibt verschiedene Möglichkeiten, verwaltete Knotengruppen zu starten, darunter die EKS-Konsole, eksctl, die AWS CLI, die AWS API oder Automatisierungstools wie CloudFormation.

Amazon Fargate

Mit Amazon Fargate, einem serverlosen Containerdienst, können Sie Worker-Knoten ausführen, ohne die zugrunde liegende Serverinfrastruktur verwalten zu müssen. Fargate stellt Ihnen nur die tatsächlich genutzten vCPUs und den Speicher in Rechnung und stellt je nach Bedarf zusätzliche Rechenressourcen bereit.

Amazon EKS Netzwerk

Ein Amazon EKS-Cluster wird in einer Virtual Private Cloud (VPC) betrieben, einem sicheren, privaten Netzwerk innerhalb eines Amazon-Rechenzentrums. EKS stellt alle Ressourcen in einem vorhandenen Subnetz in einer von Ihnen ausgewählten VPC in einer Amazon-Region bereit.

Von der EKS-Steuerebene verwendete Netzwerkschnittstellen

Die EKS-Steuerebene wird in einer von Amazon verwalteten VPC ausgeführt. Sie erstellt und verwaltet Netzwerkschnittstellen in Ihrem Konto für jeden von Ihnen erstellten EKS-Cluster. EC2- und Fargate-Instanzen verwenden diese Netzwerkschnittstellen, um eine Verbindung zur EKS-Steuerebene herzustellen.

Standardmäßig stellt EKS einen öffentlichen Endpunkt bereit. Für zusätzliche Sicherheit Ihres Clusters können Sie einen privaten Endpunkt aktivieren und/oder den Zugriff auf bestimmte IP-Adressen einschränken. Sie können die Konnektivität zwischen lokalen Netzwerken oder anderen VPCs und der von Ihrem EKS-Cluster verwendeten VPC konfigurieren.

Vernetzung für EKS-Knoten

Jede vom EKS-Cluster verwendete EC2-Instance befindet sich in einem Subnetz. Sie haben zwei Möglichkeiten, das Netzwerk zu definieren:

  • AWS-CloudFormation-Vorlagen: Sie erstellen Subnetze per Vorlage. In diesem Fall erhalten Knoten in öffentlichen Subnetzen eine öffentliche IP und eine private IP aus dem vom Subnetz verwendeten CIDR-Block.
  • Benutzerdefinierte Netzwerke über das Container Networking Interface (CNI): So können Sie Pods IP-Adressen aus beliebigen Subnetzen zuweisen, auch wenn die EC2-Instanz nicht Teil des Subnetzes ist. Benutzerdefinierte Netzwerke müssen beim Starten der Knoten aktiviert werden.

AWS EKS-Speicher mit Cloud Volumes ONTAP

NetApp Cloud Volumes ONTAP, die führende Speicherverwaltungslösung für Unternehmen, bietet sichere, bewährte Speicherverwaltungsdienste auf AWS, Azure und Google Cloud. Cloud Volumes ONTAP unterstützt eine Kapazität von bis zu 368 TB und deckt verschiedene Anwendungsfälle ab, etwa Dateidienste, Datenbanken, DevOps oder andere Unternehmens-Workloads. Der Funktionsumfang umfasst unter anderem Hochverfügbarkeit, Datenschutz, Speichereffizienz, Kubernetes-Integration und mehr.

Insbesondere unterstützt Cloud Volumes ONTAP die Bereitstellungs- und Verwaltungsanforderungen von Kubernetes Persistent Volumes für containerisierte Workloads.

Drift chat loading