Errore: autorizzazione compute.subnetworks.use obbligatoria
Una VPC condivisa consente a un'organizzazione di connettere risorse di più progetti a una rete VPC (Virtual Private Cloud) comune, in modo che possano comunicare tra loro in modo sicuro ed efficiente utilizzando gli IP interni di quella rete.
Migrate to Virtual Machines ti consente di eseguire il deployment di un'istanza Compute Engine in un progetto che ha accesso a un VPC condiviso.
Tuttavia, se non hai assegnato il ruolo compute.subnetworks.use
all'account di servizio predefinito di Migrate to Virtual Machines, quando provi a eseguire il deployment dell'istanza Compute Engine viene visualizzato un messaggio di errore nel seguente formato:
"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'
Assicurati di assegnare il ruolo compute.subnetworks.use
al progetto host VPC condiviso per l'account di servizio predefinito di Migrate to Virtual Machines come descritto in Configurare le autorizzazioni per un VPC condiviso.
Errore: l'utente non ha accesso all'account di servizio
Nell'ambito della configurazione della destinazione per una VM di cui è stata eseguita la migrazione, Migrate to Virtual Machines ti consente di assegnare un account di servizio a un'istanza Compute Engine in esecuzione in un progetto di destinazione.
Tuttavia, per poter assegnare un account di servizio a un'istanza Compute Engine in esecuzione in un progetto di destinazione, l'account di servizio Migrate to Virtual Machines predefinito nel progetto host deve avere il ruolo Service Account User
nell'account di servizio di destinazione.
Se assegni un account di servizio a un'istanza Compute Engine, ma il progetto host non ha il ruolo Service Account User
nell'account di servizio di destinazione, quando provi a eseguire il clone di test o il cut over della VM viene visualizzato il seguente errore:
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
Assicurati che l'account di servizio Migrate to Virtual Machines predefinito sia configurato correttamente per consentire l'accesso all'account di servizio di destinazione. Per saperne di più, consulta Configurare le autorizzazioni per l'account di servizio del progetto di destinazione.
Errore: generazione del report non riuscita a causa del superamento del limite massimo di query di vCenter
Per aiutarti a determinare le impostazioni ottimali per la destinazione Compute Engine, Migrate to Virtual Machines ti consente di creare un report sull'utilizzo delle VM di origine. Questo report mostra informazioni sull'allocazione e sull'utilizzo delle risorse per le VM di origine di cui è stato eseguito il deployment su vCenter.
Il report viene generato dai dati raccolti su vCenter. Durante la generazione del report, potresti visualizzare un errore nel seguente formato che indica che è stato raggiunto un limite di quota vCenter:
Report generation for source source connected to vCenter vcenter failed due to vCenter maximum query limit exceeded. Details: VC message
Per ulteriori informazioni sull'aumento del limite di quota, consulta questo articolo su vSphere.
Errore: l'istanza creata in Migrate to Virtual Machines non si avvia
Quando il disco di avvio della VM di origine non è il primo disco nell'elenco dei dischi della VM, potresti ricevere un errore della console seriale che mostra il seguente messaggio:
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...
Per ridurre al minimo questo errore, clona i dischi e collega le relative copie nell'ordine corretto a una nuova VM in Migrate to Virtual Machines.
Per clonare il disco e collegarlo nell'ordine corretto:
- Arresta la VM replicata.
Clona il disco di avvio originale:
gcloud compute disks create -project=$PROJECT --zone=$ZONE --source-disk=$DISK new-disk-name
Esegui il seguente comando per riassegnare la licenza al disco di avvio clonato e aggiungere i tag pertinenti (esempio 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
Modifica la VM:
- Scollega il disco di avvio attuale e collegalo in Dischi aggiuntivi.
- Rimuovi il disco di avvio originale da Dischi aggiuntivi.
- Collega il disco creato nel passaggio 3 al disco di avvio.
- Salva le modifiche.
Dopo aver verificato la procedura di avvio della VM, puoi eliminare il disco di avvio originale.
Errore: la VM Windows esegue "chkdsk" al primo avvio di un clone
La fase di clone di test di Migrate to Virtual Machines esegue l'istanza di un clone della VM nel cloud in base a uno snapshot acquisito durante l'esecuzione della VM di origine.
In alcuni casi, questa operazione potrebbe attivare un'operazione di scansione automatica chkdsk
nelle VM Windows durante l'avvio del clone nel cloud. Se questi errori bloccano i passaggi di verifica, ti consigliamo di arrestare la VM tra un ciclo di replica e l'altro per consentire a Migrate to Virtual Machines di acquisire uno snapshot mentre la VM è spenta.
Ciò non influisce sulla VM durante il passaggio, poiché la VM viene arrestata nel corso della procedura di passaggio prima che Migrate to Virtual Machines completi la fase di sincronizzazione finale.