En este documento se describe cómo mover una instancia de máquina virtual (VM) entre zonas o regiones.
Antes de empezar
- Consulta la documentación sobre zonas.
-
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:
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.
Go
Para usar las Go muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
Java
Para usar las Java muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
Node.js
Para usar las Node.js muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
Python
Para usar las Python muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
Requisitos
En esta sección se indican los requisitos para mover una VM entre zonas y regiones:
Cuota de proyecto. Tu proyecto debe tener cuota suficiente para hacer lo siguiente:
- Crear nuevas capturas.
- Promueve las direcciones IP externas efímeras.
Crea nuevas VMs y discos en la región de destino.
Por ejemplo, si tienes tres discos conectados a la VM que quieres mover, necesitas suficiente cuota para crear tres capturas de disco persistente temporales y tres discos nuevos. Una vez que hayas creado los discos, puedes eliminar las capturas temporales.
Consulta la página Cuotas para asegurarte de que tienes suficiente cuota para los recursos anteriores. Para obtener más información, consulta Información sobre las cuotas.
Discos persistentes. Los discos persistentes conectados a la máquina virtual que quieres mover no están conectados a otras máquinas virtuales.
SSDs locales. Las unidades SSD locales están diseñadas para el almacenamiento temporal, y los datos de las unidades SSD locales no se conservan cuando se terminan las máquinas virtuales manualmente. Si necesitas conservar los datos de SSD local, replícalos con una opción de almacenamiento duradero, como los discos persistentes.
GPUs. Si tu VM incluye GPUs, comprueba que las GPUs que quieres usar estén disponibles en la zona de destino de la VM. Para ver una lista de las GPUs y las zonas en las que están disponibles, consulta el artículo GPUs en Compute Engine.
Subred. Si quieres mover tu VM entre regiones, como
us-west1-a
yasia-south1-b
, y tu VM pertenece a una subred, debes seleccionar una nueva subred para tu VM. Para obtener instrucciones sobre cómo crear subredes, consulta Añadir subredes.
Limitación
Si mueves una VM de una región a otra, no podrás conservar su dirección IP interna o externa efímera. Debes elegir una nueva dirección IP cuando recrees la máquina virtual.
Propiedades del recurso
Para mover una VM, debes apagarla, moverla a la zona o región de destino y, a continuación, reiniciarla. Después de mover la VM, actualice las referencias que tenga al recurso original, como las VMs o los grupos de destino que apunten a la VM anterior.
Durante el proceso, cambian algunas propiedades generadas por el servidor de tu VM y tus discos.
Propiedades que cambian en las máquinas virtuales
En la siguiente tabla se describen las propiedades que cambian en las VMs:
Nombre de la propiedad Cambios Dirección IP interna Normalmente, se asigna una nueva dirección IP interna, pero es posible que la VM conserve la dirección IP interna original. Dirección IP externa Si la máquina virtual se mueve entre zonas de la misma región, la dirección IP externa no cambia. De lo contrario, elige otra dirección IP externa para la instancia de VM. Plataforma de CPU En función de la plataforma de CPU disponible en la zona de destino, es posible que tu máquina virtual tenga una plataforma de CPU diferente después de moverla. Para ver una lista completa de las plataformas de CPU de cada zona, consulta Regiones y zonas disponibles. Red o subred Si tu VM pertenece a una subred y vas a moverla entre regiones, debes elegir una nueva subred para ella. Las VMs que se mueven entre zonas de la misma región conservan la misma subred. Propiedades que cambian en los discos
En la siguiente tabla se describen las propiedades que cambian en los discos:
Nombre de la propiedad Cambios Captura de origen La captura de origen del nuevo disco se define como la captura temporal que se crea durante el movimiento. ID de la captura de origen El ID de la captura de origen se asigna al ID de la captura temporal. Imagen de origen El campo de imagen de origen está vacío. ID de imagen El ID de imagen está vacío. Marca de tiempo de la última vez que se ha separado La última marca de tiempo independiente está vacía. Marca de tiempo de la última vez que se adjuntó La marca de tiempo del último adjunto cambia a la marca de tiempo en la que se adjuntó el nuevo disco a la nueva instancia. Cambio de propiedades de máquinas virtuales y discos
En la siguiente tabla se describen las propiedades que cambian tanto en las VMs como en los discos:
Nombre de la propiedad Cambios ID Se genera un nuevo ID de recurso. Marca de tiempo de creación Se genera una nueva marca de tiempo de creación. URLs de recursos de zona Todas las URLs de recursos de zona cambian para reflejar la zona de destino. En la siguiente lista se muestran las URLs de recursos que cambian: - URL del disco de origen de una VM
- URL del tipo de máquina de una VM
- URLs de autovinculación
- URLs de zona
- URLs de tipo de disco
- URLs de las VMs que aparecen en la lista
users[]
de un disco
Mover una VM entre zonas o regiones
Para mover una VM entre zonas o regiones, puedes hacer lo siguiente:
- Crea una imagen de máquina de tu VM de origen.
- Crea una VM a partir de la imagen de máquina en otra zona u otra región.
En los siguientes ejemplos se muestra cómo mover una VM entre zonas.
gcloud
En este ejemplo, se mueve una VM llamada
myinstance
que tiene dos discos persistentes llamadosmybootdisk
ymydatadisk
deeurope-west1-c
aus-west1-b
.Identifica los discos asociados a la VM que quieres mover:
gcloud compute instances describe myinstance --format="list(name,status,disks)"
En este ejemplo, se encuentran los dos discos asociados a la máquina virtual
myinstance
:- Un disco de arranque llamado
mybootdisk
- Un disco de datos llamado
mydatadisk
- Un disco de arranque llamado
Define el estado de eliminación automática de
mybootdisk
ymydatadisk
comofalse
para asegurarte de que los discos no se eliminen automáticamente cuando se elimine la VM.gcloud compute instances set-disk-auto-delete myinstance --zone europe-west1-c \ --disk mybootdisk --no-auto-delete
Si el estado se ha actualizado,
gcloud compute
devuelve la respuestaUpdated [...]
. Si el estado de eliminación automática ya se había definido como false,gcloud compute
devuelve lo siguiente:No change requested; skipping update for [myinstance].
(Opcional) Guarda los metadatos de tu VM.
Cuando eliminas una VM, también se eliminan sus metadatos. Puedes guardar esa información en un archivo independiente y, a continuación, volver a aplicar los metadatos de la VM a la nueva VM.
Describe los metadatos de tu VM de la siguiente manera:
gcloud compute instances describe myinstance --zone europe-west1-c
Guarda el contenido en un archivo independiente.
Crea copias de seguridad de tus datos mediante capturas de disco persistente.
Como medida de precaución, crea copias de seguridad de tus datos mientras los discos persistentes sigan conectados a la VM mediante capturas de disco persistente. Antes de hacer una captura, asegúrate de que sea coherente con el estado del disco persistente siguiendo las prácticas recomendadas para las capturas.
Después de borrar los búferes de disco, crea las capturas:
gcloud compute disks snapshot mybootdisk mydatadisk \ --snapshot-names backup-mybootsnapshot,backup-mydatasnapshot \ --zone europe-west1-c
Para verificar que se ha creado la instantánea, ejecuta
gcloud compute snapshots list
.Opcional: Si vas a mover una VM entre zonas de la misma región y quieres conservar su dirección IP interna o externa efímera, convierte la dirección IP interna o externa en una dirección IP estática, que podrás reutilizar más adelante.
Elimina tu VM.
Al eliminar una VM, se apaga correctamente y se desconectan los discos persistentes.
gcloud compute instances delete myinstance --zone europe-west1-c
gcloud
te pedirá que confirmes la eliminación:The following VMs are deleted. Any attached disks configured to be auto-deleted are deleted unless they are attached to any other VMs or the `--keep-disks` flag is given and specifies them for keeping. Deleting a disk is irreversible and any data on the disk is lost. — [myinstance] in [europe-west1-c]
Do you want to continue (Y/n)?
Como has desactivado el estado de eliminación automática de los discos anteriormente en este proceso, introduce Y para continuar e ignora la advertencia.
A continuación, crea otra instantánea del disco de arranque y del disco de datos.
gcloud compute disks snapshot mybootdisk mydatadisk \ --snapshot-names mybootsnapshot,mydatasnapshot \ --zone europe-west1-c
Created [.../mydatasnapshot]. Created [.../mybootsnapshot].
(Opcional) Elimina tus discos persistentes.
Si tienes previsto reutilizar los nombres de los discos persistentes en los nuevos discos, debes eliminar los discos actuales para liberar los nombres. Si eliminas los discos, también ahorrarás en costes de almacenamiento de discos persistentes.
Si no tienes previsto reutilizar los mismos nombres de disco, no es necesario que los elimines.
gcloud compute disks delete mybootdisk mydatadisk --zone europe-west1-c
Crea discos persistentes en
us-west1-b
a partir de las capturas que hayas creado. Primero, crea el disco de arranque.gcloud compute disks create mybootdiskb --source-snapshot mybootsnapshot \ --zone us-west1-b
Created [.../mybootdiskb]. NAME ZONE SIZE_GB TYPE STATUS mybootdiskb us-west1-b 100 pd-standard READY
A continuación, crea el disco de datos.
gcloud compute disks create mydatadiskb --source-snapshot mydatasnapshot \ --zone us-west1-b
Created [.../mydatadiskb]. NAME ZONE SIZE_GB TYPE STATUS mydatadiskb us-west1-b 4000 pd-standard READY
Vuelve a crear la VM en
us-west1-b
.Si has decidido guardar los metadatos de tu máquina virtual en un archivo, por ejemplo,
myinstance.describe
, puedes usarlo para definir los mismos metadatos en tu máquina virtual.Si tu máquina virtual tenía una dirección IP externa estática, puedes reasignarla a la nueva máquina virtual especificando la opción
--address [ADDRESS]
. Si vas a mover una VM entre regiones, debes elegir una dirección IP externa diferente para la nueva instancia de VM.Si tu máquina virtual tenía una dirección IP interna estática, puedes reasignarla a la nueva máquina virtual especificando la opción
--private-network-ip ADDRESS
. Si vas a mover una VM entre regiones, debes elegir otra dirección IP interna para la nueva instancia de VM.Si tu máquina virtual incluía GPUs, añádelas a la máquina virtual mediante la opción
--accelerator
.Si la VM usa una subred específica, añade la marca
--subnet [SUBNET_NAME]
.
Para ver una lista completa de las marcas adicionales, consulta gcloud compute instances create.
gcloud compute instances create myinstanceb --machine-type n1-standard-4 \ --zone us-west1-b \ --disk name=mybootdiskb,boot=yes,mode=rw \ --disk name=mydatadiskb,mode=rw
Created [.../myinstanceb]. NAME ZONE MACHINE_TYPE INTERNAL_IP EXTERNAL_IP STATUS myinstanceb us-west1-b n1-standard-4 10.240.173.229 146.148.112.106 RUNNING
(Opcional) Elimina las capturas de disco persistente.
Después de confirmar que las máquinas virtuales se han movido, ahorra costes de almacenamiento eliminando las copias instantáneas temporales que has creado.
gcloud compute snapshots delete mybootsnapshot mydatasnapshot
Si ya no necesitas las copias de seguridad, elimínalas también:
gcloud compute snapshots delete backup-mybootsnapshot backup-mydatasnapshot
Go
Obtén los detalles de la VM e identifica los discos que están conectados a ella.
Define el estado de eliminación automática del disco de arranque y del disco de datos en
false
para asegurarte de que los discos no se eliminen automáticamente cuando se elimine la VM.Crea copias de seguridad de tus datos mediante capturas de disco persistente.
Como medida de precaución, crea copias de seguridad de tus datos mientras los discos persistentes sigan conectados a la VM mediante capturas de disco persistente. Antes de hacer una captura, asegúrate de que sea coherente con el estado del disco persistente siguiendo las prácticas recomendadas para las capturas.
Después de borrar los búferes de disco, crea las capturas:
Elimina la VM de la zona de origen.
A continuación, crea otra captura del disco de arranque y de los discos de datos.
(Opcional) Elimina tus discos persistentes.
Si tienes previsto reutilizar los nombres de los discos persistentes en los nuevos discos, debes eliminar los discos actuales para liberar los nombres. Si eliminas los discos, también ahorrarás en costes de almacenamiento de discos persistentes.
Si no tienes previsto reutilizar los mismos nombres de disco, no es necesario que los elimines.
Crea discos persistentes en la zona de destino a partir de las capturas que hayas creado. Primero, crea el disco de arranque y, después, los discos de datos.
Vuelve a crear la VM con los nuevos discos en la zona de destino.
(Opcional) Elimina las capturas de disco temporales. Una vez que hayas confirmado que se han movido las máquinas virtuales, ahorra costes de almacenamiento eliminando las capturas temporales que hayas creado.
Java
Obtén los detalles de la VM e identifica los discos que están conectados a ella.
Define el estado de eliminación automática del disco de arranque y del disco de datos en
false
para asegurarte de que los discos no se eliminen automáticamente cuando se elimine la VM.Crea copias de seguridad de tus datos mediante capturas de disco persistente.
Como medida de precaución, crea copias de seguridad de tus datos mientras los discos persistentes sigan conectados a la VM mediante capturas de disco persistente. Antes de hacer una captura, asegúrate de que sea coherente con el estado del disco persistente siguiendo las prácticas recomendadas para las capturas.
Después de borrar los búferes de disco, crea las capturas:
Elimina la VM de la zona de origen.
A continuación, crea otra captura del disco de arranque y de los discos de datos.
(Opcional) Elimina tus discos persistentes.
Si tienes previsto reutilizar los nombres de los discos persistentes en los nuevos discos, debes eliminar los discos actuales para liberar los nombres. Si eliminas los discos, también ahorrarás en costes de almacenamiento de discos persistentes.
Si no tienes previsto reutilizar los mismos nombres de disco, no es necesario que los elimines.
Crea discos persistentes en la zona de destino a partir de las capturas que hayas creado. Primero, crea el disco de arranque y, después, los discos de datos.
Vuelve a crear la VM con los nuevos discos en la zona de destino.
(Opcional) Elimina las capturas de disco temporales. Una vez que hayas confirmado que se han movido las máquinas virtuales, ahorra costes de almacenamiento eliminando las capturas temporales que hayas creado.
Node.js
Obtén los detalles de la VM e identifica los discos que están conectados a ella.
Define el estado de eliminación automática del disco de arranque y del disco de datos en
false
para asegurarte de que los discos no se eliminen automáticamente cuando se elimine la VM.Crea copias de seguridad de tus datos mediante capturas de disco persistente.
Como medida de precaución, crea copias de seguridad de tus datos mientras los discos persistentes sigan conectados a la VM mediante capturas de disco persistente. Antes de hacer una captura, asegúrate de que sea coherente con el estado del disco persistente siguiendo las prácticas recomendadas para las capturas.
Después de borrar los búferes de disco, crea las capturas:
Elimina la VM de la zona de origen.
A continuación, crea otra captura del disco de arranque y de los discos de datos.
(Opcional) Elimina tus discos persistentes.
Si tienes previsto reutilizar los nombres de los discos persistentes en los nuevos discos, debes eliminar los discos actuales para liberar los nombres. Si eliminas los discos, también ahorrarás en costes de almacenamiento de discos persistentes.
Si no tienes previsto reutilizar los mismos nombres de disco, no es necesario que los elimines.
Crea discos persistentes en la zona de destino a partir de las capturas que hayas creado. Primero, crea el disco de arranque y, después, los discos de datos.
Vuelve a crear la VM con los nuevos discos en la zona de destino.
(Opcional) Elimina las capturas de disco temporales. Una vez que hayas confirmado que se han movido las máquinas virtuales, ahorra costes de almacenamiento eliminando las capturas temporales que hayas creado.
Python
Obtén los detalles de la VM e identifica los discos que están conectados a ella.
Define el estado de eliminación automática del disco de arranque y del disco de datos en
false
para asegurarte de que los discos no se eliminen automáticamente cuando se elimine la VM.Crea copias de seguridad de tus datos mediante capturas de disco persistente.
Como medida de precaución, crea copias de seguridad de tus datos mientras los discos persistentes sigan conectados a la VM mediante capturas de disco persistente. Antes de hacer una captura, asegúrate de que sea coherente con el estado del disco persistente siguiendo las prácticas recomendadas para las capturas.
Después de borrar los búferes de disco, crea las capturas:
Elimina la VM de la zona de origen.
A continuación, crea otra captura del disco de arranque y de los discos de datos.
(Opcional) Elimina tus discos persistentes.
Si tienes previsto reutilizar los nombres de los discos persistentes en los nuevos discos, debes eliminar los discos actuales para liberar los nombres. Si eliminas los discos, también ahorrarás en costes de almacenamiento de discos persistentes.
Si no tienes previsto reutilizar los mismos nombres de disco, no es necesario que los elimines.
Crea discos persistentes en la zona de destino a partir de las capturas que hayas creado. Primero, crea el disco de arranque y, después, los discos de datos.
Vuelve a crear la VM con los nuevos discos en la zona de destino.
(Opcional) Elimina las capturas de disco temporales. Una vez que hayas confirmado que se han movido las máquinas virtuales, ahorra costes de almacenamiento eliminando las capturas temporales que hayas creado.
Siguientes pasos
- Consulta cómo cambiar la zona o región predeterminada de tu proyecto.
- Consulta información sobre la migración en directo.
- Consulta el estado de una máquina virtual.
- Consulta información sobre cómo migrar máquinas virtuales a Compute Engine.
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-11 (UTC).
-