Métricas de reserva del clúster de Amazon ECS
Las métricas de reserva de clúster se miden como el porcentaje de CPU, memoria y GPU reservado por todas las tareas de Amazon ECS de un clúster en comparación con la CPU, la memoria y las GPU totales que se registraron para cada instancia de contenedor activa en el clúster. Solo las instancias de contenedor que tengan el estado ACTIVE
o DRAINING
afectarán a las métricas de reserva de clúster. Esta métrica solo se emplea en clústeres con tareas o servicios alojados en instancias de EC2. No se admite en clústeres con tareas alojadas en AWS Fargate.
(Total CPU units reserved by tasks in cluster) x 100
Cluster CPU reservation = --------------------------------------------------------------
(Total CPU units registered by container instances in cluster)
(Total MiB of memory reserved by tasks in cluster x 100)
Cluster memory reservation = ------------------------------------------------------------------
(Total MiB of memory registered by container instances in cluster)
(Total GPUs reserved by tasks in cluster x 100)
Cluster GPU reservation = ------------------------------------------------------------------
(Total GPUs registered by container instances in cluster)
Cuando se ejecuta una tarea en un clúster, Amazon ECS analiza su definición de tarea y reserva las unidades de CPU, MiB de memoria y GPU totales especificadas en sus definiciones de contenedor. Cada minuto, Amazon ECS calcula el número de unidades de CPU, MiB de memoria y GPU reservadas actualmente para cada tarea que se está ejecutando en el clúster. Se calcula la cantidad total de CPU, memoria y GPU reservadas para todas las tareas que se ejecutan en el clúster, y dichas cifras se notifican a CloudWatch como un porcentaje de los recursos totales registrados para el clúster. Si especifica un límite flexible (memoryReservation
) en la definición de tareas, se utiliza para calcular la cantidad de memoria reservada. De lo contrario, se utiliza el límite máximo (memory
). El MiB total de memoria reservado por tareas de un clúster también incluye el tamaño del volumen del sistema de archivos temporal (tmpfs
) y sharedMemorySize
si se define en la definición de la tarea. Para obtener más información sobre límites invariables y flexibles, el tamaño de memoria compartida y el tamaño de volumen tmpfs, consulte Parámetros de definición de tareas.
Por ejemplo, un clúster tiene dos instancias de contenedor registradas, una instancia c4.4xlarge
y una instancia c4.large
. La instancia c4.4xlarge
se registra en el clúster con 16 384 unidades de CPU y 30 158 MiB de memoria. La instancia c4.large
se registra con 2 048 unidades de CPU y 3 768 MiB de memoria. Los recursos totales de este clúster son 18 432 unidades de CPU y 33 926 MiB de memoria.
Si una definición de tarea reserva 1 024 unidades de CPU y 2 048 MiB de memoria y se inician diez tareas con esta definición de tarea en este clúster (y no se está ejecutando ninguna otra tarea), se reserva un total de 10 240 unidades de CPU y 20 480 MiB de memoria. Esto se registra en CloudWatch como una reserva de CPU del 55 % y una reserva de memoria del 60 % para el clúster.
La siguiente ilustración muestra las unidades de CPU totales registradas en un clúster y qué significa la reserva y la utilización para las tareas existentes y la nueva ubicación de tareas. Los bloques inferiores (reservados, utilizados) y centrales (reservados, no utilizados) representan el total de unidades de CPU reservadas para las tareas existentes que se están ejecutando en el clúster, o la métrica CPUReservation
de CloudWatch. El bloque inferior representa las unidades de CPU reservadas que las tareas en ejecución están utilizando realmente en el clúster, o la métrica CPUUtilization
de CloudWatch. El bloque superior representa unidades de CPU que no han reservado tareas existentes; estas unidades de CPU están disponibles para la nueva ubicación de tareas. Las tareas existentes pueden utilizar también estas unidades de CPU sin reservar, si aumenta su necesidad de recursos de CPU. Para obtener más información, consulte la documentación del parámetro cpu de definición de tarea.
