Usa una imagen de máquina para almacenar toda la configuración, los metadatos, los permisos y los datos de varios discos para una instancia de Compute Engine. La instancia 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 comenzar
-
Si aún no lo hiciste, configura la autenticación.
La autenticación verifica tu identidad para acceder a los servicios y las APIs de Google Cloud . Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
Selecciona la pestaña que corresponda a la forma en que planeas usar las muestras de esta página:
Console
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. Después de la instalación, inicializa Google Cloud CLI con el siguiente comando:
gcloud initSi usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.
-
- Configura una región y una zona predeterminadas.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala Google Cloud CLI.
Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de Google Cloud .
Limitaciones y restricciones
- Puedes crear una imagen de máquina de una instancia específica como máximo 6 veces cada 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 volúmenes de Hyperdisk conectados
- Usa el tipo de máquina Z3, excepto
z3-highmem-192-highlssd-metal. - Usa un tipo de máquina C3D, H3 o A3.
En el caso de las instancias que no admiten la creación de imágenes de máquina, puedes crear una imagen de SO a partir del disco de arranque de la instancia, como se describe en Crea imágenes personalizadas.
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 o instancias a partir de imágenes de máquina, las siguientes propiedades de instancia y disco no se conservan ni se restablecen:
disks.architecturedisks.descriptiondisks.labelsdisks.lockeddisks.multiWriterdisks.onUpdateActiondisks.provisionedIopsdisks.shieldedInstanceInitialStatedisks.sourceImagedisks.sourceImageEncryptionKeydisks.sourceInstantSnapshotdisks.sourceSnapshotdisks.sourceSnapshotEncryptionKeyprivateIpv6GoogleAccessresourceManagerTagsresourcePoliciessecure_tagshieldedInstanceConfig
Crea una imagen de máquina a partir de una instancia
Puedes crear imágenes de máquina con la consola deGoogle 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 origen
- La zona en la que se encuentra la instancia de origen
- Una descripción opcional
- Una
storageLocationopcional. Si no especificas una ubicación, la ubicación de almacenamiento predeterminada es la ubicación de Cloud Storage multirregional de la instancia de origen. - Una clave de encriptación opcional. Puedes elegir entre una clave de Google-owned and Google-managed encryption key, 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 con una Google-owned and Google-managed encryption key.
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
GCESysprepa 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).
Haz 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: nombre de la instancia 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-instanceen un proyecto llamadomyProject, las siguientes URL son válidas:https://www.googleapis.com/compute/v1/projects/myProject/global/instances/my-instanceprojects/myProject/global/instances/my-instanceglobal/instances/my-instance
Próximos pasos
- Obtén más información sobre las imágenes de máquina.
- Crea instancias a partir de imágenes de máquina