Copiar una AMI
Puede copiar una Amazon Machine Image (AMI) dentro de las regiones de AWS o entre ellas. Puede copiar las AMI basadas en Amazon EBS y las AMI basadas en almacén de instancias. Puede copiar las AMI basadas en EBS con instantáneas cifradas, y también cambiar el estado de cifrado durante el proceso de copia. Puede copiar las AMI que se compartieron con usted.
Si se copia una AMI de origen se obtiene una nueva AMI idéntica pero distinta, que también denominamos AMI de destino. La AMI de destino tiene su ID de AMI propio y único. Puede cambiar o cancelar el registro de la AMI de origen sin que ello afecte a la AMI de destino. y viceversa.
Con una AMI basada en EBS, cada una de las instantáneas con respaldo se copia en una instantánea de destino idéntica, pero distinta. Si copia una AMI en una región nueva, las instantáneas son copias completas (no incrementales). Si cifra instantáneas de copia de seguridad sin cifrar o las cifra en una nueva clave KMS, las instantáneas son copias completas (no incrementales). Las operaciones de copia posteriores de una AMI da como resultado copias incrementales de las instantáneas de copia de seguridad.
Contenido
Consideraciones
-
Permiso para copiar AMI: puede utilizar las políticas de IAM para conceder o denegar a los usuarios el permiso para copiar las AMI. Los permisos de nivel de recursos especificados para la acción
CopyImage
solo se aplican a la nueva AMI. No se pueden especificar permisos de nivel de recursos para la AMI de origen. -
Permisos de inicialización y permisos de bucket de Amazon S3: AWS no copia los permisos de inicialización ni los permisos de bucket de Amazon S3 de la AMI de origen a la nueva AMI. Una vez que se haya completado la operación de copia, puede aplicar los permisos de inicialización y los permisos del bucket de Amazon S3 a la nueva AMI.
-
Etiquetas: solo puede copiar las etiquetas de AMI definidas por el usuario que haya adjuntado a la AMI de origen. Las etiquetas del sistema (con el prefijo
aws:
) y las etiquetas definidas por el usuario que estén adjuntas por otras Cuentas de AWS no se copiarán. Al copiar una AMI, puede adjuntar nuevas etiquetas a la AMI de destino y a sus instantáneas de respaldo.
Costos
Copiar una AMI no supone ningún costo. Sin embargo, se aplican las tarifas estándar por almacenamiento y transferencia de datos. Si copia una AMI respaldada por EBS, se le cobrarán cargos por el almacenamiento de cualquier instantánea adicional de EBS.
Permisos de IAM
Para copiar una AMI basada en EBS o un almacén de instancias, necesita los siguientes permisos de IAM:
-
ec2:CopyImage
: para copiar la AMI. En el caso de las AMI basadas en EBS, también concede permiso para copiar las instantáneas de respaldo de la AMI. -
ec2:CreateTags
: para etiquetar la AMI de destino. En el caso de las AMI basadas en EBS, también concede permiso para etiquetar las instantáneas de respaldo de la AMI de destino.
Si va a copiar una AMI basada en un almacén de instancias, necesitará los siguientes permisos de IAM adicionales:
-
s3:CreateBucket
: para crear el bucket de S3 en la región de destino para la nueva AMI -
s3:GetBucketAcl
: para leer los permisos de ACL del bucket de origen -
s3:ListAllMyBuckets
: para buscar un bucket de S3 existente para las AMI en la región de destino -
s3:GetObject
: para leer los objetos del bucket de origen -
s3:PutObject
: para escribir los objetos en el bucket de destino -
s3:PutObjectAcl
: para escribir los permisos de los nuevos objetos en el bucket de destino
Ejemplo de política de IAM para copiar una AMI basada en EBS y etiquetar la AMI de destino y las instantáneas
El siguiente ejemplo de política le concede permiso para copiar cualquier AMI basada en EBS y etiquetar la AMI de destino y sus instantáneas de respaldo.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "PermissionToCopyAllImages", "Effect": "Allow", "Action": [ "ec2:CopyImage", "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*::image/*" }] }
Ejemplo de política de IAM para copiar una AMI basada en EBS, pero que deniega el etiquetado de las nuevas instantáneas
El permiso ec2:CopySnapshot
se concede automáticamente cuando se obtiene el permiso ec2:CopyImage
. Esto incluye el permiso para etiquetar las nuevas instantáneas de respaldo de la AMI de destino. Se puede denegar explícitamente el permiso para etiquetar las nuevas instantáneas de respaldo.
La siguiente política de ejemplo le concede permiso para copiar cualquier AMI basada en EBS, pero le deniega etiquetar las nuevas instantáneas de respaldo de la AMI de destino.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:CopyImage", "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*::image/*" }, { "Effect": "Deny", "Action": "ec2:CreateTags", "Resource": "arn:aws:ec2:::snapshot/*" } ] }
Ejemplo de política de IAM para copiar una AMI basada en un almacén de instancias y etiquetar la AMI de destino
La siguiente directiva de ejemplo le concede permiso para copiar cualquier AMI basada en almacén de instancias en el bucket de origen especificado a la región especificada, y etiquetar la AMI de destino.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "PermissionToCopyAllImages", "Effect": "Allow", "Action": [ "ec2:CopyImage", "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*::image/*" }, { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": [ "arn:aws:s3:::*" ] }, { "Effect": "Allow", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::ami-source-bucket/*" ] }, { "Effect": "Allow", "Action": [ "s3:CreateBucket", "s3:GetBucketAcl", "s3:PutObjectAcl", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::amis-for-
account
-in-region
-hash
" ] } ] }
Para localizar el nombre de recurso de Amazon (ARN) del bucket de origen de la AMI, abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/
nota
El permiso s3:CreateBucket
solo es necesario la primera vez que copia una AMI basada en un almacén de instancias en una región individual. Después de eso, el bucket de Amazon S3 que ya se ha creado en la región se utiliza para almacenar todas las AMIs futuras que se copian en esa región.
Copiar una AMI
Puede copiar una AMI mediante la AWS Management Console, la AWS Command Line Interface, los SDK o la API de Amazon EC2, todos los cuales admiten la acción CopyImage
.
Requisito previo
Cree u obtenga una AMI para copiarla. Tenga en cuenta que puede utilizar la consola de Amazon EC2 para buscar una gran variedad de AMI que proporciona AWS. Para obtener más información, consulte Creación de una AMI de Windows personalizada y Búsqueda de una AMI.
Detener una operación de copia de una AMI pendiente
Puede detener la copia de una AMI pendiente con la AWS Management Console o la línea de comandos.
Copias entre regiones
El copiado de una AMI entre regiones geográficamente distribuidas proporciona los siguientes beneficios:
-
Implementación global coherente: al copiar una AMI de una región en otra, puede iniciar instancias coherentes basadas en la misma AMI en regiones diferentes.
-
Escalabilidad: puede diseñar y construir más fácilmente aplicaciones globales para satisfacer las necesidades de los usuarios, con independencia de su ubicación.
-
Desempeño: puede mejorar el desempeño distribuyendo la aplicación, así como localizando componentes fundamentales de esta más próximos a los usuarios. También puede aprovechar las características específicas para cada región, como tipos de instancia u otros servicios de AWS.
-
Alta disponibilidad: puede diseñar e implementar aplicaciones entre regiones de AWS para aumentar la disponibilidad.
En el siguiente diagrama, se muestra la relación entre una AMI de origen y dos AMI copiadas en diferentes regiones, además de las instancias de EC2 iniciadas desde cada una de ellas. Al iniciar una instancia desde una AMI, esta reside en la misma región en la que reside la AMI. Si realiza cambios en la AMI de origen y desea que estos se reflejen en las imágenes de tipo AMIs de las regiones de destino, debe volver a copiar la AMI de origen en las regiones de destino.
Al copiar por primera vez una AMI con respaldo en el almacén de instancias en una región, se crea un bucket de Amazon S3 para las imágenes de tipo AMIs copiadas en dicha región. Todas las imágenes de tipo AMIs con respaldo en el almacén de instancias que copie en esa región se almacenan en dicho bucket. Los nombres de los buckets tienen el siguiente formato: amis-for-cuenta
-in-región
-hash
. Por ejemplo: amis-for-123456789012-in-us-east-2-yhjmxvp6
.
Requisito previo
Antes de copiar una AMI, debe asegurarse de que el contenido de la AMI de origen esté actualizado para poder ser ejecutado en una región diferente. Por ejemplo, deberá actualizar las cadenas de conexión de la base de datos o cualquier otro dato de configuración de la aplicación para que se asocien a los recursos adecuados. De lo contrario, es posible que las instancias iniciadas desde la AMI nueva en la región de destino aún usen los recursos de la región de origen, lo cual puede afectar al rendimiento y al costo.
Limitaciones
-
Las regiones de destino se limitan a 100 copias de AMI simultáneas.
Copias entre cuentas
Puede compartir una AMI con otra cuenta de AWS. Compartir una AMI no afecta a la propiedad de dicha AMI. Los cargos de almacenamiento en la región se cobran a la cuenta propietaria. Para obtener más información, consulte Compartir una AMI con cuentas de AWS específicas.
Si copia una AMI que se ha compartido en su cuenta, será el propietario de la AMI de destino en su cuenta. Al propietario de la AMI de origen se le cobrarán las tarifas de transferencia estándar de Amazon EBS o Amazon S3 y a usted se le cobrará por el almacenamiento de la AMI de destino en la región de destino.
Permisos de recursos
Para copiar una AMI compartida con usted desde otra cuenta, el propietario de la AMI de origen debe concederle permisos de lectura para el almacenamiento que respalda a esta AMI. El almacenamiento es la instantánea de EBS asociada (para una AMI basada en Amazon EBS) o un bucket de S3 asociado (para una AMI basada en un almacén de instancias). Si la AMI compartida tiene instantáneas cifradas, el propietario también debe compartir la clave o claves con usted. Para obtener más información sobre la concesión de permisos de recursos, para las snapshots de EBS, consulte Compartir una instantánea de Amazon EBS en la Guía del usuario de Amazon EBS, y para los buckets de S3, consulte Identity and Access Management en Amazon S3 en la Guía del usuario de Amazon Simple Storage Service.
nota
Para copiar una AMI con sus etiquetas, debe tener permisos de inicialización para la AMI de origen.
Cifrado y copias
En la siguiente tabla se muestra la compatibilidad con cifrado para diversos escenarios de copia de AMI. Si bien es posible copiar una instantánea sin cifrar para obtener una instantánea cifrada, no se puede copiar una instantánea cifrada para obtener una sin cifrar.
Escenario | Descripción | Soportado |
---|---|---|
1 | De una sin cifrar a otra sin cifrar | Sí |
2 | De una cifrada a otra cifrada | Sí |
3 | De una sin cifrar a otra cifrada | Sí |
4 | De una cifrada a otra sin cifrar | No |
nota
El cifrado durante la acción CopyImage
solo se aplica a las imágenes de tipo AMIs con respaldo Amazon EBS. Puesto que una AMI con respaldo en el almacén de instancias no se basa en instantáneas, no puede usar la copia para cambiar su estado de cifrado.
De forma predeterminada (es decir, sin especificar los parámetros de cifrado), la instantánea respaldada de una AMI se copia con su estado de cifrado original. Al copiar una AMI respaldada por una instantánea sin cifrar se obtiene una instantánea de destino idéntica que tampoco está cifrada. Si la AMI de origen está respaldada por una instantánea cifrada, cuando se copia se obtiene una instantánea de destino idéntica que se cifra con la misma clave de AWS KMS. Al copiar una AMI respaldada por varias instantáneas, de forma predeterminada, se conserva el estado de cifrado de origen en cada una de las instantáneas de destino.
Si especifica los parámetros de cifrado mientras copia una AMI, puede cifrar o volver a cifrar sus instantáneas respaldadas. El siguiente ejemplo muestra un caso no predeterminado que aporta parámetros de cifrado a la acción CopyImage
para cambiar el estado de cifrado de la AMI del objetivo.
Copia de una AMI de origen sin cifrar en una AMI de destino cifrada
En este caso, una AMI respaldada por una instantánea raíz no cifrada se copia en una AMI con una instantánea raíz cifrada. La acción CopyImage
se invoca con dos parámetros de cifrado, incluida una clave administrada por el cliente. Como resultado, el estado de cifrado de la instantánea raíz cambia, de modo que la AMI de destino se respalda por una instantánea raíz que contiene los mismos datos que la instantánea de origen, pero cifrada con la clave especificada. Usted incurre en costos de almacenamiento de las instantáneas en ambas AMI, así como en cargos correspondientes a las instancias que lance desde cualquiera de las AMI.
nota
Habilitar el cifrado de forma predeterminada tiene el mismo efecto que configurar el parámetro Encrypted
en true
para todas las instantáneas de la AMI.
La configuración del parámetro Encrypted
cifra la única instantánea para esta instancia. Si no especifica el parámetro KmsKeyId
, la clave predeterminada administrada por el cliente se utiliza para cifrar la copia de la instantánea.
Para obtener más información acerca de la copia de AMIs con instantáneas cifradas, consulte Usar el cifrado con las AMI con respaldo de EBS.