View a markdown version of this page

Cómo funciona la ejecución de políticas de ciclo de vida - Generador de Imágenes de EC2

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cómo funciona la ejecución de políticas de ciclo de vida

Image Builder ejecuta las políticas de ciclo de vida habilitadas de forma periódica. Cada ejecución es una ejecución. Durante una ejecución, Image Builder evalúa los recursos de imagen en función de las reglas de la política y lleva a cabo las acciones del ciclo de vida especificadas.

Programa de ejecución

Image Builder ejecuta las políticas de ciclo de vida habilitadas una vez al día.

  • Image Builder gestiona el tiempo de ejecución exacto. No puede configurarlo.

  • Solo se ejecuta una ejecución por política a la vez. Una ejecución en curso o pendiente continúa en lugar de iniciar una nueva.

  • Las políticas deshabilitadas no se ejecutan y, al deshabilitar una política, se impide que cualquier ejecución pendiente procese nuevos recursos.

Estados de ejecución

Supervise el progreso de la ejecución del ciclo de vida mediante la RunLog pestaña de la consola o el comando list-lifecycle-execution AWS CLI . Cada ejecución informa sobre uno de estos estados:

IN_PROGRESS

Image Builder evalúa activamente los recursos y lleva a cabo acciones durante el ciclo de vida.

PENDING

El procesamiento está en pausa. Se reanuda durante la siguiente ejecución programada.

SUCCESS

Image Builder procesó correctamente todos los recursos aplicables.

FAILED

Se produjo un error en una o más acciones de recursos. Use el comando list-lifecycle-execution-resources para identificar qué recursos fallaron y por qué.

CANCELLING

Image Builder ha recibido una solicitud de cancelación y está finalizando el paso de procesamiento actual.

CANCELLED

Se canceló la ejecución. Image Builder no revierte los recursos procesados antes de la cancelación.

Cómo se evalúan los recursos

Image Builder evalúa los recursos de imágenes desde los más recientes hasta los más antiguos (por fecha de creación) siguiendo estos pasos:

  1. Selección de recursos: Image Builder identifica todos los recursos de imagen que coinciden con el alcance de la política, definido mediante un filtro de recetas (incluidos los patrones de versión) o un filtro de etiquetas.

  2. Comprobación de compilación activa: Image Builder omite las imágenes con una compilación en curso (estado de compilación, prueba o distribución) y las evalúa en la siguiente ejecución.

  3. Evaluación de reglas: Image Builder evalúa las reglas en orden de prioridad: desaprobar, deshabilitar y, por último, eliminar. Solo se aplica una acción a cada imagen por ejecución. Si una imagen coincide con una regla obsoleta, Image Builder omite las reglas de desactivación y eliminación de esa imagen durante la misma ejecución.

    La evaluación varía según el tipo de regla:

    Para las reglas de obsolescencia y desactivación
    1. Comprobación del filtro AGE (si está configurado): Image Builder comprueba si la imagen es anterior al umbral especificado.

    2. Image-level tag exclusion check (exclusionRules.tagMap): Image Builder omite las imágenes que tienen una etiqueta de exclusión.

    Para eliminar reglas
    1. Verificación del filtro AGE o COUNT: en el caso de la edad, Image Builder comprueba si la imagen es anterior al umbral. Para COUNT, Image Builder comprueba si se ha alcanzado el recuento de retenciones.

    2. Verificación fallida o cancelada: las imágenes en un estado erróneo o cancelado se pueden eliminar y no ocupan ningún espacio de retención.

    3. Comprobación de retención: si configuró un retainAtLeast valor (filtro AGE) o un valor de recuento (filtro COUNT), las imágenes más recientes llenan primero los espacios de retención. Una imagen que llena un espacio de retención permanece sin evaluación adicional.

    4. Image-level comprobación de exclusión de etiquetas (exclusionRules.tagMap): en el caso de las imágenes que pasan la comprobación de retención (imágenes que, de otro modo, se eliminarían), Image Builder comprueba si hay una etiqueta de exclusión. Si está presente, Image Builder omite la imagen.

    importante

    Image Builder evalúa la retención antes de la exclusión de etiquetas. Una imagen incluida en la ventana de retención permanece protegida independientemente de las etiquetas de exclusión. La exclusión de etiquetas solo se aplica a las imágenes que superen el límite de retención.

    Una imagen excluida por etiquetas no ocupa ningún espacio de retención y no afecta al recuento de retención de otras imágenes.

  4. AMI-level comprobaciones de exclusión: tras determinar las imágenes aptas, Image Builder evalúa sus AMI de salida según las reglas de AMI-level exclusión (exclusionRules.amis). Estas normas incluyen la exclusión regional, la exclusión de la AMI pública, la exclusión de las etiquetas de la AMI, la exclusión de las cuentas compartidas y la exclusión lanzada por última vez. Image Builder informa de una AMI de salida que cumple SKIPPED con cualquier criterio de exclusión, por un motivo que indica la condición coincidente.

nota

Las ejecuciones posteriores aplican reglas de desactivación o eliminación a los recursos anteriormente obsoletos si cumplen los criterios.

Cómo funciona la retención de las reglas de eliminación

Los filtros de retención (AGE y COUNT) se comparan con los recursos de imagen de Image Builder, no generan AMI o contenedores directamente. Image Builder conserva las imágenes más recientes de cada versión de receta y marca las imágenes antiguas para eliminarlas.

Para obtener información detallada sobre la lógica de cálculo de la retención, incluido el comportamiento de los filtros según la edad y el recuento, consulte. Cómo se calcula la retención

Administrar manualmente el estado de los recursos

Puede activar cambios inmediatos en el estado del ciclo de vida de una versión de creación de imagen específica mediante el comando start-resource-state-update, sin esperar a la siguiente ejecución programada.

Transiciones compatibles:

  • Obsoleta: marca una imagen como obsoleta.

  • Deshabilitar: evita que una imagen lance nuevas instancias.

  • Eliminar: elimine una imagen y sus recursos asociados (debe especificar al menos un tipo de recurso asociado).

  • Disponible: devuelve una imagen obsoleta o deshabilitada al estado disponible.

Cada cambio de estado manual crea una ejecución de ciclo de vida independiente. Realice un seguimiento mediante el comando list-lifecycle-executions.

Cancelar una ejecución

Cancele una ejecución en curso o pendiente mediante el comando cancel-lifecycle-execution o la consola Image Builder.

Al cancelar una ejecución:

  • La ejecución pasa a estar CANCELLING finalizando la acción de recurso actual.

  • Una vez completada la acción actual, la ejecución pasa aCANCELLED.

  • Image Builder no revierte los recursos ya procesados. Por ejemplo, una imagen obsoleta antes de la cancelación sigue siendo obsoleta.

  • Image Builder omite los recursos no procesados.

Cómo gestionan las políticas de ciclo de vida los recursos modificados externamente

Usted u otros AWS servicios pueden modificar los recursos de su cuenta al margen de las políticas del ciclo de vida de Image Builder. Ejemplos de modificaciones externas:

  • Cancelación del registro de la AMI a través de la consola Amazon EC2

  • Obsolescencia de la AMI mediante la API Amazon EC2

  • Eliminación de imágenes de contenedores de un repositorio de Amazon ECR

  • Eliminación de recursos de imágenes de Image Builder mediante la API Image Builder

Si un recurso ya se ha eliminado o se encuentra en el estado deseado, Image Builder informa de la acción comoSUCCESS. La política no falla cuando los recursos se han limpiado por otros medios.

nota

Un SKIPPED estado es diferente. Image Builder SKIPPED solo informa cuando existe un recurso, pero una regla de exclusión impide la acción.

Supervisión de los resultados de la ejecución

Supervise los resultados de la ejecución del ciclo de vida en dos niveles:

Nivel de ejecución

Vea todas las ejecuciones de una política, incluidos el estado, la hora de inicio y la hora de finalización.

Nivel de recursos

Vea los resultados por recurso dentro de una ejecución.

  • Consola: en la RunLogpestaña, elija un ID de ejecución para ver los recursos procesados.

  • AWS CLI— Ejecute list-lifecycle-execution-resources con el ID de ejecución.

Cada entrada de recursos incluye:

  • ARN de recurso

  • Acción emprendida (o intentada)

  • Estado del recurso (SUCCESS,FAILED, oSKIPPED)

  • Motivo del resultado (especialmente útil en el caso de recursos omitidos o fallidos)