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.
Problembehandlung bei ungültigen CPU- oder Speicherfehlern mit Amazon ECS-Aufgabendefinition
Bei der Registrierung einer Aufgabendefinition mithilfe der Amazon ECS-API oder AWS CLI, wenn Sie einen ungültigen cpu
memory
Wert angeben, wird der folgende Fehler zurückgegeben.
An error occurred (ClientException) when calling the RegisterTaskDefinition operation: Invalid 'cpu' setting for task.
Anmerkung
Bei der Verwendung von Terraform wird möglicherweise der folgende Fehler zurückgegeben.
Error: ClientException: No Fargate configuration exists for given values.
Um dieses Problem zu lösen, müssen Sie in Ihrer Aufgabendefinition einen unterstützten Wert für die Aufgaben-CPU und den Speicher angeben. Der cpu
Wert kann in CPU-Einheiten oder v CPUs in einer Aufgabendefinition ausgedrückt werden. Er wird in eine Ganzzahl umgewandelt, die die CPU-Einheiten angibt, wenn die Aufgabendefinition registriert wird. Der memory
Wert kann in einer Aufgabendefinition in MiB oder GB ausgedrückt werden. Es wird in eine Ganzzahl umgewandelt, die die MiB angibt, wenn die Aufgabendefinition registriert wird.
Für Aufgabendefinitionen, die FARGATE
für den requiresCompatibilities
Parameter spezifizieren (auch wenn er ebenfalls angegeben EC2
ist), müssen Sie einen der Werte in der folgenden Tabelle verwenden. Diese Werte bestimmen den Bereich der unterstützten Werte für den CPU- und Speicherparameter.
Für Aufgaben, die auf Fargate gehostet werden, zeigt die folgende Tabelle die gültigen CPU- und Arbeitsspeicher-Kombinationen. Die Speicherwerte in der JSON-Datei sind in MiB angegeben. Sie können den GB-Wert in MiB konvertieren, indem Sie den Wert mit 1 024 multiplizieren. Zum Beispiel 1 GB = 1 024 MiB.
CPU-Wert | Speicherwert | Unterstützte Betriebssysteme für AWS Fargate |
---|---|---|
256 (0,25 vCPU) | 512 MiB, 1 GB, 2 GB | Linux |
512 (0,5 vCPU) | 1 GB, 2 GB, 3 GB, 4 GB | Linux |
1024 (1 vCPU) | 2 GB, 3 GB, 4 GB, 5 GB, 6 GB, 7 GB, 8 GB | Linux, Windows |
2048 (2 vCPU) | Zwischen 4 GB und 16 GB in 1-GB-Schritten | Linux, Windows |
4096 (4 vCPU) | Zwischen 8 GB und 30 GB in 1-GB-Schritten | Linux, Windows |
8 192 (8 vCPU) AnmerkungDiese Option erfordert die Linux-Plattform |
Zwischen 16 GB und 60 GB in 4-GB-Schritten | Linux |
16 384 (16 vCPU) AnmerkungDiese Option erfordert die Linux-Plattform |
Zwischen 32 GB und 120 GB in 8-GB-Schritten | Linux |
Für Aufgaben, die auf Amazon gehostet werden EC2, liegen die unterstützten Task-CPU-Werte zwischen 0,25 v CPUs und 192 v. CPUs
Amazon ECS verwendet die CPU-Periode und das CPU-Kontingent, um die CPU-Festgrenzen für die Aufgabengröße zu steuern. Wenn Sie die vCPU in Ihrer Aufgabendefinition angeben, rechnet Amazon ECS den Wert in die CPU-Periode und die CPU-Kontingenteinstellungen um, die für die gelten. cgroup
Das CPU-Kontingent steuert die Menge an CPU-Zeit, die a cgroup
während eines bestimmten CPU-Zeitraums gewährt wird. Beide Einstellungen werden in Mikrosekunden ausgedrückt. Wenn das CPU-Kontingent der CPU-Periode entspricht, bedeutet das, dass a bis zu 100% auf einer vCPU ausgeführt werden cgroup
kann (oder jeder andere Bruchteil, der bei mehreren V 100% ergibt). CPUs Das CPU-Kontingent hat ein Maximum von 1000000 us und die CPU-Periode ein Minimum von 1 ms. Sie können diese Werte verwenden, um die Grenzwerte für Ihre CPU-Anzahl festzulegen. Wenn Sie den CPU-Zeitraum ändern, ohne das CPU-Kontingent zu ändern, gelten andere effektive Grenzwerte als die, die Sie in Ihrer Aufgabendefinition angegeben haben.
Der Zeitraum von 100 ms ermöglicht einen Wert von v CPUs im Bereich von 0,125 bis 10.
Anmerkung
CPU- und Speicherparameter auf Aufgabenebene werden für Windows-Container ignoriert.