Creación de una tarea de almacenamiento de imágenes - Amazon Elastic Compute Cloud

Creación de una tarea de almacenamiento de imágenes

Al almacenar una AMI en un bucket de S3, se crea una tarea de almacenamiento de imágenes. Puede utilizar la tarea de almacenamiento de imágenes para supervisar el progreso y el resultado del proceso.

Protección de sus AMI

Es importante asegurarse de que el bucket de S3 esté configurado con la seguridad suficiente para proteger el contenido de la AMI y que la seguridad se mantenga mientras los objetos AMI permanezcan en el bucket. Si esto no se puede hacer, no se recomienda el uso de estas API. Asegúrese de que el acceso público al bucket de S3 no está permitido. Recomendamos habilitar el cifrado del lado del servidor para los buckets de S3 en los que almacena las AMI, aunque no es necesario.

Para obtener información acerca de cómo establecer la configuración de seguridad adecuada para los buckets de S3, consulte los siguientes temas de seguridad:

Cuando las instantáneas de AMI se copian en el objeto de S3, los datos se copian a través de conexiones TLS. Puede almacenar AMI con instantáneas cifradas, pero las instantáneas se descifran como parte del proceso de almacenamiento.

Permisos para almacenar y restaurar AMI mediante S3

Si sus entidades principales de IAM van a almacenar o restaurar AMI usando Amazon S3, debe concederles los permisos necesarios.

En la siguiente política de ejemplo se incluyen todas las acciones necesarias para permitir que una entidad principal de IAM lleve a cabo las tareas de almacenamiento y restauración.

También puede crear políticas de IAM que otorguen a las entidades principales acceso solo a recursos específicos. Para obtener más políticas de ejemplo, vea Administración de acceso para los recursos de AWS en la Guía del usuario de IAM.

nota

Si las instantáneas que componen la AMI están cifradas o si su cuenta está habilitada para el cifrado de forma predeterminada, la entidad principal de IAM debe tener permiso para usar la clave de KMS.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:DeleteObject", "s3:GetObject", "s3:ListBucket", "s3:PutObject", "s3:PutObjectTagging", "s3:AbortMultipartUpload", "ebs:CompleteSnapshot", "ebs:GetSnapshotBlock", "ebs:ListChangedBlocks", "ebs:ListSnapshotBlocks", "ebs:PutSnapshotBlock", "ebs:StartSnapshot", "ec2:CreateStoreImageTask", "ec2:DescribeStoreImageTasks", "ec2:CreateRestoreImageTask", "ec2:GetEbsEncryptionByDefault", "ec2:DescribeTags", "ec2:CreateTags" ], "Resource": "*" } ] }

Creación de tareas de almacenamiento y restauración de imágenes

Para almacenar una AMI en un bucket de S3, comience por crear una tarea de almacenamiento de imágenes. El tiempo que se tarda en completar la tarea depende del tamaño de la AMI. Puede hacer un seguimiento del progreso de la tarea hasta que esta se complete correctamente o se produzca un error.

Creación de la tarea de almacenamiento de imágenes

Utilice el comando create-store-image-task. Especifique el ID de la AMI y el nombre del bucket de S3 en el que desea almacenar la AMI.

aws ec2 create-store-image-task \ --image-id ami-1234567890abcdef0 \ --bucket amzn-s3-demo-bucket

A continuación, se muestra un ejemplo del resultado.

{ "ObjectKey": "ami-1234567890abcdef0.bin" }
Descripción del progreso de la tarea de almacenamiento de imágenes

Utilice el comando describe-store-image-tasks.

aws ec2 describe-store-image-tasks

A continuación, se muestra un ejemplo del resultado.

{ "StoreImageTaskResults": [ { "AmiId": "ami-1234567890abcdef0", "Bucket": "amzn-s3-demo-bucket", "ProgressPercentage": 17, "S3objectKey": "ami-1234567890abcdef0.bin", "StoreTaskState": "InProgress", "StoreTaskFailureReason": null, "TaskStartTime": "2022-01-01T01:01:01.001Z" } ] }
Creación de una tarea de restauración de imágenes

Utilice el comando create-restore-image-task. Utilizando los valores para S3ObjectKey y Bucket desde la salida describe-store-image-tasks, especifique la clave de objeto de la AMI y el nombre del bucket de S3 en el que se copió la AMI. Especifique también un nombre para la AMI restaurada. El nombre debe ser único para las AMI de la región de esta cuenta.

nota

La AMI restaurada obtiene un nuevo ID de AMI.

aws ec2 create-restore-image-task \ --object-key ami-1234567890abcdef0.bin \ --bucket amzn-s3-demo-bucket \ --name "New AMI Name"

A continuación, se muestra un ejemplo del resultado.

{ "ImageId": "ami-0eab20fe36f83e1a8" }