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.
Definieren Sie welche Pods verwende AWS Fargate, wenn es gestartet wird
Bevor Sie planen Pods auf Fargate in Ihrem Cluster müssen Sie mindestens ein Fargate-Profil definieren, das angibt, welches Pods benutze Fargate, wenn es gestartet wird.
Als Administrator können Sie ein Fargate-Profil verwenden, um zu deklarieren, welche Pods Lauf auf Fargate. Sie können dies über die Selektoren des Profils tun. Sie können bis zu fünf Selektoren zu jedem Profil hinzufügen. Jeder Selektor muss einen Namespace enthalten. Der Selector kann auch Labels enthalten. Das Label-Feld besteht aus mehreren optionalen Schlüssel-Wert-Paaren. Pods, die den Selektoren entsprechen, werden auf Fargate geplant. Pods werden mit einem Namespace und den Labels abgeglichen, die im Selektor angegeben sind. Wenn ein Namespace-Selektor ohne Labels definiert ist, versucht Amazon EKS, alle Pods die in diesem Namespace unter Verwendung des Profils auf Fargate laufen. Wenn ein to-be-scheduled Pod entspricht einem der Selektoren im Fargate-Profil, dann das Pod ist auf Fargate geplant.
Wenn ein Pod entspricht mehreren Fargate-Profilen, Sie können angeben, welches Profil ein Pod verwendet, indem Folgendes hinzugefügt wird Kubernetes Etikett zum Pod Spezifikation:eks.amazonaws.com/fargate-profile:
. Das Tool Pod muss mit einem Selektor in diesem Profil übereinstimmen, um für Fargate geplant zu werden. Kubernetes Affinitäts-/Anti-Affinitätsregeln gelten nicht und sind für Amazon EKS Fargate auch nicht erforderlich Pods.my-fargate-profile
Wenn Sie ein Fargate-Profil erstellen, müssen Sie eine angeben Pod Ausführungsrolle. Diese Ausführungsrolle ist für die Amazon-EKS-Komponenten vorgesehen, die auf der Fargate-Infrastruktur mit dem Profil ausgeführt werden. Sie wurde dem Cluster hinzugefügt Kubernetes Rollenbasierte Zugriffskontrollekubelet
, das in der Fargate-Infrastruktur ausgeführt wird, bei Ihrem Amazon-EKS-Cluster registrieren und als Knoten in Ihrem Cluster angezeigt werden. Das Tool Pod Die Ausführungsrolle bietet auch IAM-Berechtigungen für die Fargate-Infrastruktur, um Lesezugriff auf Amazon ECR-Image-Repositorys zu ermöglichen. Weitere Informationen finden Sie unter Amazon EKS Pod Ausführung, IAM-Rolle.
Fargate-Profile können nicht geändert werden. Sie können jedoch ein neues aktuelles Profil erstellen, um ein vorhandenes Profil zu ersetzen, und dann das Original löschen.
Anmerkung
Any Pods die mit einem Fargate-Profil ausgeführt werden, werden gestoppt und in den Status „Ausstehend“ versetzt, wenn das Profil gelöscht wird.
Wenn Fargate-Profile in einem Cluster den Status DELETING
haben, müssen Sie warten, bis dieses Fargate-Profil gelöscht wurde, bevor Sie andere Profile in diesem Cluster erstellen können.
Anmerkung
Fargate unterstützt derzeit nicht Kubernetes
topologySpreadConstraints
Amazon EKS und Fargate verbreiten sich Pods in jedem der Subnetze, die im Fargate-Profil definiert sind. Es kann jedoch zu einer ungleichmäßigen Verteilung kommen. Wenn Sie eine gleichmäßige Verteilung benötigen, verwenden Sie zwei Fargate-Profile. Eine gleichmäßige Verteilung ist wichtig in Szenarien, in denen Sie zwei Replikate bereitstellen möchten und keine Ausfallzeiten wünschen. Wir empfehlen, dass jedes Profil nur ein Subnetz hat.
Fargate-Profilkomponenten
Die folgenden Komponenten sind in einem Fargate-Profil enthalten.
- Pod-Ausführungsrolle
-
Wenn Ihr Cluster erstellt wird Pods auf AWS Fargate muss
kubelet
das, was auf der Fargate-Infrastruktur läuft, in AWS APIs Ihrem Namen Anrufe tätigen. Beispielsweise muss er Aufrufe tätigen, um Container-Images aus Amazon ECR zu ziehen. Das Amazon EKS Pod Die Ausführungsrolle stellt die IAM-Berechtigungen dafür bereit.Wenn Sie ein Fargate-Profil erstellen, müssen Sie eine angeben Pod Ausführungsrolle zur Verwendung mit Ihrem Pods. Diese Rolle wird der des Clusters hinzugefügt Kubernetes Rollenbasierte Zugriffskontrolle
(RBAC) für die Autorisierung. Auf diese Weise kann sich kubelet
das, was auf der Fargate-Infrastruktur läuft, bei Ihrem Amazon EKS-Cluster registrieren und in Ihrem Cluster als Knoten erscheinen. Weitere Informationen finden Sie unter Amazon EKS Pod Ausführung, IAM-Rolle. - Subnets
-
Die Subnetze IDs , die gestartet werden sollen Pods in das benutze dieses Profil. Zu diesem Zeitpunkt Pods denen auf Fargate läuft, werden keine öffentlichen IP-Adressen zugewiesen. Daher werden für diesen Parameter nur private Subnetze ohne direkte Route zu einem Internet-Gateway akzeptiert.
- Selektoren
-
Die Selektoren, für die ein Abgleich erforderlich ist Pods um dieses Fargate-Profil zu verwenden. Sie können bis zu fünf Selektoren in einem Fargate-Profil angeben. Die Selektoren bestehen aus folgenden Komponenten:
-
Namespace – Sie müssen einen Namespace für einen Selektor angeben. Der Selektor passt nur Pods die in diesem Namespace erstellt werden. Sie können jedoch mehrere Selektoren erstellen, um mehrere Namespaces zu adressieren.
-
Labels — Sie können optional Folgendes angeben Kubernetes Beschriftungen, die dem Selektor entsprechen sollen. Der Selektor stimmt nur überein Pods die alle Beschriftungen haben, die im Selektor angegeben sind.
-
Fargate-Profil-Platzhalter
Zusätzlich zu den Zeichen, die erlaubt sind von Kubernetes, Sie dürfen *
und ?
in den Auswahlkriterien für Namespaces, Labelschlüssel und Labelwerte verwenden:
-
*
steht für kein, ein oder mehrere Zeichen. Zum Beispiel kannprod*
prod
undprod-metrics
darstellen. -
?
steht für ein einzelnes Zeichen (z. B. kannvalue?
valuea
darstellen). Es kann jedoch nichtvalue
undvalue-a
darstellen, weil?
nur genau ein Zeichen darstellen kann.
Diese Platzhalterzeichen können an jeder Position und in Kombination verwendet werden (z. B. prod*
, *dev
und frontend*?
). Andere Platzhalter und Formen des Mustervergleichs, wie reguläre Ausdrücke, werden nicht unterstützt.
Wenn es mehrere übereinstimmende Profile für den Namespace und die Labels gibt Pod Spezifikation, Fargate wählt das Profil anhand einer alphanumerischen Sortierung nach dem Profilnamen aus. Beispiel: Sowohl Profil A (mit dem Namenbeta-workload
) als auch Profil B (mit dem Namenprod-workload
) haben übereinstimmende Selektoren für Pods Um auf den Markt zu kommen, wählt Fargate Profil A (beta-workload
) für das Pods. Das Pods habe Beschriftungen mit Profil A auf der Pods (zum Beispieleks.amazonaws.com/fargate-profile=beta-workload
).
Wenn Sie vorhandenes Fargate migrieren möchten Pods Für neue Profile, die Platzhalter verwenden, gibt es zwei Möglichkeiten, dies zu tun:
-
Erstellen Sie ein neues Profil mit passenden Selektoren und löschen Sie dann die alten Profile. Mit alten Profilen gekennzeichnete Pods werden in neue übereinstimmende Profile verschoben.
-
Wenn Sie Workloads migrieren möchten, sich aber nicht sicher sind, welche Fargate-Labels sich auf den einzelnen Fargate-Labels befinden Pod, können Sie die folgende Methode verwenden. Erstellen Sie ein neues Profil mit einem Namen, das zuerst alphanumerisch unter den Profilen auf demselben Cluster sortiert. Dann recyceln Sie den Fargate Pods die auf neue Profile migriert werden müssen.
Erstellen eines Fargate-Profils
In diesem Abschnitt wird beschrieben, wie Sie ein Fargate-Profil erstellen. Sie müssen außerdem ein erstellt haben Pod Ausführungsrolle, die für Ihr Fargate-Profil verwendet werden soll. Weitere Informationen finden Sie unter Amazon EKS Pod Ausführung, IAM-Rolle. Pods die auf Fargate laufen, werden nur in privaten Subnetzen mit NAT-Gateway-Zugriff auf AWS Dienste unterstützt, aber keine direkte Route zu einem Internet Gateway. Aus diesem Grund muss die VPC Ihres Clusters über private Subnetze verfügen.
Sie können ein Profil mit den folgenden Angaben erstellen:
eksctl
Um ein Fargate-Profil zu erstellen mit eksctl
Erstellen Sie Ihr Fargate-Profil mit dem folgenden eksctl
-Befehl und ersetzen Sie jede example value
durch Ihre eigenen Werte. Sie müssen einen Namespace angeben. Die --labels
Option ist jedoch nicht erforderlich.
eksctl create fargateprofile \ --cluster my-cluster \ --name my-fargate-profile \ --namespace my-kubernetes-namespace \ --labels key=value
Sie können bestimmte Platzhalter für my-kubernetes-namespace
- und key=value
-Labels verwenden. Weitere Informationen finden Sie unter Fargate-Profil-Platzhalter.
AWS Management Console
Um ein Fargate-Profil zu erstellen mit AWS Management Console
-
Öffnen Sie die Amazon-EKS-Konsole
. -
Wählen Sie den Cluster aus, für den Sie ein Fargate-Profil erstellen möchten.
-
Wählen Sie die Registerkarte Compute (Datenverarbeitung) aus.
-
Wählen Sie unter Fargate-Profile die Option Fargate-Profil hinzufügen aus.
-
Auf der Seite Konfigurieren des Fargate Profils führen Sie folgende Schritte aus:
-
Geben Sie unter Name einen eindeutigen Namen für Ihr Fargate-Profil ein, wie z. B.
my-profile
. -
Wählen Sie für die Pod-Ausführungsrolle Pod Ausführungsrolle, die mit Ihrem Fargate-Profil verwendet werden soll. Es werden nur IAM-Rollen mit dem
eks-fargate-pods.amazonaws.com
-Service-Prinzipal angezeigt. Wenn keine Rollen aufgeführt sind, müssen Sie eine erstellen. Weitere Informationen finden Sie unter Amazon EKS Pod Ausführung, IAM-Rolle. -
Ändern Sie die ausgewählten Subnetze nach Bedarf.
Anmerkung
Es werden nur private Subnetze unterstützt für Pods die auf Fargate laufen.
-
Für Tags können Sie Ihr Fargate-Profil wahlweise markieren. Diese Tags werden nicht auf andere Ressourcen übertragen, die mit dem Profil verknüpft sind, wie Pods.
-
Wählen Sie Weiter.
-
-
Auf der Seite Configure Pod Gehen Sie auf der Auswahlseite wie folgt vor:
-
Geben Sie für Namespace einen Namespace ein, für den ein Treffer gefunden werden soll Pods.
-
Sie können bestimmte Namespaces für den Abgleich verwenden, z. B.
kube-system
oderdefault
. -
Sie können bestimmte Platzhalter verwenden (z. B.
prod-*
), um mehrere Namespaces abzugleichen (z. B.prod-deployment
undprod-test
). Weitere Informationen finden Sie unter Fargate-Profil-Platzhalter.
-
-
(Optional) Hinzufügen Kubernetes Beschriftungen zum Selektor. Fügen Sie sie insbesondere zu dem hinzu, den Pods im angegebenen Namespace müssen übereinstimmen.
-
Sie können das Label dem Selektor hinzufügen
infrastructure: fargate
, sodass nur Pods im angegebenen Namespace, die auch dieinfrastructure: fargate
Kubernetes Die Bezeichnung entspricht dem Selektor. -
Sie können bestimmte Platzhalter verwenden (z. B.
key?: value?
), um mehrere Namespaces abzugleichen (z. B.keya: valuea
undkeyb: valueb
). Weitere Informationen finden Sie unter Fargate-Profil-Platzhalter.
-
-
Wählen Sie Weiter.
-
-
Überprüfen Sie auf der Seite Überprüfen und erstellen die Informationen für Ihr -Profil und wählen Sie Erstellen aus.