En este documento se explica cómo crear una instancia de Compute Engine a partir de una imagen personalizada que solo existe en tu proyecto. Una instancia contiene un gestor de arranque, un sistema de archivos de arranque y una imagen del SO. Puedes crear imágenes personalizadas a partir de discos, imágenes o snapshots de origen, o bien a partir de imágenes almacenadas en Cloud Storage, y usar estas imágenes para crear instancias. De forma predeterminada, una imagen personalizada solo pertenece al proyecto en el que se ha creado.
Antes de empezar
- Cuando se crean instancias a partir de imágenes mediante la CLI de Google Cloud o la API de Compute Engine, hay un límite de 20 instancias por segundo. Si necesitas crear un número mayor de instancias por segundo, solicita un ajuste de cuota para el recurso Imágenes.
-
Si aún no lo has hecho, configura la autenticación.
La autenticación verifica tu identidad para acceder a Google Cloud servicios y APIs. Para ejecutar código o ejemplos desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
- Set a default region and zone.
REST
Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .
Roles obligatorios
Para obtener los permisos que necesitas para crear una instancia a partir de una imagen personalizada, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Administrador de instancias de Compute (v. 1) (
roles/compute.instanceAdmin.v1
) en el proyecto. Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.Este rol predefinido contiene los permisos necesarios para crear una instancia a partir de una imagen personalizada. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para crear una instancia a partir de una imagen personalizada, se necesitan los siguientes permisos:
-
compute.instances.create
del proyecto -
Para usar una imagen personalizada para crear la instancia, sigue estos pasos:
compute.images.useReadOnly
en la imagen
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
Crear una instancia a partir de una imagen personalizada
Si aún no tienes una imagen personalizada, primero debes crear una.
Para crear una instancia a partir de una imagen personalizada, sigue estos pasos:
Consola
En la Google Cloud consola, ve a la página Crear una instancia.
Si se te solicita, selecciona tu proyecto y haz clic en Continuar.
Aparecerá la página Crear una instancia y se mostrará el panel Configuración de la máquina.
En el panel Configuración de la máquina, haz lo siguiente:
- En el campo Nombre, especifica un nombre para la instancia. Para obtener más información, consulta el artículo Convenciones para asignar nombres de recursos.
Opcional: En el campo Zona, selecciona una zona para esta instancia.
La selección predeterminada es Cualquiera. Si no cambias esta selección predeterminada, Google elegirá automáticamente una zona en función del tipo de máquina y la disponibilidad.
Selecciona la familia de máquinas de tu instancia. La consola Google Cloud muestra las series de máquinas disponibles para la familia de máquinas que hayas seleccionado. Estas son las opciones de familia de máquinas disponibles:
- Uso general
- Optimizada para la computación
- Con memoria optimizada
- Almacenamiento optimizado
- GPUs
En la columna Serie, selecciona la serie de máquinas de tu instancia.
Si has seleccionado GPUs como familia de máquinas en el paso anterior, selecciona el tipo de GPU que quieras. La serie de máquinas se selecciona automáticamente para el tipo de GPU seleccionado.
En la sección Tipo de máquina, selecciona el tipo de máquina de tu instancia.
En el menú de navegación, haz clic en SO y almacenamiento. En el panel Sistema operativo y almacenamiento que aparece, configura el disco de arranque haciendo lo siguiente:
- Haz clic en Cambiar. Aparece el panel Disco de arranque y se muestra la pestaña Imágenes públicas.
- Haz clic en Imágenes personalizadas. Aparecerá la pestaña Imágenes personalizadas.
- Para seleccionar el proyecto de imagen, haz clic en Cambiar y, a continuación, selecciona el proyecto que contiene la imagen.
- En la lista Imagen, selecciona la imagen que quieras importar.
- En la lista Tipo de disco de arranque, selecciona el tipo de disco de arranque.
- En el campo Tamaño (GB), especifica el tamaño del disco de arranque.
- Opcional: En el caso de los discos de arranque Hyperdisk Balanced, especifica valores en los campos IOPS aprovisionadas y Rendimiento aprovisionado.
- Opcional: Para ver las opciones de configuración avanzada, despliega la sección Mostrar configuraciones avanzadas.
- Para confirmar las opciones del disco de arranque y volver al panel Sistema operativo y almacenamiento, haz clic en Seleccionar.
En el menú de navegación, haga clic en Redes. En el panel Redes que aparece, haz lo siguiente:
- Ve a la sección Cortafuegos.
Para permitir el tráfico HTTP o HTTPS a la instancia, selecciona Permitir el tráfico HTTP o Permitir el tráfico HTTPS.
Compute Engine añade una etiqueta de red a tu instancia y crea la regla de cortafuegos de entrada correspondiente que permite todo el tráfico entrante en
tcp:80
(HTTP) otcp:443
(HTTPS). La etiqueta de red asocia la regla de cortafuegos con la instancia. Para obtener más información, consulta el resumen de las reglas de cortafuegos en la documentación de Cloud Next Generation Firewall.
Opcional: Especifica otras opciones de configuración. Para obtener más información, consulta Opciones de configuración durante la creación de instancias.
Para crear e iniciar la instancia, haz clic en Crear.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Ejecuta el comando
gcloud compute instances create
para crear una instancia con una imagen personalizada:gcloud compute instances create VM_NAME \ --image-project IMAGE_PROJECT \ IMAGE_FLAG \ --subnet SUBNET
Haz los cambios siguientes:
VM_NAME
: el nombre de la VMIMAGE_PROJECT
: ID del proyecto Google Cloud que contiene la imagenIMAGE_FLAG
: especifica una de las siguientes opciones:- Usa la marca
--image IMAGE_NAME
para especificar una imagen personalizada.Por ejemplo,
--image my-debian-image-v2
. - Si has creado tus imágenes personalizadas
como parte de una familia de imágenes personalizadas,
usa la marca
--image-family IMAGE_FAMILY_NAME
para especificar esa familia de imágenes personalizadas.De esta forma, se crea la VM a partir de la imagen y la versión del SO más recientes y no obsoletas de tu familia de imágenes personalizadas. Por ejemplo, si especificas
--image-family my-debian-family
, Compute Engine crea una VM a partir de la imagen de SO más reciente de tu familia de imágenes personalizadasmy-debian-family
.
- Usa la marca
SUBNET
: si la subred y la instancia están en el mismo proyecto, sustituyeSUBNET
por el nombre de una subred que esté en la misma región que la instancia.
- En la consola de Google Cloud , ve a la página Instancias de VM.
- Haz clic en Crear instancia.
- Especifica los parámetros que quieras.
- En la parte superior o inferior de la página, haz clic en Código equivalente y, a continuación, en la pestaña Terraform para ver el código de Terraform.
PROJECT_ID
: ID del proyecto en el que se creará la VM.ZONE
: zona en la que se creará la VMMACHINE_TYPE_ZONE
: zona que contiene el tipo de máquina que se va a usar en la nueva VM.MACHINE_TYPE
: tipo de máquina, predefinido o personalizado, para la nueva VMVM_NAME
: nombre de la nueva VMIMAGE_PROJECT
: nombre del proyecto que contiene la imagen personalizadaIMAGE
: especifica una de las siguientes opciones:IMAGE
: nombre de la imagen personalizada. Por ejemplo,"sourceImage": "projects/my-project-1234/global/images/my-debian-image-v2"
.IMAGE_FAMILY
: si has creado tus imágenes personalizadas como parte de una familia de imágenes personalizadas, especifica esa familia de imágenes personalizadas.De esta forma, se crea la VM a partir de la imagen de SO no obsoleta más reciente de tu familia de imágenes personalizadas. Por ejemplo, si especificas
"sourceImage": "projects/my-project-1234/global/images/family/my-debian-family"
, Compute Engine crea una VM a partir de la versión más reciente de la imagen del SO de la familia de imágenes personalizadasmy-debian-family
.
NETWORK_NAME
: la red de VPC que quieres usar en la VM. Puedes especificardefault
para usar tu red predeterminada.ENABLE_SECURE_BOOT
: Opcional: Si has elegido una imagen que admite las funciones de VM blindada, Compute Engine habilita de forma predeterminada el módulo de plataforma segura virtual (vTPM) y la monitorización de la integridad. En Compute Engine, Arranque seguro no está habilitado de forma predeterminada.Si especificas
true
enenableSecureBoot
, Compute Engine crea una VM con las tres funciones de VM blindada habilitadas. Una vez que Compute Engine inicie tu VM, para modificar las opciones de VM blindada, debes detenerla.
Terraform
Para generar el código de Terraform, puedes usar el componente Código equivalente de la Google Cloud consola.Go
Antes de probar este ejemplo, sigue las Go instrucciones de configuración de la guía de inicio rápido de Compute Engine con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Go de Compute Engine.
Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Java
Antes de probar este ejemplo, sigue las Java instrucciones de configuración de la guía de inicio rápido de Compute Engine con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Java de Compute Engine.
Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Node.js
Antes de probar este ejemplo, sigue las Node.js instrucciones de configuración de la guía de inicio rápido de Compute Engine con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Node.js de Compute Engine.
Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Python
Antes de probar este ejemplo, sigue las Python instrucciones de configuración de la guía de inicio rápido de Compute Engine con bibliotecas de cliente. Para obtener más información, consulta la documentación de referencia de la API Python de Compute Engine.
Para autenticarte en Compute Engine, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
REST
El proceso para crear una instancia con una imagen personalizada en la API es el mismo que si crearas una instancia con una imagen disponible públicamente.
Para crear la instancia a partir de una imagen personalizada, usa el método
instances.insert
.POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }Haz los cambios siguientes:
Siguientes pasos
- Consulta más información sobre las imágenes personalizadas y cómo compartirlas.
- Consulta cómo comprobar el estado de una instancia para saber cuándo está lista para usarse.
- Consulta cómo conectarte a tu instancia.
A menos que se indique lo contrario, el contenido de esta página está sujeto a la licencia Reconocimiento 4.0 de Creative Commons y las muestras de código están sujetas a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio web de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-09-12 (UTC).
-