View a markdown version of this page

Cómo funciona Generador de Imágenes de EC2 - 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 Generador de Imágenes de EC2

Cuando utilice la consola EC2 Image Builder para crear una canalización de imágenes personalizada, el sistema le guiará a través de los siguientes pasos.

  1. Especifique los detalles de la canalización: introduzca la información sobre la canalización, como el nombre, la descripción, las etiquetas y una programación para ejecutar compilaciones automatizadas. Si lo prefiere, puede elegir compilaciones manuales.

  2. Elija la receta: elija entre crear una AMI o crear una imagen de contenedor. Para ambos tipos de imágenes de salida, introduzca un nombre y una versión para la receta, seleccione una imagen base y elija los componentes que desee añadir para su creación y prueba. También puede elegir el control de versiones automático para asegurarse de utilizar siempre la última versión disponible del sistema operativo (SO) para su imagen base. Las recetas de contenedores también definen Dockerfiles y el repositorio Amazon ECR de destino para la imagen de contenedor de Docker de salida.

    nota

    Los componentes son los bloques básicos que consume una receta de imagen o una receta de contenedor. Por ejemplo, paquetes para la instalación, pasos de refuerzo de la seguridad y pruebas. La imagen base y los componentes seleccionados forman una receta de imagen.

  3. Defina la configuración de la infraestructura: Generador de Imágenes lanza instancias de EC2 en su cuenta para personalizar las imágenes y ejecutar pruebas de validación. Los ajustes de configuración de la infraestructura especifican los detalles de la infraestructura de las instancias que se ejecutarán en su servidor Cuenta de AWS durante el proceso de creación.

  4. Defina los ajustes de distribución: elija las regiones de AWS en las que desea distribuir la imagen una vez que la compilación se haya completado y haya superado todas las pruebas. La canalización distribuye automáticamente la imagen a la región en la que se ejecuta la compilación, y puede añadir la distribución de imágenes para otras regiones.

Las imágenes que cree a partir de su imagen base personalizada están en su Cuenta de AWS. Puede configurar la canalización de imágenes para producir versiones actualizadas y parcheadas de la imagen introduciendo un cronograma de creación. Cuando la compilación esté completa, puede recibir una notificación a través de Amazon Simple Notification Service (SNS). Además de producir una imagen final, el asistente de consola Image Builder genera una receta que se puede utilizar con los sistemas de control de versiones y los canales de integration/continuous despliegue continuo (CI/CD) existentes para una automatización repetible. Puede compartir y crear nuevas versiones de su receta.

Elementos de las AMI

Una imagen de máquina de Amazon (AMI) es una imagen de máquina virtual (VM) preconfigurada que contiene el sistema operativo y el software para implementar instancias de EC2.

Una AMI incluye los siguientes elementos:

  • Una plantilla para el volumen raíz de la máquina virtual. Cuando se lanza una Amazon EC2 VM, el volumen de dispositivo raíz contiene la imagen utilizada para arrancar dicha instancia. Cuando se utiliza el almacén de instancias, el dispositivo raíz es un volumen de almacén de instancias creado a partir de una plantilla de Amazon S3. Para más información, consulte Volumen de dispositivo raíz de Amazon EC2.

  • Cuando se utiliza Amazon EBS, el dispositivo raíz es un volumen de EBS creado a partir de una instantánea de EBS.

  • Permisos de lanzamiento que determinan qué máquinas virtuales pueden lanzar con la AMI. Cuentas de AWS

  • Datos de Asignación de dispositivos de bloques que especifican los volúmenes que se van a adjuntar a la instancia cuando se lance.

  • Un identificador de recursos único para cada región y para cada cuenta.

  • Cargas útiles de metadatos, como etiquetas, y propiedades como la región, el sistema operativo, la arquitectura, el tipo de dispositivo raíz, el proveedor, los permisos de inicio, el almacenamiento del dispositivo raíz y el estado de la firma.

  • Una firma AMI para las imágenes de Windows para protegerlas contra la manipulación no autorizada. Para obtener más información, consulte Documentos de identidad de instancias.

Administración de componentes

EC2 Image Builder utiliza una Ejecutor y orquestador de tareas de AWS aplicación de administración de componentes TOE de AWS() que le ayuda a organizar flujos de trabajo complejos, modificar las configuraciones del sistema y probar los sistemas YAML-based con componentes de script. Como TOE de AWS es una aplicación independiente, no requiere ninguna configuración adicional. Se puede ejecutar en cualquier infraestructura de nube y en las instalaciones. Para empezar a TOE de AWS utilizarla como aplicación independiente, consulte. Configuración manual para desarrollar componentes personalizados con TOE de AWS

Image Builder se utiliza TOE de AWS para realizar todas las actividades en la instancia. Estas incluyen crear y validar la imagen antes de tomar una instantánea y probar la instantánea para asegurarse de que funciona como se espera antes de crear la imagen final. Para obtener más información acerca de cómo Image TOE de AWS Builder administra sus componentes, consulteUso de componentes para personalizar su imagen de Generador de imágenes. Para obtener más información sobre cómo crear componentes con el TOE de AWS, consulte Cómo utiliza Image Builder el Ejecutor y orquestador de tareas de AWS aplicación para gestionar componentes.

Pruebas de imágenes

Puede usar componentes de TOE de AWS prueba para validar la imagen y asegurarse de que funciona como se espera antes de crear la imagen final.

