Soluciona problemas de Migrate to Virtual Machines

Obtén información sobre los pasos para solucionar problemas que pueden servirte si tienes dificultades con Migrate to Virtual Machines.

Error: permiso de compute.subnetworks.use necesario

En la VPC compartida, una organización puede conectar recursos de varios proyectos a una red de nube privada virtual (VPC) común para que se comuniquen entre sí de manera segura y eficiente mediante las IP internas de esa red.

Migrate to Virtual Machines te permite implementar una instancia de Compute Engine en un proyecto que tiene acceso a una VPC compartida. Sin embargo, si no asignaste la función compute.subnetworks.use a la cuenta de servicio predeterminada de Migrate to Virtual Machines, verás un mensaje de error en el siguiente formato cuando intentes implementar la instancia de Compute Engine:

"Create instance of VM "my-vm" from source "my-proj" to target project "target-proj" using Compute Engine instance name "instance-id" failed due to: Required 'compute.subnetworks.use' permission for 'projects/vpc-proj/regions/us-central1/subnetworks/shared-central1'

Asegúrate de asignar la función compute.subnetworks.use en el proyecto host de la VPC compartida a la cuenta de servicio predeterminada de Migrate to Virtual Machines, como se describe en Configura permisos para una VPC compartida.

Error: el usuario no tiene acceso a la cuenta de servicio

Como parte de la configuración del destino de una VM migrada, Migrate to Virtual Machines te permite asignar una cuenta de servicio a una instancia de Compute Engine que se ejecuta en un proyecto de destino.

Sin embargo, para poder asignar una cuenta de servicio a una instancia de Compute Engine que se ejecuta en un proyecto de destino, la cuenta de servicio predeterminada de Migrate to Virtual Machines en el proyecto host debe tener la función Service Account User en la cuenta de servicio de destino.

Si asignas una cuenta de servicio a una instancia de Compute Engine, pero el proyecto host no tiene la función Service Account User en la cuenta de servicio de destino, verás el siguiente error cuando intentes la clonación de prueba o realizar la transición de la VM:

Test-Clone of VM "my-vm" from source "source-vm" to target project "target-proj" using Compute Engine instance name "my-instance" failed due to: The user does not have access to service account 'target-service-account-email'. User: 'host-user-account-email'. Ask a project owner to grant you the iam.serviceAccountUser role on the service account

Asegúrate de que la cuenta de servicio predeterminada de Migrate to Virtual Machines esté configurada de forma correcta para permitir el acceso a la cuenta de servicio de destino. Para obtener más información, consulta Configura permisos en la cuenta de servicio del proyecto de destino.

Error: se produjo un error durante la generación del informe debido a que se superó el límite máximo de consultas de vCenter

Para ayudarte a determinar la configuración óptima del destino de Compute Engine, Migrate to Virtual Machines te permite crear un informe de uso de VM de origen. En este informe, se muestra información sobre la asignación y el uso de recursos para las VMs de origen implementadas en vCenter.

El informe se genera a partir de los datos recopilados en vCenter. Cuando generes el informe, es posible que veas un error en el siguiente formato, lo que indica que se alcanzó el límite de cuota de vCenter:

Report generation for source source connected to vCenter vcenter failed due to vCenter maximum query limit exceeded. Details: VC message

Consulta este artículo de vSphere para obtener más información sobre cómo aumentar el límite de cuota.

Error: La instancia creada en Migrate to Virtual Machines no se inicia

Cuando el disco de arranque de la VM de origen no es el primer disco en la lista de discos de la VM, es posible que recibas un error de la consola en serie que muestre el siguiente mensaje:

drive 0x000f2410: PCHS=0/0/0 translation=lba LCHS=1024/255/63 s=104857600
drive 0x000f23d0: PCHS=0/0/0 translation=lba LCHS=1024/255/63 s=167772160
drive 0x000f2390: PCHS=0/0/0 translation=lba LCHS=1024/255/63 s=83886080
Sending Seabios boot VM event.
Booting from Hard Disk 0...

Para mitigar este error, clona tus discos y conecta esos clones en el orden correcto a una VM nueva en Migrate to Virtual Machines.

Para clonar tu disco y conectarlo en el orden correcto, sigue estos pasos:

  1. Detén tu VM replicada.
  2. Clona el disco de arranque original:

    gcloud compute disks create -project=$PROJECT --zone=$ZONE --source-disk=$DISK new-disk-name
    
  3. Ejecuta el siguiente comando para reasignar la licencia a tu disco de arranque clonado y agregar las etiquetas relevantes (ejemplo con windows2008-r2):

    gcloud compute disks create --project=$PROJECT --zone=$ZONE --source-disk=disk created on step #2 --licenses=projects/windows-cloud/global/licenses/windows-server-2008-r2-dc --guest-os-features=VIRTIO_SCSI_MULTIQUEUE,MULTI_IP_SUBNET,WINDOWS new-disk-name
    
  4. Edita la VM:

    1. Desconecta el disco de arranque actual y conéctalo en los discos adicionales.
    2. Quita el disco de arranque original de los Discos adicionales.
    3. Conecta el disco creado desde el Paso 3 en el Disco de arranque.
    4. Guarda los cambios.

Después de confirmar el proceso de arranque de la VM, puedes borrar el disco de arranque original.

Error: La VM de Windows ejecuta “chkdsk” en el primer inicio de una clonación

La fase de clonación de prueba de Migrate to Virtual Machines crea una instancia de una clonación de la VM en la nube a partir de una instantánea que se toma mientras se ejecuta la VM de origen.

En algunos casos, esto puede activar una operación automática de análisis chkdsk en las VMs de Windows mientras se inicia la clonación en la nube. Si estos errores bloquean los pasos de verificación, te recomendamos cerrar la VM entre ciclos de replicación para permitir que Migrate to Virtual Machines tome una instantánea mientras la VM está desactivada.

Esto no afecta a la VM cuando se migra, ya que la VM se cierra como parte del proceso de migración antes de que Migrate to Virtual Machines complete la fase de sincronización final.