En ciertas situaciones, es posible que desees mover tu carga de trabajo de una instancia de máquina virtual (VM) existente a una VM más reciente. Estos son algunos de los motivos para cambiar a una VM nueva:
- Aprovecha los nuevos tipos de máquinas para obtener velocidades de almacenamiento o redes más rápidas. Por ejemplo, actualizar de C2 a H3 para mejorar el ancho de banda de la red.
- Beneficiarse de un mayor rendimiento de precios en relación con la instancia de VM de origen Por ejemplo, actualizar de N1 a N4 para obtener un mayor valor en el procesador Intel Xeon de 5ª generación.
- Usar funciones que solo están disponibles en la nueva instancia de VM Por ejemplo, actualizar de N4 a C4 para aprovechar las opciones adicionales de rendimiento y mantenimiento.
- Cambia una instancia de máquina virtual (VM) a una instancia de equipo físico.
- Agrega discos SSD locales a tu instancia de VM C3 o C3D.
Cuando actualices a la serie de máquinas de generación más reciente, es posible que puedas usar el procedimiento más simple que se describe en Cómo editar el tipo de máquina de una instancia de procesamiento si la VM actual (de origen) cumple con las siguientes condiciones:
- La versión del sistema operativo (SO) es compatible con la nueva serie de máquinas.
- El tipo de disco de arranque conectado a la VM de origen es compatible con la nueva serie de máquinas.
- La VM no usa almacenamiento SSD local.
- Tu VM con GPUs conectadas usa un tipo de máquina G2. Consulta Agrega o quita GPU para obtener más detalles.
- La VM solo usa funciones compatibles con la nueva serie de máquinas.
- La VM no forma parte de un grupo de instancias administrado (MIG).
- La VM usa la interfaz de red gVNIC.
Antes de comenzar
-
Si aún no lo hiciste, configura la autenticación.
La autenticación es el proceso mediante el cual se 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:
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
-
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.
-
Administrador de instancias de Compute (v1) (
roles/compute.admin.v1
) -
Para cambiar el tipo de red, haz lo siguiente:
Administrador de red de Compute Engine (
roles/compute.networkAdmin
) -
Para cambiar el tipo de máquina, haz lo siguiente:
compute.instances.stop
en el proyectocompute.instances.create
en el proyectocompute.instances.start
en el proyecto-
compute.instances.setMachineType
en la instancia
-
Para crear una instantánea del disco, sigue estos pasos:
compute.snapshots.create
en el proyecto-
compute.disks.createSnapshot
en el disco
-
Para crear un disco nuevo, sigue estos pasos:
compute.disks.list
en el proyectocompute.disks.create
en el proyectocompute.disks.update
en el proyecto
-
Para conectar un disco a una VM, sigue estos pasos:
-
compute.instances.attachDisk
en la instancia -
compute.disks.use
en el disco
-
-
Para borrar un disco, sigue estos pasos:
compute.disks.delete
en el proyecto. -
Para cambiar el tipo de red, haz lo siguiente:
compute.networks.list
en el proyectocompute.networks.update
en el proyecto
- Explora la documentación sobre el recurso de la familia de máquinas para identificar qué tipos de máquinas son adecuados para tu carga de trabajo. Considera si tu aplicación requiere hardware específico (GPUs), alto rendimiento o costos más bajos.
- Revisa las características de los tipos de disco compatibles con el nuevo tipo de máquina. Hyperdisk admite la mayoría de las funciones de Persistent Disk, pero no todas. Sin embargo, Hyperdisk proporciona funciones adicionales que no están disponibles con Persistent Disk.
- Revisa las funciones de la posible serie de máquinas. Es posible que la nueva serie de máquinas no admita las mismas funciones que usas con tu serie de máquinas actual, como los tipos personalizados de máquinas, los SSD locales o la VM protegida.
- Revisa las regiones y zonas para asegurarte de que la nueva serie de máquinas esté disponible en todas las regiones como tu VM actual. Es posible que debas ajustar tus planes de implementación, alta disponibilidad y recuperación ante desastres.
- Revisa tu plan de migración del SO:
- Si la VM nueva requiere una versión más reciente del SO, verifica que tus aplicaciones sean compatibles con la versión más reciente del SO.
- Si migras a Arm y no hay una imagen de Arm disponible para tu versión actual del SO, elige un SO nuevo o una versión del SO para ejecutar tus aplicaciones y verifica que tus aplicaciones sean compatibles con el SO nuevo.
- Es posible migrar de una instancia de VM C3 a una instancia de Bare Metal C3, siempre y cuando la instancia de VM C3 de origen use un sistema operativo y un controlador de red compatibles.
- Si migras desde una serie de máquinas que no es C3 a una instancia de Bare Metal, debes crear una instancia nueva. Es posible que debas ejecutar tu propio hipervisor. Sin embargo, también puedes ejecutar cualquier sistema operativo compatible con el metal C3, siempre y cuando el controlador IDPF esté habilitado. Las instancias de Bare Metal usan la interfaz de red de IDPF, que se presenta solo como una función física, no como una función virtual.
- Revisa los tipos de almacenamiento y las interfaces de almacenamiento compatibles con la nueva serie de máquinas.
- De forma predeterminada, las series de máquinas de primera y segunda generación solo usan el tipo de almacenamiento de Persistent Disk y las interfaces VirtIO-SCSI.
- Las series de máquinas de tercera generación y posteriores (como M3, C3 y N4) solo admiten la interfaz NVMe, y algunas solo admiten los tipos de almacenamiento en Hyperdisk y SSD locales.
- Las instancias de Bare Metal solo admiten Hyperdisk.
- Compatibilidad con discos:
- Si el disco de arranque usa un tipo de disco que no es compatible con la nueva serie de máquinas, por ejemplo,
pd-standard
, debes crear un disco de arranque nuevo para la VM nueva. - Si actualizas el SO a una versión nueva y el sistema operativo no admite actualizaciones locales, debes crear un nuevo disco de arranque. Se perderán todos los datos del disco de arranque de origen, a menos que los copies en un disco temporal que no sea de arranque. A continuación, crearás un disco de arranque nuevo y copiarás los datos almacenados en el disco temporal que no es de arranque al disco de arranque nuevo.
- Si no actualizas la versión del SO, puedes tomar una instantánea de tu disco de arranque actual y restablecerla en el nuevo tipo de disco compatible. Cuando crees una VM, podrás usar este disco nuevo como disco de arranque.
- Si un disco que no es de arranque usa un tipo de disco que no es compatible con la nueva serie de máquinas, puedes usar una instantánea para cambiar el disco de origen a un nuevo tipo de disco, como se describe en Cómo cambiar el tipo de disco.
- Si el disco de arranque usa un tipo de disco que no es compatible con la nueva serie de máquinas, por ejemplo,
- Los discos SSD locales no se pueden mover a una VM nueva. Puedes conectar un disco lo suficientemente grande como para almacenar todos los datos del SSD local a tu VM actual y, luego, usar una instantánea para cambiar el disco de origen a un nuevo tipo de disco, como se describe en Cómo cambiar el tipo de disco. Después de crear una VM con discos SSD locales conectados, puedes copiar los datos de nuevo en los discos SSD locales.
- Si tu instancia de VM actual usa discos en un grupo de almacenamiento, pero vas a trasladar tu carga de trabajo a una VM en otra región, debes volver a crear los discos y el grupo de almacenamiento en la región nueva.
- Si la nueva serie de máquinas usa una interfaz de disco diferente (por ejemplo, NVMe en lugar de SCSI), los nombres de los dispositivos de disco en el SO invitado serán diferentes. Asegúrate de que tus aplicaciones y secuencias de comandos usen nombres de dispositivos persistentes o vínculos simbólicos cuando hagan referencia a los discos conectados.
Revisa las interfaces de red compatibles con la VM nueva.
- De forma predeterminada, las series de máquinas de primera y segunda generación solo usan la interfaz de red VirtIO.
- Las series de máquinas de tercera generación y posteriores (como M3, C3 y N4) solo admiten la interfaz de red gVNIC.
- Las instancias de Bare Metal solo admiten la interfaz de red IDPF.
Asegúrate de que tu aplicación y tu sistema operativo admitan las interfaces disponibles para la serie de máquinas.
Revisa la configuración de red de tu VM para determinar si necesitas conservar las direcciones IP asignadas. Si es así, debes promover las direcciones IP a direcciones IP estáticas.
Si usas el rendimiento de red Tier_1 por VM con tu VM actual, asegúrate de que esté disponible o sea necesario con la nueva serie de máquinas. Por ejemplo, puedes usar redes Tier_1 con un tipo de máquina C2, pero no es necesario con una VM H3.
- Solicita cuota en la región y las zonas en las que planeas trasladar tus recursos. Si tienes una cuota existente para un tipo de máquina, puedes solicitar que se mueva esa cuota. El proceso tarda unos días en completarse.
- Crea una reserva para las nuevas instancias de VM y asegúrate de que los recursos de la máquina estén disponibles en la nueva región y las nuevas zonas. Asegúrate de comprender cómo se consumen los recursos reservados y prueba que puedes consumirlos.
- Extiende tus planes de alta disponibilidad y recuperación ante desastres para incluir la nueva región.
- Si es necesario, actualiza el SO en la VM actual.
- Si el proveedor del sistema operativo lo admite, realiza una actualización local del SO a una versión compatible con la nueva serie de máquinas y verifica que tu carga de trabajo se ejecute según lo previsto en la nueva versión del SO.
- Si no se admite una actualización del SO en el mismo lugar, cuando crees una VM nueva, deberás crear un disco de arranque nuevo. Determina qué información necesitas copiar del disco de arranque actual y cópiala a una ubicación temporal en un disco que no sea de arranque para que se pueda transferir a la VM nueva. Si no tienes ningún disco que no sea de arranque conectado a tu VM actual, haz lo siguiente:
- Para los tipos de máquinas de primera y segunda generación, consulta Agrega almacenamiento de Persistent Disk a tu VM.
- Para los tipos de máquinas de tercera generación y posteriores, consulta Agrega almacenamiento de Hyperdisk a tu VM.
- Si corresponde a tu distribución de Linux, consulta las reglas de udev en
/etc/udev/rules.d/
. Este archivo podría contener entradas relevantes para la configuración de hardware de la instancia actual, pero no de la nueva. Por ejemplo, la siguiente entrada garantiza que el controladoreth0
(VirtIO Net) proporcionevirtio-pci
, lo que impide que el controladorgve
(gVNIC) proporcione esta interfaz. Esto podría generar problemas de conectividad y secuencias de comandos de inicio de redes en la instancia nueva: - En los sistemas Linux, prueba tus aplicaciones y secuencias de comandos actualizadas para asegurarte de que funcionen con nombres de dispositivos persistentes o symlinks en lugar de los nombres de dispositivos de disco.
- Si migras desde una VM que ejecuta Microsoft Windows, haz lo siguiente:
- Debes actualizar el controlador de NVMe en las VMs creadas antes de mayo de 2022. Esto se aplica al disco de arranque en tu VM actual y a las imágenes personalizadas o instantáneas creadas previamente que se usan para crear una VM.
- Windows se debe volver a configurar para comenzar a usar el controlador de Microsoft NVMe (StorNVMe). Sigue las instrucciones para actualizar tu dispositivo de arranque.
- Si tu VM nueva no admite los mismos tipos de discos que tu VM actual, es posible que debas actualizar tus secuencias de comandos de implementación o plantillas de instancias para que admitan la nueva serie de máquinas.
- Si tu VM actual usa un tipo de disco para el disco de arranque que no es compatible con la nueva serie de máquinas y migras varias VMs con la misma configuración, crea una imagen personalizada para usarla cuando crees las VMs nuevas:
- Crea una instantánea del disco de arranque pd-standard de tu VM actual.
- Crea una imagen personalizada con la instantánea del disco como fuente.
- Si necesitas mover información de SSD locales, crea un disco en blanco lo suficientemente grande como para crear una copia de seguridad de tus discos SSD locales.
- Si es posible, usa un tipo de disco compatible con la VM nueva.
- Si no hay tipos de disco compatibles con la VM actual y la VM nueva, crea un disco temporal con un tipo de disco compatible con la VM actual.
- Conecta el disco nuevo a la VM actual y, luego, formatea y activa el disco.
- Copia los datos de los discos SSD locales conectados a la VM actual en este disco temporal.
Cambia el tipo de disco de los discos conectados a la VM actual que usen un tipo de disco que no sea compatible con la nueva VM. Para mover los datos del disco a discos nuevos, crea instantáneas de los discos. Como alternativa, puedes transferir archivos de una VM a la otra.
- Puedes tomar las instantáneas mientras la VM está en ejecución, pero no se capturará ningún dato escrito en los discos después de que tomes la instantánea. Debido a que las instantáneas son incrementales, puedes tomar una segunda instantánea después de detener la VM para capturar todos los cambios más recientes. Este enfoque debería minimizar el tiempo durante el que la VM no está disponible mientras cambias a una nueva.
- Como alternativa, puedes tomar todas las instantáneas del disco después de detener la VM. Te recomendamos que crees una instantánea de todos los discos conectados a tu VM, incluso si el tipo de disco es compatible con la nueva serie de máquinas. Incluye los discos temporales que contengan los datos copiados de la SSD local.
- El tiempo que se tarda en crear una instantánea de un disco depende de varios factores, como el tamaño del disco y la cantidad de datos que contiene. Por ejemplo, si tomas una instantánea de un disco de 1 TiB que está lleno en un 85%, es posible que la instantánea tarde 5 minutos en completarse. Sin embargo, si tomas una instantánea de un disco de 100 TiB que está lleno en un 85%, es posible que tarde 11 minutos en completarse. Te recomendamos que realices instantáneas de prueba de tus discos antes de comenzar el proceso de migración para comprender cuánto tiempo lleva la creación de instantáneas.
Si tienes un disco que se puede desconectar, puedes usar el siguiente enfoque para transferir los datos a un disco nuevo mientras la VM de origen sigue disponible:
- Desconecta el disco de tu VM.
- Toma una instantánea del disco.
- Usa la instantánea para crear un disco nuevo con un tipo de disco compatible con la nueva serie de máquinas. El disco nuevo debe tener el mismo tamaño que el disco de origen o ser más grande.
- Si tu VM actual no usa gVNIC, debes crear una instancia nueva con una interfaz de red que use gVNIC. Revisa la descripción general del uso de gVNIC con VMs de Compute Engine para comprender los pasos que debes seguir cuando crees una instancia nueva.
- Si creas una VM en una región nueva, crea una red de VPC y subredes en esa región.
- Si configuraste recuentos de colas de NIC personalizados, consulta Asignaciones de cola y cambio del tipo de máquina.
- Si deseas conservar las direcciones IP que usa la VM de origen, promueve las direcciones IP a direcciones IP estáticas.
- Anula la asignación de la dirección IP estática antes de detener la VM de origen.
compute.instances.setMachineType
en la VM- Cuando crees la VM nueva, elige uno de los tipos de disco admitidos para el disco de arranque, por ejemplo, Hyperdisk Balanced.
- Si la VM de origen usa discos que no son de arranque con un tipo de disco compatible con la nueva serie de máquinas, desconecta los discos de la VM.
- Detén la VM de origen.
- Crea instantáneas de todos los discos que aún estén conectados a la VM de origen.
- Crea una instancia de VM de Compute nueva con una imagen pública o una imagen personalizada configurada para usar gVNIC.
Cuando crees la VM nueva, elige las siguientes opciones:
- Selecciona el tipo de máquina de la serie que elegiste.
- Selecciona una imagen de SO compatible o usa una imagen personalizada que hayas creado anteriormente.
- Selecciona un tipo de disco compatible para el disco de arranque.
- Si creaste discos nuevos a partir de instantáneas de los discos originales, incluye esos discos nuevos.
- Especifica la nueva red de VPC si creas la instancia en una región diferente.
- Si la instancia nueva admite tanto VirtIO como gVNIC, selecciona gVNIC.
- Especifica las direcciones IP estáticas si promoviste las direcciones IP efímeras de la VM de origen.
- Inicia la VM nueva.
- Conecta los discos que desconectaste de la VM de origen a la VM nueva.
- Para los discos conectados a la VM de origen que usan un tipo de disco no compatible con la VM nueva, crea un disco a partir de una instantánea y conéctalo a la instancia nueva. Cuando crees el disco nuevo, selecciona un tipo de disco compatible con la VM nueva y especifica un tamaño que sea al menos tan grande como el disco original.
- Si la VM original usaba una política de recursos para los discos que se volvieron a crear para la VM nueva, debes agregar la política de recursos a los discos nuevos.
- Si creaste la VM nueva con una imagen de SO pública y no con una imagen personalizada, haz lo siguiente:
- Configura los usuarios, controladores, paquetes y directorios de archivos necesarios en la instancia nueva para admitir la carga de trabajo.
- Instala las aplicaciones y los programas modificados en la VM nueva. Vuelve a compilar los programas en el nuevo SO o arquitectura, si es necesario.
- Opcional: Si moviste el contenido de los discos SSD locales a un disco temporal y la nueva VM tiene almacenamiento SSD local conectado, después de formatear y activar los discos, puedes mover los datos del disco temporal a los discos SSD locales.
- Reasigna las direcciones IP estáticas asociadas con la VM de origen a la nueva VM.
- Completa las tareas adicionales necesarias para que tu nueva VM esté altamente disponible, como configurar balanceadores de cargas y actualizar las reglas de reenvío.
- Opcional: Si es necesario, actualiza las entradas de DNS para la VM nueva.
- Recomendación: Programa copias de seguridad de disco para los discos nuevos.
- Recomendación: Si cambiaste el SO a una versión o arquitectura diferente, vuelve a compilar tus aplicaciones.
Detén la VM con gcloud compute instances stop:
gcloud compute instances stop VM_NAME \ --zone=ZONE
Reemplaza lo siguiente:
VM_NAME
El nombre de tu VMn1-standard-8
actual.ZONE
: Es la zona en la que se encuentra la VM.
Crea instantáneas de tus discos. Usa gcloud compute snapshots create para crear una instantánea del disco de arranque de Persistent Disk y del disco de datos conectados a la VM.
gcloud compute snapshots create SNAPSHOT_NAME \ --source-disk=SOURCE_DISK_NAME \ --source-disk-zone=SOURCE_DISK_ZONE
Reemplaza lo siguiente:
SNAPSHOT_NAME
: Es el nombre de la instantánea que deseas crear.SOURCE_DISK_NAME
: Es el nombre de tu disco de origen.SOURCE_DISK_ZONE
: Es la zona del disco de origen.
Crea un nuevo disco Hyperdisk Balanced para el disco de datos repitiendo el paso anterior y especificando la información del disco de datos en lugar del disco de arranque. gcloud compute disks create:
gcloud compute disks create DISK_NAME \ --project=PROJECT_NAME \ --type=DISK_TYPE \ --size=DISK_SIZE \ --zone=ZONE \ --source-snapshot=SNAPSHOT_NAME \ --provisioned-iops=PROVISIONED_IOPS \ --provisioned-throughput=PROVISIONED_THROUGHPUT
Reemplaza lo siguiente:
DISK_NAME
: Es el nombre del disco nuevo que crearás a partir del disco del que se tomó la instantánea.PROJECT_NAME
: el nombre del proyecto.DISK_TYPE
: Es el nuevo tipo de disco. En este ejemplo, es un disco Hyperdisk Balanced.DISK_SIZE
: Es el tamaño del disco (por ejemplo,100GB
).ZONE
: Es la zona en la que se encuentra el disco nuevo.SNAPSHOT_NAME
: Es el nombre del disco de origen de la instantánea.- Opcional:
PROVISIONED_IOPS
: Es el rendimiento de IOPS del disco (por ejemplo,3600
). - Opcional:
PROVISIONED_THROUGHPUT
: Es el rendimiento de capacidad de procesamiento para aprovisionar el disco (por ejemplo,290
).
Repite el paso anterior para cada disco del que se creó una instantánea.
Crea la VM
n4-standard-8
y conecta los discos Hyperdisk Balanced con gcloud compute instances create:gcloud compute instances create VM_NAME \ --project=PROJECT_NAME \ --zone=ZONE \ --machine-type=NEW_MACHINE_TYPE \ --boot-disk-device-name=BOOT_DISK_NAME \ --disk=name=NON_BOOT_DISK_NAME, boot=no \ --network-interface=nic-type=GVNIC
Reemplaza lo siguiente:
VM_NAME
: Es el nombre de la instancia de VM nueva.PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra la VM nueva.NEW_MACHINE_TYPE
: Es el tipo de máquina. En este ejemplo, esn4-standard-8
.BOOT_DISK_NAME
Es el nombre del disco de arranque Hyperdisk Balanced que creaste a partir de la instantánea del disco de origen conectado a la VMn1-standard-8
.NON_BOOT_DISK_NAME
: Es el nombre del disco de datos de Hyperdisk Balanced que creaste a partir del disco de instantánea de origen conectado a la VMn1-standard-8
.
Inicia la VM
n4-standard-8
con el comando gcloud compute instances start:gcloud compute instances start VM_NAME
Reemplaza
VM_NAME
por el nombre de la VM nueva.- Detén la VM.
- Desconecta los discos de la VM.
- Crea una instantánea de los discos de arranque y de datos.
- Crea discos de arranque y de datos Hyperdisk Balanced con una instantánea de disco como fuente para cada disco.
- Configura el tipo de máquina en una VM N4.
- Conecta el disco de arranque Hyperdisk Balanced y el disco de datos Hyperdisk Balanced.
- Inicia la VM de N4.
Detén la VM con el método instances.stop:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME/stop
Reemplaza lo siguiente:
PROJECT_NAME
: El ID del proyectoZONE
: Es la zona que contiene la VM.VM_NAME
: Es el nombre de tu VM actualn1-standard-8
.
Crea instantáneas de tus discos con el método disks.createSnapshot para crear una instantánea del disco de arranque y del disco de datos del Persistent Disk conectados a la instancia.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/disks/DISK_NAME/createSnapshot
En el cuerpo de la solicitud, incluye el nombre del nuevo disco Persistent Disk con instantáneas.
Por ejemplo:
{ "name": "SNAPSHOT_NAME" }
Reemplaza lo siguiente:
PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra el disco.DISK_NAME
: Es el disco del que planeas crear una instantánea.SNAPSHOT_NAME
: Es un nombre para la instantánea, comohdb-boot-disk
ohdb-data-disk
.
Crea un disco Hyperdisk Balanced con el método disks.insert. Realiza este paso dos veces: una para incluir el
name
de tu disco de arranque Hyperdisk Balanced y otra para incluir elname
de tus discos de datos. UsasourceSnapshot
para los nuevos discos de arranque y datos de Hyperdisk Balanced,type
del disco, Hyperdisk Balanced ysizeGB
del disco en el cuerpo de la solicitud.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONEdisks
Reemplaza lo siguiente:
PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra el disco.
En el cuerpo de la solicitud, incluye lo siguiente:
Por ejemplo:
{ "name": "my-hdb-boot-disk" or "my-hdb-data-disk", "sourceSnapshot": "projects/your-project/global/snapshots/SNAPSHOT_NAME", "type": "projects/your-project/zones/us-central1-a/diskTypes/hyperdisk-balanced", "sizeGb": "100" }'
Usa el método instances.insert para crear la nueva VM de N4.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances
Reemplaza lo siguiente:
PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra el disco.
En el cuerpo de la solicitud, incluye lo siguiente:
{ "machineType":"projects/your-project/zones/us-central1-a/machineTypes/n4-standard-8" "name":"VM_NAME", "disks": [ { "boot": true, "deviceName": "my-hdb-boot-disk", "source": "projects/your-project/zones/us-central1-a/disks/my-hdb-boot-disk", "type": "PERSISTENT" }, { "boot": false, "deviceName": "my-hdb-data-disk", "source": "projects/your-project/zones/us-central1-a/disks/my-hdb-data-disk", "type": "PERSISTENT" } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME", "subnetwork":"regions/REGION/subnetworks/SUBNET_NAME", "nicType": "GVNIC" } ] }
Reemplaza lo siguiente:
VM_NAME
: El nombre de la VM.NETWORK_NAME
: Es el nombre de la red.REGION
: Es el nombre de la región.SUBNET_NAME
: Es el nombre de la subred.
Inicia la VM con el método instances.start:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME/start
Reemplaza lo siguiente:
PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra tu VM.VM_NAME
: El nombre de la VM.
Detén la VM con el método instances.stop.
Desconecta los discos con el método instances.detachDisk para desconectar el disco de arranque original del Persistent Disk de la VM N1. También debes desconectar los discos de datos de la VM.
https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME/detachDisk?deviceName=DISK_NAME
Reemplaza lo siguiente:
PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra el disco.VM_NAME
: Es el nombre de la VM de origen con el discopd-ssd
conectado.DISK_NAME
: Es el disco que deseas desconectar.
Crea una instantánea de los discos. Usa el método disks.createSnapshot para crear una instantánea del disco de arranque de Persistent Disk y de los discos de datos conectados a la instancia.
Crea un disco de arranque y discos de datos de Hyperdisk Balanced con el método disks.insert. Incluye el
name
de tu disco de Hyperdisk Balanced,sourceSnapshot
para el nuevo disco de Hyperdisk Balanced, eltype
del disco, Hyperdisk Balanced ysizeGB
del disco en el cuerpo de la solicitud.Realiza una actualización del tipo de máquina in situ con el método instances.setMachineType. Incluye
machineType
en el cuerpo de la solicitud:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONEinstances/VM_NAME/setMachineTypeMACHINE_TYPE
Reemplaza lo siguiente:
PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra el disco.VM_NAME
: Es el nombre de la VM que se actualizará.MACHINE_TYPE
: Es el nuevo tipo de máquina.
En el cuerpo de la solicitud, incluye lo siguiente:
{ "machineType": "projects/PROJECT_NAME/zones/ZONE/machineTypes/MACHINE_TYPE", }
Usa el método instances.attachDisk para conectar el nuevo disco de arranque
Hyperdisk Balanced
y los discos de datos Hyperdisk Balanced a la VM N4.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instancesVM_NAMEattachDiskDISK_NAME
Reemplaza lo siguiente:
PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra el disco.VM_NAME
: Es el nombre de la instancia de VM de origen con el discopd-ssd
conectado.DISK_NAME
El disco que deseas conectar.
En el cuerpo de la solicitud, incluye lo siguiente:
{ "source": "projects/your-project/zones/us-central1-a/disks/my-hdb-boot-disk", "deviceName":"my-hdb-boot-disk","boot":true }
{ "source": "projects/your-project/zones/us-central1-a/disks/my-hdb-data-disk", "deviceName":"my-hdb-data-disk","boot":false }
Inicia la VM N4 con el método instances.start.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONEinstances/VM_NAME/start
Reemplaza lo siguiente:
PROJECT_NAME
: el nombre del proyecto.ZONE
: Es la zona en la que se encuentra el disco.VM_NAME
: El nombre de la VM.
- Son las instantáneas que creaste para los discos conectados a la VM de origen.
- Cualquier programa de instantáneas para los discos que estaban conectados a la VM de origen
- Es el disco temporal creado para copiar los datos del SSD local a la VM nueva.
- La VM de origen y todos los discos conectados
- Lee sobre los problemas conocidos de Linux y Windows Server.
- Lee las sugerencias para solucionar problemas.
- Obtén más información sobre el ciclo de vida de la migración.
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.
Si deseas obtener más información, consulta Autentica para usar REST en la Google Cloud documentación de autenticación.
Roles obligatorios
Para obtener los permisos que necesitas para editar o cambiar una VM, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto:
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para editar o cambiar una VM. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para editar o cambiar una VM:
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Evalúa las opciones de migración de VMs
La migración de un tipo de máquina a otro depende de varios factores, como la disponibilidad regional del nuevo tipo de máquina y la compatibilidad de las opciones de almacenamiento y las interfaces de red con respecto al SO invitado de la fuente y la nueva serie de máquinas.
Requisitos de procesamiento
Revisa los siguientes requisitos para tu instancia actual y el nuevo tipo de máquina:
Requisitos de almacenamiento
Revisa los siguientes requisitos de almacenamiento para tu instancia actual y el nuevo tipo de instancia:
Requisitos de Herramientas de redes
Revisa los siguientes requisitos de redes para tu instancia actual y el nuevo tipo de instancia:
Para determinar el tipo de interfaz de red de tu VM actual, usa el comando
gcloud compute instances describe
para ver elnic-type
de la VM:gcloud compute instances describe VM_NAME --zone=ZONE
Si tu VM tiene un valor
nic-type
establecido enVIRTIO
, no puedes cambiar el tipo de interfaz de red. Debes crear una VM nueva y configurar el tipo de interfaz de red como gVNIC.Preparación para mover tus VMs existentes
Después de completar la sección de evaluación, el siguiente paso es prepararte para migrar tus instancias de VM. Para ello, solicita recursos para la nueva instancia de VM y prepara copias de seguridad de la instancia de VM de origen.
Prepara los recursos de procesamiento
Completa los siguientes pasos para prepararte para trasladar tu instancia actual a una nueva:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="virtio-pci", ATTR{dev_id}=="0x0", KERNELS=="0000:00:04.0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
Prepara los recursos de almacenamiento
Completa los siguientes pasos para preparar la transferencia de los datos de los discos conectados a tu instancia actual a una instancia nueva:
Prepara los recursos de red
Completa los siguientes pasos para actualizar la configuración de red que usa tu instancia actual para admitir la instancia nueva:
Prepara el sistema operativo SUSE Enterprise Linux Server
Para evitar dependencias específicas del hardware, vuelve a compilar el
initramfs
(sistema de archivos RAM inicial). Esto incluye una mayor variedad de controladores y módulos, lo que hace que el sistema operativo sea compatible con otros tipos de instancias. Si no lo haces, se producirá el problema conocido que impide que la VM se inicie correctamente.Antes de apagar el sistema, ejecuta el siguiente comando como administrador raíz para volver a compilar
initramfs
con todos los controladores:sudo dracut --force --no-hostonly
Mueve tu carga de trabajo a la nueva VM
Después de preparar tus VMs para la migración, el siguiente paso es trasladar tu carga de trabajo a la VM nueva.
Si vas a migrar tus VMs de la primera a la segunda generación de series de máquinas, lee las instrucciones en la página Edita el tipo de máquina de una VM. Si quieres cambiar el nombre de una VM existente, consulta la información en Cómo cambiar el nombre de una VM.
Permisos necesarios para esta tarea
Para realizar esta tarea, debes tener los siguientes permisos:
En esta sección, se describe cómo trasladar tu carga de trabajo de una VM de primera o segunda generación a una VM de tercera generación (o posterior). Durante este procedimiento, crearás una instancia de VM nueva y, luego, moverás tus cargas de trabajo a la VM nueva.
Crea la VM nueva
Cuando traslades tus cargas de trabajo de VMs de primera o segunda generación (por ejemplo, N1 o N2) a VMs de tercera generación o posteriores, primero debes crear una VM nueva y, luego, trasladar tus cargas de trabajo.
Después de que se inicia la instancia
Ahora que se creó y se inició la instancia nueva, completa los siguientes pasos para finalizar la configuración de la instancia nueva y copiar todos los datos de la instancia de origen.
Si tienes problemas cuando mueves tu carga de trabajo, comunícate con tu administrador técnico de cuentas (TAM) o con la Professional Services Organization (PSO) de Google para obtener asistencia.
Ejemplo de migración de n1-standard-8 a n4-standard-8
En el siguiente ejemplo, se muestra la migración de una VM de
n1-standard-8
a una VM den4-standard-8
. La VMn1-standard-8
tiene un disco de arranquePD-SSD
que ejecuta una imagenUbuntu1804
y un disco de datosPD-SSD
. Para este procedimiento, debes usar la CLI o la API de REST.Tienes dos opciones disponibles para actualizar tu VM N1 a una VM N4:
Opción 1: Si tu VM N1 usa la interfaz de red
VirtIO
, debes crear una VM N4 nueva. N4 solo admite la interfaz de redgvnic
y los discos Hyperdisk Balanced. Crea una instantánea de tus discos de arranque y datos de Persistent Disk, crea discos Hyperdisk Balanced a partir de esas instantáneas, adjunta los discos Hyperdisk Balanced y crea la nueva VM N4 con los discos Hyperdisk Balanced.También puedes crear un nuevo disco de arranque de Hyperdisk Balanced con una versión más reciente del SO Ubuntu. En esta situación, puedes crear un nuevo disco de Hyperdisk Balanced a partir de la instantánea del disco de arranque, pero conectarás ese disco como un disco que no es de arranque a la VM N4. Luego, puedes copiar los datos que no son del sistema de la instantánea restablecida al nuevo disco de arranque.
Opción 2: Si tu VM N1 usa la interfaz de red
gvnic
, el sistema operativo tiene un controlador de dispositivo de almacenamiento NVMe, no tiene discos SSD locales ni GPUs conectados, y no forma parte de un grupo de instancias administrado (MIG), puedes cambiar el tipo de máquina de N1 a N4, pero aún debes cambiar los tipos de disco de Persistent Disk a discos Hyperdisk equilibrados. Primero debes desconectar los discos de arranque y de datos de Persistent Disk, crear instantáneas de los discos, crear discos Hyperdisk Balanced con las instantáneas como fuente y, luego, conectar los nuevos discos Hyperdisk Balanced a tu VM N4 después de cambiar el tipo de máquina. Si tu VM tiene GPU conectadas, primero debes desconectarlas.El tiempo que se tarda en crear una instantánea de un disco depende de varios factores, como la cantidad total de TB en un disco. Por ejemplo, si tomas una instantánea de un disco de 1 TB que está lleno en un 85%, es posible que la instantánea tarde 5 minutos en completarse. Sin embargo, si tomas una instantánea de un disco de 100 TB que está lleno en un 85%, es posible que tarde 11 minutos en completarse. Google recomienda que realices instantáneas de prueba de tus discos antes de comenzar el proceso de migración para comprender cuánto tiempo lleva crear instantáneas.
gcloud
Opción 1: Crea una VM N4 nueva con discos de instantáneas:
Opción 2: Realiza una actualización local de la máquina:
Esta opción solo está disponible si tu VM de N1 usa la interfaz de red
gvnic
, el sistema operativo tiene un controlador de dispositivo de almacenamiento NVMe, no tiene discos SSD locales ni GPUs conectados, y no forma parte de un grupo de instancias administrado (MIG). Si realizas este procedimiento con una VM N1 que tiene una interfaz de redVirtIO
, se generará un error de incompatibilidad de la VM.REST
Opción 1: Crea una VM N4 nueva con discos de instantáneas:
Opción 2: Realiza una actualización local de la máquina:
Esta opción solo está disponible si tu VM N1 usa la interfaz de red
gvnic
, no tiene discos SSD locales ni GPUs conectados, y no forma parte de un grupo de instancias administrado (MIG). Si realizas este procedimiento con una VM N1 que tiene una interfaz de redVirtIO
, se generará un error de incompatibilidad de la VM.Limpia
Después de verificar que puedes conectarte a la nueva VM y que tu carga de trabajo se ejecuta según lo previsto en ella, puedes quitar los recursos que ya no son necesarios:
¿Qué sigue?
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-07-14 (UTC)
-