Por lo general, cada componente de prueba consta de un documento YAML que contiene un script de prueba, un archivo binario de prueba y metadatos de prueba. El script de prueba contiene los comandos de orquestación para iniciar el archivo binario de prueba, que se puede escribir en cualquier lenguaje compatible con el sistema operativo. Los códigos de estado de salida indican el resultado de la prueba. Los metadatos de la prueba describen la prueba y su comportamiento; por ejemplo, el nombre, la descripción, las rutas al archivo binario de la prueba y la duración prevista.

Nombres y ARN de los recursos

Al crear un recurso de Image Builder, Image Builder genera el ARN del recurso a partir de una forma normalizada del nombre que usted proporciona. Comprender esta normalización le ayuda a evitar conflictos de nombres inesperados al crear recursos con nombres similares. La normalización convierte el nombre a minúsculas y reemplaza los espacios y los guiones bajos por guiones. Por ejemplo, un componente denominado My Component_v2 aparece en su ARN como. my-component-v2

La normalización se aplica a todos los tipos de recursos de Image Builder, incluidos los componentes, las recetas, las imágenes, las canalizaciones de imágenes, las configuraciones de infraestructura, las configuraciones de distribución, las políticas de ciclo de vida y los flujos de trabajo.

Los nombres de los recursos deben ser exclusivos de su cuenta en cada uno Región de AWS de ellos. Como el ARN se basa en el nombre normalizado, los nombres que difieren solo en mayúsculas y minúsculas, los espacios o los guiones bajos entran en conflicto entre sí. Por ejemplo, no puede crear una receta de imagen con un nombre my recipe si ya tiene una My_Recipe con el mismo nombre de la misma versión. Cuando los nombres entran en conflicto, se produce un ResourceAlreadyExistsException error en la solicitud de creación. En el caso de los recursos versionados, el nombre se combina con la versión semántica para determinar la exclusividad. Los recursos que admiten versiones de compilación, como los componentes y los flujos de trabajo, crean en su lugar una nueva versión de compilación al reutilizar un nombre y una versión con contenido modificado.

Recursos creados

Al crear una canalización, no se crea ningún recurso externo a Generador de Imágenes, a menos que se cumpla lo siguiente:

  • Cuando se crea una imagen mediante el cronograma de canalización.

  • Cuando se elige Ejecutar canalización en el menú Acciones de la consola de Generador de Imágenes.

  • Cuando ejecutas alguno de estos comandos desde la API o AWS CLI: StartImagePipelineExecution o CreateImage

Los siguientes recursos se crean durante el proceso de creación de la imagen:

Canalizaciones de imágenes AMI
  • Instancia EC2 (temporal)

  • Asociación de inventario de Systems Manager (a través de Systems Manager State Manager si EnhancedImageMetadata está habilitado) en la instancia EC2

  • AMI de Amazon EC2

  • La instantánea de Amazon EBS asociada a la AMI de Amazon EC2

Canalizaciones de imágenes de contenedor
  • Contenedor de Docker que se ejecuta en una instancia de EC2 (temporal)

  • Asociación de inventario de Systems Manager (a través de Systems Manager State Manager si EnhancedImageMetadata está habilitado) en la instancia EC2

  • Imagen de contenedor de Docker

  • Dockerfile

Una vez creada la imagen, se eliminan todos los recursos temporales.

Distribución

EC2 Image Builder puede distribuir AMI o imágenes de contenedores en AWS cualquier región. La imagen se copia en cada región que especifique en la cuenta utilizada para crear la imagen.

Para las imágenes de salida de la AMI, puede definir los permisos de lanzamiento de la AMI para controlar cuáles Cuentas de AWS están autorizados a lanzar instancias EC2 con la AMI creada. Por ejemplo, puede hacer que la imagen sea privada, pública o compartirla con cuentas específicas. Si distribuye la AMI a otras regiones y define los permisos de lanzamiento para otras cuentas, los permisos de lanzamiento se propagan a las AMI de todas las regiones en las que se distribuye la AMI.

También puede usar su AWS Organizations cuenta para imponer limitaciones a las cuentas de los miembros para lanzar instancias únicamente con AMI aprobadas y que cumplan con las normas. Para obtener más información, consulte Administrar Cuentas de AWS en su organización.

Para actualizar los ajustes de distribución mediante la consola Generador de Imágenes, siga los pasos para Creación de una nueva versión de una receta de imagen de la consola o Creación de una nueva versión de una receta de contenedor con la consola.

Uso compartido de recursos

Para compartir componentes, recetas o imágenes con otras cuentas o dentro de ellas AWS Organizations, consulteComparta los recursos de Image Builder con AWS RAM.

Conformidad

Para los puntos de referencia del Center for Internet Security (CIS), Generador de imágenes de EC2 utiliza Amazon Inspector para realizar evaluaciones de exposición, vulnerabilidades y desviaciones de las prácticas recomendadas y estándares de cumplimiento. Por ejemplo, Generador de Imágenes evalúa la accesibilidad no deseada de la red, los CVE sin parches, la conectividad pública a Internet y la activación del inicio de sesión raíz remoto. Amazon Inspector se ofrece como un componente de prueba que puede añadir a su receta de imagen. Para obtener más información sobre Amazon Inspector, consulta la Guía del usuario de Amazon Inspector. Para obtener más información, consulte los puntos de referencia del Center for Internet Security (CIS).

Generador de Imágenes proporciona componentes de endurecimiento de STIG para crear de manera más eficiente imágenes compatibles con los estándares de referencia de STIG. Estos componentes de STIG escanean en busca de configuraciones incorrectas y ejecutan un script de corrección. El uso de los STIG-compliant componentes no conlleva cargos adicionales. Para obtener una lista completa de los componentes de STIG disponibles a través de Generador de Imágenes, consulte Componentes de endurecimiento de STIG administrados por Amazon para Generador de imágenes.