Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

330
Vistas
AWS Fargate y su gestión de memoria

En la documentación de AWS , puedo ver que las propiedades de CPU y Memory son necesarias en AWS::ECS::TaskDefinition para Fargate , pero no en ContainerDefinition dentro del recurso si se usa Fargate .

¿Cómo funciona esto exactamente? Si no lo especifico en ContainerDefinition , ¿usará tantos recursos que la Tarea tenga disponibles? Si solo hay un contenedor dentro de la tarea... ¿tiene sentido definir esos valores? Si son necesarios, me parece bastante redundante y detallado.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Cuando registra una definición de tarea, puede especificar la CPU y la memoria totales utilizadas para la tarea. Esto es independiente de los valores de CPU y memoria en el nivel de definición del contenedor.

Si usa el tipo de lanzamiento Fargate, estos campos de definición de tareas son obligatorios y hay valores específicos para la CPU y la memoria que son compatibles. Este será un límite estricto de CPU/memoria para presentar a la tarea. Por ejemplo, si su tarea está configurada para usar 1 vCPU y 2 GB de memoria, por el momento el límite de memoria es de 2 GB. Si en algún momento la utilización de la memoria de la tarea supera los 2 GB, la tarea terminará con el error OutOfMemory.

Tamaño de la tarea: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#task_size

También puede especificar recursos de CPU y memoria en el nivel del contenedor. Esta será la cantidad de recursos que se presentarán al contenedor (una tarea puede tener varios contenedores). Si su contenedor intenta exceder el recurso especificado aquí, el contenedor se elimina. Estos campos son opcionales para las tareas que usan el tipo de lanzamiento Fargate, y el único requisito es que la cantidad total de CPU y memoria reservada para todos los contenedores dentro de una tarea sea inferior al valor de CPU y memoria del nivel de tarea, si se especifica uno.

A nivel de contenedor, el demonio Docker reserva un mínimo de 4 MiB de memoria para un contenedor, por lo que no debe especificar menos de 4 MiB de memoria para sus contenedores.

Parámetros de definición de contenedor estándar: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#standard_container_definition_params

over 4 years ago · Santiago Trujillo Denunciar

0

Cuando un contenedor no tiene límites especificados en TaskDefinition , el contenedor utilizará todos los recursos disponibles para la tarea, que son obligatorios para una tarea de Fargate .

Esto significa que no hay necesidad de definirlos si solo hay un contenedor en TaskDefinition . Se pueden especificar aunque sean redundantes (si son iguales a los de la propia tarea) o incluso perjudiciales (si son inferiores a la cantidad asignada a la tarea).

En caso de que más de un contenedor pertenezca a la misma tarea, Fargate distribuirá uniformemente los recursos entre todos los contenedores. Esto puede (o no) ser un comportamiento deseado.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda