Solucionar problemas causados por erros de CPU ou memória inválida na definição de tarefa do Amazon ECS
Ao registrar uma definição de tarefa usando a API do Amazon ECS ou a AWS CLI, se você especificar um valor inválido de cpu
ou memory
, será retornado o erro a seguir.
An error occurred (ClientException) when calling the RegisterTaskDefinition operation: Invalid 'cpu' setting for task.
nota
Ao usar o Terraform, o erro a seguir pode ser retornado.
Error: ClientException: No Fargate configuration exists for given values.
Para resolver esse problema, você deve especificar um valor compatível para a CPU e a memória em sua definição da tarefa. O valor de cpu
pode ser expresso em unidades de CPU ou vCPUs em uma definição de tarefa. Ele é convertido em um número inteiro que indica as unidades de CPU quando a definição da tarefa é registrada. O valor de memory
pode ser expresso em MiB ou GB em uma definição de tarefa. Ele é convertido em um número inteiro que indica o valor em MiB quando a definição da tarefa é registrada.
Em definições de tarefa que especificam o FARGATE
para o parâmetro requiresCompatibilities
(mesmo se o EC2
também estiver especificado), você deve usar um dos valores da tabela a seguir. Esses valores determinam sua faixa de valores compatíveis com os parâmetros de CPU e memória.
Para tarefas hospedadas no Fargate, a tabela a seguir mostra as combinações válidas de CPU e memória. Os valores de memória no arquivo JSON são especificados em MiB. É possível converter o valor de GB em MiB multiplicando o valor por 1024. Por exemplo, 1 GB = 1024 MiB.
Valor de CPU |
Valor de memória |
Sistemas operacionais com suporte para o 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) |
Entre 4 GB e 16 GB em incrementos de 1 GB |
Linux, Windows |
4096 (4 vCPU) |
Entre 8 GB e 30 GB em incrementos de 1 GB |
Linux, Windows |
8192 (8 vCPU) notaEssa opção requer a plataforma Linux |
Entre 16 GB e 60 GB em incrementos de 4 GB |
Linux |
16384 (16 vCPU) notaEssa opção requer a plataforma Linux |
Entre 32 GB e 120 GB em incrementos de 8 GB |
Linux |
Em tarefas hospedadas no Amazon EC2, os valores de CPU da tarefa compatível estão entre 0,25 vCPUs e 192 vCPUs.
nota
Os parâmetros de CPU e memória em nível de tarefa são ignorados para contêineres do Windows.