Utilice una imagen de máquina para almacenar toda la configuración, metadatos, permisos y datos de uno o más discos para una instancia de VM que se ejecuta en Compute Engine. Para obtener información sobre cuándo y cómo utilizar imágenes de máquina, consulte Imágenes de máquina .
Este documento describe los pasos para importar una imagen de máquina desde un dispositivo virtual .
Antes de comenzar
- Si el proyecto en el que desea importar la imagen de la máquina tiene definida una política de imagen confiable , agregue
projects/compute-image-import
yprojects/compute-image-tools
a la lista permitida de editores. - Si está importando un dispositivo virtual desde un proyecto diferente, consulte Importación entre proyectos .
- Revise los requisitos de archivos OVF y VM de origen en la guía de Importación de dispositivos virtuales de Compute Engine.
- Para saber cómo cumplir con los requisitos antes de importar imágenes de máquinas, consulte Requisitos previos para importar y exportar imágenes de máquinas virtuales .
- Si aún no lo has hecho, configura la autenticación. La autenticación es el proceso mediante el cual se verifica su identidad para acceder a Google Cloud servicios y API. Para ejecutar código o muestras 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:
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
- Puede compartir una imagen de máquina entre proyectos. Sin embargo, no se admiten redes de VPC compartidas .
- Esta característica no es compatible con proyectos protegidos con controles de servicio de VPC .
- No se pueden crear imágenes de máquina a partir de máquinas virtuales de origen que tengan más de 200 TB de discos conectados.
-
MACHINE_IMAGE_NAME
: nombre de la imagen de la máquina que desea importar. -
SOURCE_URI
: ruta a su archivo OVA u OVF en Cloud Storage. -
OS
: sistema operativo del archivo OVA. Esta bandera es opcional de forma predeterminada, pero puede ser necesaria en algunos casos. Le recomendamos que proporcione esta bandera. Cargue el dispositivo virtual en Cloud Storage .
Envíe una solicitud
POST
al métodoprojects.builds.create
.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout": "7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Reemplace lo siguiente:
-
PROJECT_ID
: ID del proyecto al que desea importar el archivo OVA. -
MACHINE_IMAGE_NAME
: nombre de la imagen de la máquina a importar. Por ejemplo,my-machine-image
. -
SOURCE_URI
: URI para el archivo OVA o un directorio que contiene paquetes OVF almacenados en Cloud Storage. Por ejemplo,gs://my-bucket/my-instance.ova
. -
OS
: sistema operativo del archivo OVA. Por ejemplo,ubuntu-1604
. Esta bandera es opcional de forma predeterminada, pero puede ser necesaria en algunos casos. Le recomendamos que proporcione esta bandera.
Para conocer valores
args
adicionales que se pueden proporcionar, consulta la sección de indicadores opcionales de la página de GitHub de importación de OVF de Compute Engine .-
- Sistema operativo:
Ubuntu 1404
- CPU:
2 CPUs
- Memoria:
2048 MB
- Sistema operativo:
Ubuntu 1404
- CPU:
2 CPUs
- Memoria:
2048 MB
- Sistema operativo:
Ubuntu 1404
- Red:
custom-vpc-network
- Subred:
company-vpc-us-east1-c
- Zona:
us-east1-c
- Sistema operativo:
Ubuntu 1404
- Red:
custom-vpc-network
- Subred:
company-vpc-us-east1-c
- Zona:
us-central1-c
Agregue el dispositivo virtual a Cloud Storage .
El proceso de importación requiere que los administradores de paquetes estén instalados en el sistema operativo para la imagen de la máquina. Es posible que estos administradores de paquetes necesiten realizar solicitudes a repositorios de paquetes que están fuera Google Cloud. Para permitir el acceso a estas actualizaciones, debe configurar Cloud NAT. Para obtener más información, consulte Crear una configuración NAT mediante Cloud Router .
Configurar el acceso privado a Google . Para obtener más información, consulte Configuración del acceso privado a Google .
Importe la imagen de la máquina utilizando la CLI de Google Cloud o la API de Cloud Build.
Cuando importa una imagen de máquina desde un dispositivo virtual, se crean máquinas virtuales temporales en su proyecto. Para garantizar que a estas máquinas virtuales temporales no se les asignen direcciones IP externas, debe especificar un indicador o argumento adicional.
Para obtener más información sobre el indicador o argumento requerido, haga clic en las siguientes pestañas:
-
MACHINE_IMAGE_NAME
: nombre de la imagen de la máquina que desea importar. -
SOURCE_URI
: URI para su archivo OVA u OVF en Cloud Storage. Por ejemplo,gs://my-bucket/Ubuntu.ova
. -
OS
: sistema operativo del archivo OVA. Esta bandera es opcional de forma predeterminada, pero puede ser necesaria en algunos casos. Le recomendamos que proporcione esta bandera. Para obtener una lista de los valores admitidos, consulta las opciones de marca--os
para el comandogcloud compute machine-images import
. -
ZONE
: la zona en la que importar la imagen de la máquina. Si se deja en blanco, se utiliza la zona predeterminada para el proyecto. -
PROJECT_ID
: el ID del proyecto al que desea importar la imagen de la máquina. -
MACHINE_IMAGE_NAME
: el nombre de la imagen de la máquina que se importará. Por ejemplo,my-machine-image
. -
SOURCE_URI
: el URI del archivo OVA almacenado en Cloud Storage. Por ejemplo,gs://my-bucket/my-machine.ova
. -
OS
: el sistema operativo del archivo OVA. Por ejemplo,ubuntu-1604
. Esta bandera es opcional de forma predeterminada, pero puede ser necesaria en algunos casos. Le recomendamos que proporcione esta bandera. Para obtener una lista de valores admitidos, consulta las opciones de marca--os
para el comandogcloud compute instances import
. -
ZONE
: la zona en la que importar la imagen de la máquina. Agregue el dispositivo virtual a Cloud Storage .
Cree una cuenta de servicio y asigne los roles mínimos. Para obtener más información sobre la creación de cuentas de servicio, consulte Creación y administración de cuentas de servicio .
Como mínimo, la cuenta de servicio de Compute Engine especificada debe tener asignadas las siguientes funciones:
-
roles/compute.storageAdmin
-
roles/storage.objectViewer
Estos roles mínimos son necesarios para la cuenta de servicio especificada para la marca
--compute-service-account
. Para obtener más información, consulta Otorgar roles requeridos a la cuenta de servicio de Compute Engine .-
Usa el comando
gcloud compute machine-images import
para importar una imagen de máquina desde dispositivos virtuales.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=gs:SOURCE_URI \ --os=OS \ --compute-service-account=TEMP_SERVICE_ACCOUNT_EMAIL \ --service-account=SERVICE_ACCOUNT_EMAIL \ --scopes=SCOPES
Reemplace lo siguiente:
-
MACHINE_IMAGE_NAME
: nombre de la imagen de la máquina que desea importar. -
SOURCE_URI
: ruta a su archivo OVA u OVF en Cloud Storage. -
OS
: sistema operativo del archivo OVA. Esta bandera es opcional de forma predeterminada, pero puede ser necesaria en algunos casos. Le recomendamos que proporcione esta bandera. -
TEMP_SERVICE_ACCOUNT_EMAIL
: la dirección de correo electrónico asociada con la cuenta de servicio personalizada creada en el paso anterior. Esta cuenta de servicio la utilizan las máquinas virtuales temporales. Si no se especifica, la VM usa la cuenta de servicio predeterminada de Compute Engine. -
SERVICE_ACCOUNT_EMAIL
: la dirección de correo electrónico asociada con la cuenta de servicio personalizada que se adjuntará a cualquier VM creada a partir de esta imagen de máquina. No hay restricciones de permisos para esta cuenta de servicio; puede personalizar esta cuenta de servicio según sea necesario. Si no se especifica, la cuenta de servicio predeterminada de Compute Engine se adjunta a la VM. -
SCOPES
: especifique el nivel de acceso para la opción--service-account
. Si no se especifica, se utilizan los ámbitos predeterminados. Para obtener más información, revise la marca--scopes
.
-
Agregue el dispositivo virtual a Cloud Storage .
Cree una cuenta de servicio y asigne los roles mínimos. Para obtener más información sobre la creación de cuentas de servicio, consulte Crear cuentas de servicio .
Como mínimo, la cuenta de servicio de Compute Engine especificada debe tener asignadas las siguientes funciones:
-
roles/compute.storageAdmin
-
roles/storage.objectViewer
Estos roles mínimos son necesarios para la cuenta de servicio especificada para el argumento
-compute-service-account
. Para obtener más información, consulta Otorgar roles requeridos a la cuenta de servicio de Compute Engine .-
Envíe una solicitud
POST
al métodoprojects.builds.create
mediante la API de Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-zone=ZONE", "-compute-service-account=TEMP_SERVICE_ACCOUNT_EMAIL", "-service-account=SERVICE_ACCOUNT_EMAIL", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Reemplace lo siguiente:
-
PROJECT_ID
: el ID del proyecto al que desea importar la imagen de la máquina. -
MACHINE_IMAGE_NAME
: el nombre de la imagen de la máquina que se importará. Por ejemplo,my-machine-image
. -
SOURCE_URI
: el URI del archivo OVA almacenado en Cloud Storage. Por ejemplo,gs://my-bucket/my-machine.ova
. -
OS
: el sistema operativo del archivo OVA. Por ejemplo,ubuntu-1604
. Esta bandera es opcional de forma predeterminada, pero puede ser necesaria en algunos casos. Le recomendamos que proporcione esta bandera. Para obtener una lista de valores admitidos, consulta las opciones de marca--os
para el comandogcloud compute instances import
. -
ZONE
: la zona en la que importar la imagen de la máquina. -
TEMP_SERVICE_ACCOUNT_EMAIL
: la dirección de correo electrónico asociada con la cuenta de servicio personalizada creada en el paso anterior. Esta cuenta de servicio la utilizan las máquinas virtuales temporales. Si no se especifica, la VM usa la cuenta de servicio predeterminada de Compute Engine. -
SERVICE_ACCOUNT_EMAIL
: la dirección de correo electrónico asociada con la cuenta de servicio personalizada que se adjuntará a cualquier VM creada a partir de esta imagen de máquina. No hay restricciones de permisos para esta cuenta de servicio; puede personalizar esta cuenta de servicio según sea necesario. Si no se especifica, la cuenta de servicio predeterminada de Compute Engine se adjunta a la VM. -
SCOPES
: especifique el nivel de acceso para la opción--service-account
. Si no se especifica, se utilizan los ámbitos predeterminados. Para obtener más información, revise la marca--scopes
.
-
- Más información sobre las imágenes de máquinas
- Cree instancias de VM a partir de imágenes de máquinas
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.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud .
Limitaciones y restricciones
Sistemas operativos compatibles
Para obtener compatibilidad con el sistema operativo, consulte Detalles del sistema operativo .
Importar imágenes de máquinas
Puede importar imágenes de máquinas desde dispositivos virtuales mediante la CLI de Google Cloud o la API de Cloud Build .
nube de gcloud
Usa el comando
gcloud compute machine-images import
para importar una imagen de máquina desde dispositivos virtuales.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=gs:SOURCE_URI \ --os=OS
Reemplace lo siguiente:
Ejemplo
Por ejemplo, puedes usar el siguiente comando
gcloud
para importar una imagen de máquina llamadamy-machine-image
desde un archivo OVA de origen llamadomy-ova
que está almacenado en el directoriogs://my-bucket
y ejecutacentos-7
:gcloud compute machine-images import my-machine-image \ --source-uri=gs://my-bucket/my-ova/ \ --os=centos-7
DESCANSAR
Importar imágenes de máquinas con anulaciones de OVF
Cuando importa una imagen de máquina desde un dispositivo virtual, puede anular la configuración en el archivo OVF. Por ejemplo, puede cambiar la configuración de la CPU o la memoria, o puede utilizar una red personalizada.
CPU y memoria personalizadas
Para anular la configuración de CPU o memoria especificada en el archivo OVF, complete los siguientes pasos:
nube de gcloud
Para anular la configuración de CPU o memoria especificada en el archivo OVF, siga los pasos de la CLI de Google Cloud para importar una imagen de máquina y especificar los indicadores
--custom-cpu
y--custom-memory
.Ejemplo
Una imagen de máquina llamada
my-machine-image
tiene las siguientes anulaciones aplicadas a la configuración del archivo OVF:Para importar
my-machine-image
con estas anulaciones, ejecute el siguiente comando:gcloud compute machine-images import my-machine-image \ --os=ubuntu-1404 --source-uri=gs://my-bucket/Ubuntu.ova \ --custom-cpu=2 --custom-memory=2048MB
DESCANSAR
Para anular la configuración de CPU o memoria especificada en el archivo OVF, sigue los pasos de la API de Compute Engine para importar una imagen de máquina y especificar el argumento
-machine-type
. Este-machine-type
representa un tipo de máquina personalizada predefinida o de la serie N1 que se utilizará.Ejemplo
Una imagen de máquina llamada
my-machine-image
en el proyectomy-project
tiene las siguientes anulaciones aplicadas a la configuración en el archivo OVF:Para importar
my-machine-image
con estas anulaciones, realice la siguiente solicitud a la API de Cloud Build.POST https://cloudbuild.googleapis.com/v1/projects/my-project/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=my-machine-image", "-ovf-gcs-path=gs://my-bucket/Ubuntu.ova", "-os=ubuntu-1404", "-machine-type=custom-2-2048", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Redes personalizadas
Para anular la configuración de red especificada en el archivo OVF, complete los siguientes pasos:
nube de gcloud
Para configurar una red personalizada, siga los pasos de la CLI de Google Cloud para importar una imagen de máquina y especificar una marca
--network
. Si la red está configurada con un modo de subred personalizado, también debe especificar los indicadores--subnet
y--zone
.Ejemplo
Una imagen de máquina llamada
my-machine-image
tiene las siguientes anulaciones aplicadas a la configuración del archivo OVF:Para importar
my-machine-image
con estas anulaciones, ejecute el siguiente comando de ejemplo:gcloud compute machine-images import my-machine-image \ --os=ubuntu-1404 \ --source-uri=gs://my-bucket/Ubuntu.ova \ --network=custom-vpc-network \ --subnet=company-vpc-us-east1-c \ --zone=us-east1-c
DESCANSAR
Para utilizar una red personalizada, siga los pasos REST para importar una imagen de máquina y especificar un argumento
-network
. Si la red está configurada con un modo de subred personalizado, también debe especificar los argumentos-subnet
y-zone
.Ejemplo
Una imagen de máquina llamada
my-machine-image
tiene las siguientes anulaciones aplicadas a la configuración del archivo OVF:Para importar
my-machine-image
con estas anulaciones, realice la siguiente solicitud a la API de Compute Engine.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=my-machine-image", "-ovf-gcs-path=gs://my-bucket/Ubuntu.ova", "-os=ubuntu-1404", "-zone=us-central1-c", "-network=custom-vpc-network", "-subnet=company-vpc-us-east1-c", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUsILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Reemplace
PROJECT_ID
con su ID de proyecto.Importar una imagen de máquina dentro de una red que no permite IP externa
Para importar una imagen de máquina usando una red que no permite direcciones IP externas, complete los siguientes pasos:
nube de gcloud
Usa el comando
gcloud compute machine-images import
con la marca--no-address
.gcloud compute machine-images import MACHINE_IMAGE_NAME \ --source-uri=SOURCE_URI \ --os=OS \ --zone=ZONE \ --no-address
Reemplace lo siguiente:
DESCANSAR
Envíe una solicitud
POST
al métodoprojects.builds.create
mediante la API de Cloud Build . Especifique el argumento-no-external-ip
.POST https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/builds { "timeout":"7200s", "steps":[ { "args":[ "-machine-image-name=MACHINE_IMAGE_NAME", "-ovf-gcs-path=SOURCE_URI", "-os=OS", "-zone=ZONE", "-no-external-ip", "-client-id=api", "-timeout=7000s" ], "name":"gcr.io/compute-image-tools/gce_ovf_import:release", "env":[ "BUILD_ID=$BUILD_ID" ] } ], "tags":"gce-ovf-machine-image-import" }
Reemplace lo siguiente:
Importar una imagen de máquina usando cuentas de servicio personalizadas
Durante la importación de una imagen de máquina, se crean instancias temporales de máquina virtual (VM) en su proyecto. La herramienta de importación en estas máquinas virtuales temporales debe estar autenticada.
Una cuenta de servicio es una identidad adjunta a una máquina virtual. Se puede acceder a los tokens de acceso a la cuenta de servicio a través del servidor de metadatos de la VM y usarlos para autenticar la herramienta de importación en la VM.
De forma predeterminada, el proceso de importación utiliza la cuenta de servicio predeterminada de Compute Engine . Sin embargo, si la cuenta de servicio predeterminada de Compute Engine está deshabilitada en su proyecto o si desea utilizar una cuenta de servicio de Compute Engine personalizada, deberá crear una cuenta de servicio y especificarla para el proceso de importación.
nube de gcloud
DESCANSAR
¿Qué sigue?
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-04-17 (UTC).
-