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.
In diesem Abschnitt werden einige der einzigartigen Pod-Konfigurationsdetails für die Ausführung von Kubernetes-Pods auf AWS Fargate beschrieben.
CPU und Arbeitsspeicher des Pods
Mit Kubernetes können Sie Anfragen, eine vCPU-Mindestmenge und Speicherressourcen definieren, die jedem Container in einem Pod zugewiesen werden. Pods werden von Kubernetes geplant, um sicherzustellen, dass mindestens die angeforderten Ressourcen für jeden Pod auf der Rechenressource verfügbar sind. Weitere Informationen finden Sie unter Managing Compute Resources for Containers
Anmerkung
Da Amazon EKS Fargate nur einen Pod pro Knoten ausführt, tritt das Szenario, Pods zu entfernen, wenn weniger Ressourcen zur Verfügung stehen, nicht auf. Alle Amazon EKS Fargate Pods werden mit garantierter Priorität ausgeführt, sodass die angeforderte CPU und der angeforderte Arbeitsspeicher dem Limit für alle Container entsprechen müssen. Weitere Informationen finden Sie unter Konfigurieren von Dienstqualität für Pods
Wenn Pods auf Fargate geplant sind, bestimmen die vCPU- und Speicherreservierungen innerhalb der Pod-Spezifikation, wie viel CPU und Arbeitsspeicher für den Pod bereitgestellt werden müssen.
-
Die maximale Anforderung von Init-Containern wird verwendet, um die vCPU- und Speicheranforderungen für die Init-Anforderung zu bestimmen.
-
Anforderungen für alle lang laufenden Container werden addiert, um die Anforderungen an die vCPU und den Arbeitsspeicher für lange laufende Anforderungen zu bestimmen.
-
Der größere der beiden vorherigen Werte wird für die vCPU- und Speicheranforderung ausgewählt, die für Ihren Pod verwendet werden sollen.
-
Fargate erhöht die Speicherreservierung jedes Pods um 256 MB für die erforderlichen Kubernetes-Komponenten (
kubelet
kube-proxy
, und).containerd
Fargate rundet auf die folgende Rechenkonfiguration ab, die der Summe der vCPU- und Speicheranforderungen am ehesten entspricht, um sicherzustellen, dass Pods immer über die Ressourcen verfügen, die sie zum Ausführen benötigen.
Wenn Sie keine Kombination aus vCPU und Arbeitsspeicher angeben, wird die kleinste verfügbare Kombination verwendet (0,25 vCPU und 0,5 GB Arbeitsspeicher).
Die folgende Tabelle zeigt die vCPU- und Speicherkombinationen, die für Pods verfügbar sind, die auf Fargate ausgeführt werden.
vCPU-Wert | Speicherwert |
---|---|
0,25 vCPU |
0,5 GB, 1 GB, 2 GB |
0,5 vCPU |
1 GB, 2 GB, 3 GB, 4 GB |
1 vCPU |
2 GB, 3 GB, 4 GB, 5 GB, 6 GB, 7 GB, 8 GB |
2 vCPU |
Zwischen 4 GB und 16 GB in 1-GB-Schritten |
4 vCPU |
Zwischen 8 GB und 30 GB in 1-GB-Schritten |
8 vCPU |
Zwischen 16 GB und 60 GB in 4-GB-Schritten |
16 vCPU |
Zwischen 32 GB und 120 GB in 8-GB-Schritten |
Der zusätzliche Speicher, der für die Kubernetes-Komponenten reserviert ist, kann dazu führen, dass eine Fargate-Aufgabe mit mehr v CPUs als angefordert bereitgestellt wird. Bei einer Anforderung für 1 vCPU und 8 GB Arbeitsspeicher werden beispielsweise 256 MB zur Speicheranforderung hinzugefügt, und es wird eine Fargate-Aufgabe mit 2 V CPUs und 9 GB Arbeitsspeicher bereitgestellt, da keine Aufgabe mit 1 vCPU und 9 GB Arbeitsspeicher verfügbar ist.
Es besteht keine Korrelation zwischen der Größe des Pods, der auf Fargate läuft, und der von Kubernetes gemeldeten Knotengröße mit. kubectl get nodes
Die gemeldete Knotengröße ist oft größer als die Kapazität des Pods. Sie können die Pod-Kapazität mit dem folgenden Befehl überprüfen. Ersetze es default
durch den Namespace deines Pods und pod-name
durch den Namen deines Pods.
kubectl describe pod --namespace default pod-name
Eine Beispielausgabe sieht wie folgt aus.
[...] annotations: CapacityProvisioned: 0.25vCPU 0.5GB [...]
Die CapacityProvisioned
Anmerkung stellt die erzwungene Pod-Kapazität dar und bestimmt die Kosten für den Betrieb Ihres Pods auf Fargate. Preisinformationen für die Computing-Konfigurationen finden Sie unter AWS -Fargate-Preise
Fargate-Speicher
Ein Pod, der auf Fargate läuft, mountet automatisch ein Amazon EFS-Dateisystem, ohne dass manuelle Schritte zur Treiberinstallation erforderlich sind. Sie können kein dynamisches persistentes Volume Provisioning mit Fargate-Knoten verwenden, aber Sie können statische Bereitstellung verwenden. Weitere Informationen finden Sie unter Amazon EFS CSI Driver
Bei der Bereitstellung erhält jeder Pod, der auf Fargate läuft, standardmäßig 20 GiB kurzlebigen Speicher. Dieser Speichertyp wird gelöscht, wenn ein Pod beendet wird. Bei neuen Pods, die auf Fargate eingeführt werden, ist die Verschlüsselung des kurzlebigen Speichervolumens standardmäßig aktiviert. Der kurzlebige Pod-Speicher ist mit einem AES-256-Verschlüsselungsalgorithmus verschlüsselt, der von Fargate verwaltete Schlüssel verwendet AWS .
Anmerkung
Der nutzbare Standardspeicher für Amazon EKS-Pods, die auf Fargate ausgeführt werden, beträgt weniger als 20 GiB. Dies liegt daran, dass ein Teil des Speicherplatzes von den kubelet
und anderen Kubernetes-Modulen belegt wird, die in den Pod geladen werden.
Sie können die Gesamtmenge des flüchtigen Speichers bis zu einem Maximum von 175 GB erhöhen. Um die Größe mit Kubernetes zu konfigurieren, geben Sie die ephemeral-storage
Ressourcenanforderungen für jeden Container in einem Pod an. Wenn Kubernetes Pods plant, wird sichergestellt, dass die Summe der Ressourcenanfragen für jeden Pod geringer ist als die Kapazität der Fargate-Aufgabe. Weitere Informationen finden Sie unter Ressourcenmanagement für Pods und Container
Amazon EKS Fargate stellt mehr kurzlebigen Speicher bereit, als für die Systemnutzung angefordert wurde. Eine Anforderung von 100 GB stellt beispielsweise eine Fargate-Aufgabe mit 115 GB flüchtigem Speicher bereit.