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.
Creación y actualización de ajustes de distribución de AMI
En esta sección se describe la creación y actualización de los ajustes de distribución para una AMI de Generador de Imágenes.
Requisitos previos para los parámetros de salida de SSM
Antes de crear una nueva configuración de distribución de AMI que establezca un AWS Systems Manager parámetro de almacén de parámetros (parámetro SSM), asegúrese de cumplir los siguientes requisitos previos.
- Rol de ejecución
-
Al crear una canalización o utilizar el comando create-image en AWS CLI, solo puede especificar una función de ejecución de Image Builder. Si ha definido una función de ejecución del flujo de trabajo de Image Builder, añadiría cualquier permiso de función adicional a esa función. De lo contrario, crearía un nuevo rol personalizado que incluya los permisos necesarios.
-
Para almacenar el ID de AMI de salida en un parámetro de SSM durante la distribución, debe especificar la ssm:PutParameter
acción en su rol de ejecución de Image Builder, con el parámetro listado como recurso.
-
Al configurar el tipo de datos del parámetro para indicar AWS EC2 Image
a Systems Manager que valide el valor del parámetro como un ID de AMI, también debe añadir la ec2:DescribeImages
acción.
Crear una configuración de distribución de AMI
Las configuraciones de distribución incluyen el nombre de la AMI de salida, la configuración regional específica para el cifrado, los permisos de lanzamiento y Cuentas de AWS las organizaciones y unidades organizativas (OUs) que pueden lanzar la AMI de salida y las configuraciones de licencia.
Una configuración de distribución le permite especificar el nombre y la descripción de la AMI de salida, autorizar Cuentas de AWS a otras personas a lanzar la AMI, copiar la AMI a otras cuentas y replicar la AMI en otras AWS regiones. También le permite exportar la AMI a Amazon Simple Storage Service (Amazon S3) o EC2 configurar Fast Launch para Windows de salida. AMIs Para hacer una AMI pública, configure las cuentas autorizadas de permiso de lanzamiento en all
. Consulte los ejemplos de cómo hacer pública una AMI en EC2 ModifyImageAttribute.
- Console
-
Siga estos pasos para crear una nueva configuración de distribución de AMI en AWS Management Console:
-
Abra la consola EC2 de Image Builder en https://console.aws.amazon.com/imagebuilder/.
-
En el panel de navegación, seleccione Ajustes de distribución. Aquí se muestra una lista de los ajustes de distribución que se crean en su cuenta.
-
Seleccione Crear ajustes de la distribución cerca de la parte superior del panel de Ajustes de distribución.
-
En la sección Tipo de imagen, elija Imagen de máquina de Amazon (AMI) como tipo de salida.
-
En la sección General, introduzca un nombre para la configuración de distribución y una descripción opcional.
-
En la sección Ajustes de la región, introduzca los siguientes detalles para cada región en la que distribuya su AMI:
-
La AMI se distribuye a la región actual (región 1) de forma predeterminada. La región 1 es el origen de la distribución. Algunos ajustes de la región 1 no están abiertos para editarlos. Para cualquier región que añada, puede elegir una región de la lista desplegable de regiones.
La clave Kms identifica la AWS KMS key que se utiliza para cifrar los volúmenes de EBS de la imagen en la región de destino. Es importante tener en cuenta que esto no se aplica a la AMI original que la compilación crea en su cuenta en la región de origen (región 1). El cifrado que se ejecuta durante la fase de distribución de la creación es solo para las imágenes que se distribuyen a otras cuentas o regiones.
Para cifrar los volúmenes de EBS para la AMI que se creó en la región de origen para su cuenta, debe configurar la clave KMS en la asignación de dispositivos de bloques de recetas de imagen (almacenamiento (volúmenes) en la consola).
Generador de Imágenes copia la AMI en las cuentas de destino que especifique para la región.
El nombre de la AMI de salida es opcional. Si proporciona un nombre, el nombre de la AMI de salida final incluirá una marca de tiempo adjunta que indica cuando se creó la AMI. Si no especifica un nombre, Generador de Imágenes añade la marca de tiempo de creación al nombre de la receta. Esto garantiza nombres de AMI únicos para cada creación.
-
Con el uso compartido de AMI, puede conceder acceso a AWS directores específicos para lanzar instancias desde su AMI. Si amplía la sección Uso compartido de AMI, puede introducir los siguientes detalles:
-
Permisos de lanzamiento: seleccione Privado si quiere mantener la privacidad de su AMI y permitir el acceso a AWS directores específicos para lanzar una instancia desde su AMI privada. Seleccione Público si quiere que su AMI sea pública. Cualquier AWS director puede lanzar una instancia desde su AMI pública.
-
Principales: puede conceder acceso a los siguientes tipos de AWS principales para lanzar instancias:
-
AWS cuenta: permite el acceso a una cuenta específica AWS
-
Unidad organizativa (OU): permite el acceso a una OU y a todas sus entidades secundarias. Las entidades secundarias incluyen AWS cuentas OUs y.
-
Organización: conceda acceso a su AWS Organizations entidad secundaria y a todas sus entidades secundarias. Las entidades secundarias incluyen AWS las cuentas OUs y.
En primer lugar, seleccione el tipo de entidad principal. A continuación, introduzca el ID de la entidad principal de AWS a la que desea conceder acceso en el cuadro situado a la derecha de la lista desplegable. Puede introducir varios IDs tipos diferentes.
-
Puede ampliar la sección Configuración de licencias para adjuntar las configuraciones de licencia creadas con AWS License Manager las imágenes de Image Builder. Las configuraciones de la licencia contienen reglas de asignación de licencias que se basan en las condiciones de los contratos de su empresa. Generador de Imágenes incluye automáticamente las configuraciones de licencias asociadas a la AMI base.
-
Puede ampliar la sección de configuración de plantillas de lanzamiento para especificar una plantilla de EC2 lanzamiento que se utilizará para lanzar instancias desde la AMI que cree.
Si utiliza una plantilla de EC2 lanzamiento, puede indicar a Image Builder que cree una nueva versión de la plantilla de lanzamiento que incluya el ID de AMI más reciente una vez finalizada la compilación. Para actualizar la plantilla de lanzamiento, configure los ajustes de la siguiente manera:
-
Nombre de la plantilla de lanzamiento: seleccione el nombre de la plantilla de lanzamiento que desea que Generador de Imágenes actualice.
-
Establecer la versión predeterminada: seleccione esta casilla de verificación para actualizar la versión predeterminada de la plantilla de lanzamiento a la versión nueva.
Para añadir otra configuración de la plantilla de lanzamiento, elija Añadir configuración de la plantilla de lanzamiento. Puede disponer de hasta cinco configuraciones de plantillas de lanzamiento por región.
-
Puede ampliar la sección de configuraciones de parámetros de SSM para configurar un parámetro de SSM que almacenará el ID de AMI de salida de la imagen que se distribuye a la región de destino. Si lo desea, puede especificar una cuenta de distribución en la región.
Nombre del parámetro: introduzca el nombre del parámetro. Por ejemplo, /output/image/param
.
Tipo de datos: mantenga el valor predeterminado (AWS EC2 Image
). Esto le indica a Systems Manager que valide el valor del parámetro para asegurarse de que es un ID de AMI válido.
-
Para añadir los ajustes de la distribución para otra región, seleccione Añadir región.
-
Cuando haya terminado, elija Crear ajustes.
- AWS CLI
-
El siguiente ejemplo muestra cómo utilizar el comando create-distribution-configuration para crear una nueva configuración de distribución para la AMI mediante la AWS CLI.
-
Creación de un archivo JSON de entrada de la CLI
Utilice una herramienta de edición de archivos para crear un archivo JSON con las claves que se muestran en uno de los siguientes ejemplos y valores que sean válidos para su entorno. Estos ejemplos definen qué Cuentas de AWS unidades organizativas (OUs) tienen permiso para lanzar la AMI que distribuyes en las regiones especificadas. AWS Organizations Asigne un nombre al archivo create-ami-distribution-configuration.json
para su uso en el paso siguiente:
Ejemplo 1: Distribuir a Cuentas de AWS
En este ejemplo, se distribuye una AMI a dos regiones y se especifica qué Cuentas de AWS tienen permisos de lanzamiento en cada región.
{
"name": "MyExampleAccountDistribution",
"description": "Copies AMI to eu-west-1, and specifies accounts that can launch instances in each Region.",
"distributions": [
{
"region": "us-west-2",
"amiDistributionConfiguration": {
"name": "Name {{imagebuilder:buildDate}}",
"description": "An example image name with parameter references",
"amiTags": {
"KeyName": "Some Value"
},
"launchPermission": {
"userIds": [
"987654321012"
]
}
}
},
{
"region": "eu-west-1",
"amiDistributionConfiguration": {
"name": "My {{imagebuilder:buildVersion}} image {{imagebuilder:buildDate}}",
"amiTags": {
"KeyName": "Some value"
},
"launchPermission": {
"userIds": [
"100000000001"
]
}
}
}
]
}
Ejemplo 2: Distribuir a Organizations y OUs
En este ejemplo, se distribuye una AMI a la región de origen y se especifican los permisos de lanzamiento de la organización y la unidad organizativa.
{
"name": "MyExampleAWSOrganizationDistribution",
"description": "Shares AMI with the Organization and OU",
"distributions": [
{
"region": "us-west-2",
"amiDistributionConfiguration": {
"name": "Name {{ imagebuilder:buildDate }}",
"launchPermission": {
"organizationArns": [
"arn:aws:organizations::123456789012:organization/o-myorganization123"
],
"organizationalUnitArns": [
"arn:aws:organizations::123456789012:ou/o-123example/ou-1234-myorganizationalunit"
]
}
}
}
]
}
Ejemplo 3: almacenar el ID de AMI de salida en un parámetro SSM
En este ejemplo, se almacena el ID de AMI de salida en un AWS Systems Manager parámetro del almacén de parámetros de la región de distribución.
{
"name": "SSMParameterOutputAMI
",
"description": "Updates an SSM parameter with the output AMI ID for the distribution.
",
"distributions": [
{
"region": "us-west-2
",
"amiDistributionConfiguration": {
"name": "Name {{ imagebuilder:buildDate }}"
},
"ssmParameterConfigurations": [
{
"amiAccountId": "111122223333
",
"parameterName": "/output/image/param
",
"dataType": "aws:ec2:image
"
}
]
}
]
}
-
Ejecute el siguiente comando utilizando el archivo que creó como entrada.
aws imagebuilder create-distribution-configuration --cli-input-json file://create-ami-distribution-configuration.json
-
Debe incluir la notación file://
al principio de la ruta del archivo JSON.
-
La ruta del archivo JSON debe seguir la convención apropiada para el sistema operativo base donde se está ejecutando el comando. Por ejemplo, Windows utiliza la barra diagonal inversa (\) para referirse a la ruta de directorios, mientras que Linux y macOS usan la barra diagonal (/).
Para obtener información más detallada, consulte create-distribution-configuration en la referencia de comandos de la AWS CLI .
Actualizar una configuración de distribución de AMI
Puede cambiar la configuración de distribución de la AMI. Sin embargo, los cambios que realice no se aplican a ningún recurso que Generador de Imágenes ya haya distribuido. Por ejemplo, si ha distribuido una AMI en una región y luego la elimina de la distribución, la AMI que ya estaba distribuida permanece en esa región hasta que la elimine manualmente.
- AWS Management Console
-
Siga estos pasos para configurar una distribución de AMI en AWS Management Console:
-
Abra la consola EC2 de Image Builder en https://console.aws.amazon.com/imagebuilder/.
-
En el panel de navegación, seleccione Ajustes de distribución. Aquí se muestra una lista de los ajustes de distribución que se crean en su cuenta.
-
Para ver los detalles o actualizar una configuración de distribución, elija el enlace nombre de la configuración. Esto abre la vista detallada de los ajustes de la distribución.
También puede seleccionar la casilla junto al nombre de la configuración, y, a continuación, elija Ver detalles.
-
Para editar la configuración de distribución, elija Editar en la esquina superior derecha de la sección Detalles de distribución. Algunos campos están bloqueados, como el nombre de la configuración de distribución y la región predeterminada que se muestra como región 1. Para obtener más información acerca de los ajustes de la configuración de distribución, consulte Crear una configuración de distribución de AMI.
-
Cuando haya terminado, elija Guardar cambios.
- AWS CLI
-
El siguiente ejemplo muestra cómo utilizar el comando update-distribution-configuration para actualizar los ajustes de la distribución de la AMI mediante la AWS CLI.
-
Creación de un archivo JSON de entrada de la CLI
Utilice una herramienta de edición de archivos para crear un archivo JSON con las claves que se muestran en el siguiente ejemplo y valores que sean válidos para su entorno. En este ejemplo, se utiliza un archivo con el nombre update-ami-distribution-configuration.json
.
{
"distributionConfigurationArn": "arn:aws:imagebuilder:us-west-2:123456789012:distribution-configuration/update-ami-distribution-configuration.json",
"description": "Copies AMI to eu-west-2, and specifies accounts that can launch instances in each Region.",
"distributions": [
{
"region": "us-west-2",
"amiDistributionConfiguration": {
"name": "Name {{imagebuilder:buildDate}}",
"description": "An example image name with parameter references",
"launchPermissions": {
"userIds": [
"987654321012"
]
}
}
},
{
"region": "eu-west-2",
"amiDistributionConfiguration": {
"name": "My {{imagebuilder:buildVersion}} image {{imagebuilder:buildDate}}",
"tags": {
"KeyName": "Some value"
},
"launchPermissions": {
"userIds": [
"100000000001"
]
}
}
}
]
}
-
Ejecute el siguiente comando utilizando el archivo que creó como entrada.
aws imagebuilder update-distribution-configuration --cli-input-json file://update-ami-distribution-configuration.json
-
Debe incluir la notación file://
al principio de la ruta del archivo JSON.
-
La ruta del archivo JSON debe seguir la convención apropiada para el sistema operativo base donde se está ejecutando el comando. Por ejemplo, Windows utiliza la barra diagonal inversa (\) para referirse a la ruta de directorios, mientras que Linux y macOS usan la barra diagonal (/).
Para obtener información más detallada, consulte update-distribution-configuration en la referencia de comandos de la AWS CLI . Para actualizar las etiquetas de su recurso de configuración de distribución, consulte la sección Etiquetar recursos.
Cree una configuración de distribución para habilitar EC2 Fast Launch como salida AMIs
El siguiente ejemplo muestra cómo utilizar el create-distribution-configuration comando para crear ajustes de distribución que tengan EC2 Fast Launch configurado para la AMI, desde AWS CLI.
Image Builder no admite la distribución entre cuentas si EC2 Fast Launch está preactivado. AMIs EC2 Fast Launch debe estar activado desde la cuenta de destino.
-
Creación de un archivo JSON de entrada de la CLI
Utilice una herramienta de edición de archivos para crear un archivo JSON con claves, como se muestra en el siguiente ejemplo, además de valores que sean válidos para su entorno.
En este ejemplo, se lanzan instancias para todos sus recursos de destino de forma simultánea, ya que el número máximo de lanzamientos en paralelo es mayor que el recuento de recursos de destino. El nombre de este archivo es ami-dist-config-win-fast-launch.json
en el ejemplo de comando que se muestra en el siguiente paso.
{
"name": "WinFastLaunchDistribution",
"description": "An example of Windows AMI EC2 Fast Launch settings in the distribution configuration.",
"distributions": [
{
"region": "us-west-2",
"amiDistributionConfiguration": {
"name": "Name {{imagebuilder:buildDate}}",
"description": "Includes Windows AMI EC2 Fast Launch settings.",
"amiTags": {
"KeyName": "Some Value"
}
},
"fastLaunchConfigurations": [{
"enabled": true,
"snapshotConfiguration": {
"targetResourceCount": 5
},
"maxParallelLaunches": 6,
"launchTemplate": {
"launchTemplateId": "lt-0ab1234c56d789012",
"launchTemplateVersion": "1"
}
}],
"launchTemplateConfigurations": [{
"launchTemplateId": "lt-0ab1234c56d789012",
"setDefaultVersion": true
}]
}]
}
Puede especificar el launchTemplateName
en lugar del launchTemplateId
en la sección launchTemplate
, pero no puede especificar tanto el nombre como el identificador.
-
Ejecute el siguiente comando utilizando el archivo que creó como entrada.
aws imagebuilder create-distribution-configuration --cli-input-json file://ami-dist-config-win-fast-launch.json
-
Debe incluir la notación file://
al principio de la ruta del archivo JSON.
-
La ruta del archivo JSON debe seguir la convención apropiada para el sistema operativo base donde se está ejecutando el comando. Por ejemplo, Windows utiliza la barra diagonal inversa (\) para referirse a la ruta de directorios, mientras que Linux y macOS usan la barra diagonal (/).
Para obtener información más detallada, consulte create-distribution-configuration en la referencia de comandos de la AWS CLI .
Cree la configuración de distribución para los discos de máquina virtual de salida desde AWS CLI
El siguiente ejemplo muestra cómo usar el comando create-distribution-configuration para crear ajustes de la distribución que exportarán los discos de imágenes de máquinas virtuales a Amazon S3 con cada creación de imágenes.
-
Creación de un archivo JSON de entrada de la CLI
Puede simplificar el comando create-distribution-configuration que utiliza en la AWS CLI. Para ello, cree un archivo JSON que contenga toda la configuración de exportación que desee pasar al comando.
La convención de nomenclatura de los valores de datos del archivo JSON sigue el patrón que se especifica para los parámetros de solicitud de operación de la API Image Builder. Para revisar los parámetros de la solicitud de operación de la API, consulte el CreateDistributionConfiguration comando en la Referencia de la API de EC2 Image Builder.
Para proporcionar los valores de los datos como parámetros de la línea de comandos, consulte los nombres de los parámetros especificados en la referencia de comandos de la AWS CLI y utilice el comando create-distribution-configuration como opciones.
Este es un resumen de los parámetros que especificamos en el objeto s3ExportConfiguration
de JSON para este ejemplo:
-
roleName (cadena, obligatorio): el nombre del rol que concede a la máquina virtual el Import/Export permiso para exportar imágenes al bucket de S3.
-
diskImageFormat(cadena, obligatorio): exporta la imagen de disco actualizada a uno de los siguientes formatos compatibles:
-
Virtual Hard Disk (VHD), que es compatible con los productos de virtualización Citrix Xen y Microsoft Hyper-V.
-
Disco de máquina virtual ESX optimizado para streaming (VMDK): compatible con las versiones 4, 5 y 6 de ESX VMware y VMware vSphere.
-
Crudo: formato en crudo.
-
S3Bucket (cadena, obligatorio): el bucket S3 en el que se almacenan las imágenes de disco de salida de la máquina virtual.
Guarde el archivo como export-vm-disks.json
. Usa el nombre del archivo en el comando create-distribution-configuration.
{
"name": "example-distribution-configuration-with-vm-export",
"description": "example",
"distributions": [
{
"region": "us-west-2",
"amiDistributionConfiguration": {
"description": "example-with-vm-export"
},
"s3ExportConfiguration": {
"roleName": "vmimport",
"diskImageFormat": "RAW",
"s3Bucket": "vm-bucket-export"
}
}],
"clientToken": "abc123def4567ab"
}
-
Ejecute el siguiente comando utilizando el archivo que creó como entrada.
aws imagebuilder create-distribution-configuration --cli-input-json file://export-vm-disks.json
-
Debe incluir la notación file://
al principio de la ruta del archivo JSON.
-
La ruta del archivo JSON debe seguir la convención apropiada para el sistema operativo base donde se está ejecutando el comando. Por ejemplo, Windows utiliza la barra diagonal inversa (\) para referirse a la ruta de directorios, mientras que Linux y macOS usan la barra diagonal (/).
Para obtener información más detallada, consulte create-distribution-configuration en la referencia de comandos de la AWS CLI .