Memecahkan masalah Migrate to Virtual Machines

Pelajari langkah-langkah pemecahan masalah yang mungkin berguna jika Anda mengalami masalah saat menggunakan Migrate to Virtual Machines.

Error: Izin compute.subnetworks.use diperlukan

VPC Bersama memungkinkan organisasi untuk menghubungkan resource dari beberapa project ke jaringan Virtual Private Cloud (VPC) yang umum, sehingga resource tersebut dapat berkomunikasi satu sama lain secara aman dan efisien menggunakan IP internal dari jaringan tersebut.

Migrate to Virtual Machines memungkinkan Anda men-deploy instance Compute Engine ke project yang memiliki akses ke VPC Bersama. Namun, jika Anda belum menetapkan peran compute.subnetworks.use ke akun layanan default Migrasi ke Virtual Machine, Anda akan melihat pesan error dalam format berikut saat mencoba men-deploy instance 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'

Pastikan Anda menetapkan peran compute.subnetworks.use di project host VPC Bersama ke akun layanan default Migrasi ke Virtual Machine seperti yang dijelaskan dalam Mengonfigurasi izin untuk VPC Bersama.

Error: Pengguna tidak memiliki akses ke akun layanan

Sebagai bagian dari Mengonfigurasi target untuk VM yang dimigrasikan, Migrate to Virtual Machines memungkinkan Anda menetapkan akun layanan ke instance Compute Engine yang berjalan di project target.

Namun, agar dapat menetapkan akun layanan ke instance Compute Engine yang berjalan di project target, akun layanan Migrate to Virtual Machines default di project host harus memiliki peran Service Account User di akun layanan target.

Jika Anda menetapkan akun layanan ke instance Compute Engine, tetapi project host tidak memiliki peran Service Account User di akun layanan target, Anda akan melihat error berikut saat mencoba menguji cloning atau melakukan cut-over 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

Pastikan akun layanan Migrate to Virtual Machines default dikonfigurasi dengan benar untuk mengizinkan akses ke akun layanan target. Lihat Mengonfigurasi izin pada akun layanan project target untuk mengetahui informasi selengkapnya.

Error: Pembuatan laporan gagal karena batas kueri maksimum vCenter terlampaui

Untuk membantu Anda menentukan setelan yang optimal untuk target Compute Engine, Migrasi ke Virtual Machine memungkinkan Anda membuat laporan penggunaan VM sumber. Laporan ini menampilkan informasi tentang alokasi dan penggunaan resource untuk VM sumber yang di-deploy di vCenter.

Laporan dibuat dari data yang dikumpulkan di vCenter. Saat membuat laporan, Anda mungkin melihat error dalam format berikut yang menunjukkan bahwa batas kuota vCenter telah tercapai:

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

Lihat artikel vSphere ini untuk mengetahui informasi selengkapnya tentang cara meningkatkan batas kuota.

Error: Instance yang dibuat di Migrate to Virtual Machines tidak melakukan booting

Jika boot disk VM sumber Anda bukan disk pertama dalam daftar disk VM, Anda mungkin menerima error konsol serial yang menampilkan pesan berikut:

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...

Untuk mengurangi error ini, clone disk Anda dan hubungkan clone tersebut dalam urutan yang benar ke VM baru di Migrate to Virtual Machines.

Untuk meng-clone disk dan menghubungkannya dalam urutan yang benar, ikuti langkah-langkah berikut:

  1. Hentikan VM yang direplikasi.
  2. Clone boot disk asli Anda:

    gcloud compute disks create -project=$PROJECT --zone=$ZONE --source-disk=$DISK new-disk-name
  3. Jalankan perintah berikut untuk menetapkan ulang lisensi ke disk booting yang di-clone dan menambahkan tag yang relevan (Contoh dengan 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. Mengedit VM:

    1. Lepaskan boot disk Anda saat ini dan pasang di Additional disks.
    2. Hapus boot disk asli dari Disk tambahan.
    3. Lampirkan disk yang dibuat dari Langkah 3 di Boot Disk.
    4. Simpan perubahan Anda.

Setelah mengonfirmasi proses booting VM, Anda dapat menghapus disk booting asli.

Error: VM Windows menjalankan `chkdsk' pada booting pertama dari clone

Fase clone pengujian Migrate to Virtual Machines membuat instance clone VM di cloud berdasarkan snapshot yang diambil saat VM sumber sedang berjalan.

Dalam beberapa kasus, tindakan ini dapat memicu operasi pemindaian chkdsk otomatis di VM Windows saat clone melakukan booting di cloud. Jika error tersebut memblokir langkah-langkah verifikasi, pertimbangkan untuk menonaktifkan VM di antara siklus replikasi agar Migrate to Virtual Machines dapat mengambil snapshot saat VM nonaktif.

Hal ini tidak memengaruhi VM saat ditransfer, karena VM dinonaktifkan sebagai bagian dari proses transfer sebelum Migrasi ke Virtual Machine menyelesaikan fase sinkronisasi akhir.