Usa una imagen de máquina para almacenar la configuración, los metadatos, los permisos y los datos de varios discos para una instancia de VM que se ejecuta en Compute Engine. La instancia de VM que usas para crear una imagen de máquina se denomina instancia de origen.
Para obtener información sobre cuándo y cómo usar las imágenes de máquina, consulta Imágenes de máquina.
En este documento, se describen los pasos para crear una imagen de máquina a partir de una instancia de origen.
Antes de empezar
-
Configura la autenticación si aún no lo hiciste.
La autenticación es el proceso mediante el cual se verifica tu identidad para acceder a los servicios y las API de Google Cloud.
Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine de la siguiente manera.
Selecciona la pestaña para saber cómo planeas usar las muestras en esta página:
Consola
Cuando usas la consola de Google Cloud para acceder a los servicios y las APIs de Google Cloud, no necesitas configurar la autenticación.
gcloud
-
Instala Google Cloud CLI y, luego, inicializa la ejecución del siguiente comando:
gcloud init
- Configura una región y una zona predeterminadas.
REST
Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.
Instala Google Cloud CLI y, luego, inicializa la ejecución del siguiente comando:
gcloud init
-
Limitaciones y restricciones
- Puedes compartir una imagen de máquina entre proyectos. Sin embargo, las redes de VPC compartidas no son compatibles.
- Puedes crear una imagen de máquina como máximo una vez cada 10 minutos. Si deseas generar una gran cantidad de solicitudes para crear varias imágenes de máquina a partir de una instancia, puedes emitir como máximo 6 solicitudes en 60 minutos.
- Para proteger una imagen de máquina, puedes usar Cloud Key Management Service (Cloud KMS) o una clave de encriptación proporcionada por el cliente (CSEK). La clave de encriptación protege el contenido de los discos. Sin embargo, los metadatos no están protegidos.
- Si usas una CSEK para proteger tu imagen de máquina, se almacenará una copia completa de todos los datos del disco durante la generación de la imagen de máquina. En todas las demás situaciones, los datos del disco se almacenan en las copias diferenciales.
No puedes crear imágenes de máquina a partir de VMs de origen que:
- Tengan más de 200 TB de discos conectados
- No tengan ningún disco conectado
- Tengan cualquier disco Hyperdisk Extreme conectado
Las propiedades de instancias y discos no son compatibles con la imagen de máquina
Cuando creas imágenes de máquina a partir de instancias de VM o instancias de VM a partir de imágenes de máquina, las siguientes propiedades de instancia y el disco no se conservan ni se restablecen:
disks.architecture
disks.description
disks.labels
disks.locked
disks.multiWriter
disks.onUpdateAction
disks.provisionedIops
disks.shieldedInstanceInitialState
disks.sourceImage
disks.sourceImageEncryptionKey
disks.sourceInstantSnapshot
disks.sourceSnapshot
disks.sourceSnapshotEncryptionKey
privateIpv6GoogleAccess
resourceManagerTags
resourcePolicies
secure_tag
shieldedInstanceConfig
Crea una imagen de máquina a partir de una VM
Puedes crear imágenes de máquina mediante la consola de Google Cloud, Google Cloud CLI o REST.
Para crear una imagen de máquina, necesitas la siguiente información:
- Un nombre para la imagen de máquina que deseas crear
- El nombre de la instancia de VM de origen.
- La zona en la que se encuentra la instancia de VM de origen.
- Una descripción opcional
- Una
storageLocation
opcional. Si no especificas una ubicación, la ubicación de almacenamiento predeterminada es la ubicación de Cloud Storage multirregional de la instancia de VM de origen. - Una clave de encriptación opcional. Puedes elegir entre una clave administrada por Google, una clave de Cloud Key Management Service (Cloud KMS) o una clave de encriptación proporcionada por el cliente (CSEK). Si no se especifica una clave de encriptación, las imágenes de máquina se encriptarán mediante una clave administrada por Google
Si deseas usar una imagen de máquina para crear instantáneas de instancias y clonarlas, quita la información del SO y de la app que sea exclusiva antes de generar la imagen de máquina a partir de una instancia. Por ejemplo, en instancias de VM de Windows, usa
GCESysprep
a fin de preparar el sistema para la replicación.
Console
En la consola de Google Cloud, ve a la página Imágenes de máquina.
Haz clic en Crear imagen de máquina.
Especifica un Nombre para tu imagen de máquina.
Proporciona una Descripción (opcional).
Selecciona la instancia de VM de origen.
Especifica la ubicación en la que se almacenará la imagen de máquina (opcional). Elige entre almacenamiento multirregional o regional. Para obtener más información sobre la ubicación, consulta Ubicación de almacenamiento de imágenes de máquina.
Selecciona un método de Encriptación (opcional).
Haga clic en Crear.
gcloud
Usa el comando gcloud compute machine-images create
para crear una imagen de máquina a partir de una instancia.
gcloud compute machine-images create MACHINE_IMAGE_NAME \ --source-instance=SOURCE_VM_NAME
Reemplaza lo siguiente:
MACHINE_IMAGE_NAME
: Es el nombre de la imagen de máquina que deseas crear.SOURCE_VM_NAME
: Es el nombre de la instancia de VM de origen desde la que deseas crear la imagen.
Ejemplo
Por ejemplo, puedes usar el siguiente comando de gcloud
para crear una imagen de máquina llamada my-machine-image
desde una instancia de origen llamada my-instance
:
gcloud compute machine-images create my-machine-image \ --source-instance=my-instance
El proceso toma unos minutos. Cuando se crea la imagen de máquina, obtienes un resultado similar al siguiente:
Created [https://www.googleapis.com/compute/v1/projects/project-12345/global/machineImages/my-machine-image]. NAME STATUS my-machine-image READY
REST
En la API, realiza una solicitud POST
al método machineimages.insert
. En el cuerpo de la solicitud, incluye la siguiente solicitud POST
:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/machineImages { "name": "MACHINE_IMAGE_NAME", "sourceInstance": "SOURCE_INSTANCE_URL" }
Reemplaza lo siguiente:
PROJECT_ID
: ID del proyectoMACHINE_IMAGE_NAME
: Es el nombre de la imagen de máquina que deseas crear.SOURCE_INSTANCE_URL
: Es la URL parcial o completa de la instancia de origen que deseas usar para crear la imagen de máquina. Por ejemplo, si tienes una instancia de origen llamadamy-instance
en un proyecto llamadomyProject
, las siguientes URL son válidas:https://www.googleapis.com/compute/v1/projects/myProject/global/instances/my-instance
projects/myProject/global/instances/my-instance
global/instances/my-instance
Próximos pasos
- Obtén más información sobre las imágenes de máquina
- Crea instancias de VM a partir de imágenes de máquina