Dengan Migrate to Virtual Machines, Anda dapat mengimpor disk image virtual ke image Compute Engine. Jika Anda memiliki disk image virtual di lingkungan lokal dengan software dan konfigurasi yang diperlukan, Anda dapat menghemat waktu dengan mengimpor disk image virtual ini ke Compute Engine, dan menggunakan image yang dihasilkan untuk membuat instance mesin virtual atau persistent disk.
Sebelum memulai
- Aktifkan VM Migration API di project Anda. Untuk mengetahui informasi selengkapnya tentang cara mengaktifkan VM Migration API, lihat Mengaktifkan layanan Migrate to Virtual Machines.
- Pastikan sistem operasi pada disk didukung oleh Migrate to Virtual Machines. Untuk mengetahui informasi selengkapnya, lihat Sistem operasi yang didukung.
- Pastikan file disk image virtual yang ingin Anda impor memiliki
format berikut.
- Disk mesin virtual (VMDK).
- Mentah, dikompresi sebagai .tar.gz. File tar harus berisi satu file bernama disk.raw.
Proses impor gambar
Untuk mengimpor disk image virtual ke image Compute Engine menggunakan Migrate to Virtual Machines, lakukan langkah-langkah berikut:
- Menyiapkan file disk image virtual untuk impor
- Memilih project target
- Mengimpor disk image virtual ke Compute Engine
Menyiapkan file disk virtual untuk diimpor
Untuk mengimpor disk image virtual ke Compute Engine, Anda harus terlebih dahulu menyiapkan file disk image virtual untuk diimpor. Bagian berikut membahas tugas-tugas ini secara rinci.
Menambahkan file disk image virtual ke Cloud Storage
Untuk mengimpor disk image virtual ke image Compute Engine, Anda harus menambahkan file disk image virtual ke Cloud Storage terlebih dahulu. Untuk mengetahui informasi selengkapnya, lihat Mengupload objek dari sistem file. Untuk mendapatkan performa yang lebih baik, sebaiknya Anda mengupload file disk image virtual ke bucket di region cloud yang sama tempat Anda ingin membuat image.
Memberikan izin yang diperlukan
Untuk mengimpor disk image virtual ke image Compute Engine, berikan izin seperti yang dijelaskan dalam tabel berikut.
Peran | Izin diperlukan | Deskripsi |
---|---|---|
Storage Object Viewer | roles/storage.objectViewer |
Berikan izin ini ke akun layanan project host agar dapat mengimpor disk image virtual ke image Compute Engine. |
Administrator Migrasi VM | roles/vmmigration.admin |
Berikan izin ini ke project host agar dapat membuat sumber Migrate to Virtual Machines baru, dan melakukan semua operasi migrasi lainnya. |
Akun Layanan VM Migration | roles/vmmigration.serviceAgent |
Berikan izin ini ke project target agar dapat membuat instance virtual machine (VM), disk, dan image yang dimigrasikan dalam project target. |
Memilih project target
Untuk menghosting image Compute Engine, Anda harus membuat atau memilih project target. Project target menentukan project tujuan untuk image Compute Engine. Untuk informasi selengkapnya tentang membuat atau memilih project target, lihat Menambahkan project target.
Mengimpor disk image virtual ke Compute Engine
Anda dapat mengimpor disk image virtual ke Compute Engine menggunakan perintah Google Cloud Console, Google Cloud CLI, atau REST API.
Konsol
Untuk mengimpor disk image virtual ke Compute Engine menggunakan Konsol Google Cloud, gunakan langkah-langkah berikut.
Buka halaman Migrate to Virtual Machines di Konsol Google Cloud.
Pilih tab Image Imports.
Klik Create Image.
Menentukan karakteristik gambar. Tabel berikut mencantumkan parameter yang dapat ditetapkan untuk gambar Anda.
Judul bagian Nama kolom Deskripsi Umum Nama Nama gambar yang ingin Anda buat. Untuk mengetahui informasi selengkapnya tentang aturan penamaan, lihat Konvensi penamaan. ID impor gambar ID yang merepresentasikan resource impor gambar. Saat Anda mengimpor gambar ke Compute Engine, Migrate to Virtual Machines membuat resource impor gambar terlebih dahulu. Resource impor gambar mewakili proses impor gambar. Anda dapat menggunakan ID impor Gambar untuk mendapatkan link ke gambar yang diimpor sebagai bagian dari proses impor gambar. File Cloud Storage sumber File tempat Anda ingin mengimpor gambar. Klik Browse untuk melihat daftar bucket dalam project saat ini, lalu pilih file tempat Anda ingin mengimpor gambar.
Jika ingin mengimpor gambar dari bucket dari project lain, Anda harus memasukkan jalurnya dalam format bucket/folder/file. Untuk mendapatkan jalur objek di dalam bucket, baca bagian Melihat metadata objek. Saat Anda menyalin jalur, pastikan Anda tidak menyalin awalangs://
.
Perhatikan bahwa Anda hanya dapat mengimpor gambar dari file.vmdk
dan.tar.gz
.Region Region tempat Anda ingin membuat gambar. Untuk mengetahui daftar region yang didukung, lihat Region dan zona. Project target Project target tempat Anda ingin membuat image. Jika Anda belum menambahkan project target, lakukan menggunakan petunjuk yang diberikan dalam Menambahkan project target. Kelompok (Opsional) Pilih kelompok gambar. Compute Engine menyediakan kelompok image untuk membantu memastikan sistem otomatisasi Anda dapat mereferensikan image terbaru. Sebagai administrator, Anda dapat mengelompokkan kumpulan gambar sebagai kelompok gambar. Untuk informasi selengkapnya, lihat Kelompok gambar publik. Deskripsi (Opsional) Tambahkan deskripsi untuk gambar. Lewati adaptasi OS Untuk melewati adaptasi OS, klik Lewati adaptasi OS ke posisi aktif.
Agar berfungsi dengan baik di Google Cloud, VM yang dibuat dari image yang diimpor harus diubah pada konfigurasinya. Perubahan ini disebut sebagai adaptasi OS. Migrate to Virtual Machines melakukan adaptasi OS secara otomatis dalam proses impor gambar. Untuk mengetahui informasi selengkapnya, baca artikel Menyesuaikan instance VM untuk dijalankan di Google Cloud.{i>Generalisasi<i} (Generalisasi) Untuk menggeneralisasi gambar, klik tombol Generalize ke posisi aktif. Saat Anda membuat instance dari image, Windows akan menambahkan beberapa informasi unik ke instance tersebut. Generalisasi adalah proses yang menghapus informasi ini sehingga Anda dapat membuat beberapa instance dari gambar yang sama. Lisensi Jenis lisensi Compute Engine mendukung lisensi bayar sesuai penggunaan (PAYG) dan gunakan lisensi Anda sendiri (BYOL) untuk VM yang di-deploy. Jenis lisensi default untuk VM yang dimigrasikan akan ditetapkan oleh Migrate to Virtual Machines berdasarkan sistem operasi yang dimigrasikan, seperti yang dijelaskan di Sistem operasi yang didukung.
Jika sistem operasi Anda mendukung beberapa jenis lisensi, Anda dapat mengganti jenis lisensi default untuk menentukan jenis lisensi PAYG atau BYOL secara eksplisit.
Lisensi tambahan Lisensi tambahan Anda dapat menambahkan hingga 10 lisensi tambahan ke instance VM yang dibuat dari gambar yang diimpor menggunakan format URL yang valid. Misalnya, Anda dapat menambahkan lisensi tambahan menggunakan format URL berikut:
https://www.googleapis.com/compute/beta/projects/windows-sql-cloud/global/licenses/sql-server-2012-enterprise
Label Untuk mengatur project, tambahkan label sebagai key-value pair ke resource Anda. Lihat Mengatur resource menggunakan label. Enkripsi Kunci enkripsi yang dikelola Google Pilih opsi ini untuk menggunakan kunci enkripsi yang dikelola Google guna mengenkripsi data Anda selama proses impor. Untuk informasi selengkapnya, lihat mengenkripsi data saat dalam penyimpanan. Kunci enkripsi yang dikelola pelanggan Pilih opsi ini untuk menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) guna mengenkripsi data Anda selama proses impor, dan data image yang dibuat oleh proses impor. Jika memiliki persyaratan kepatuhan atau peraturan khusus terkait kunci yang melindungi data, Anda dapat menggunakan CMEK untuk mengenkripsi dan mendekripsi data. Kunci enkripsi ini dibuat, dikelola, dan dimiliki oleh Anda. Untuk mengetahui informasi selengkapnya, lihat Melindungi resource dengan menggunakan kunci Cloud KMS.
Saat menambahkan CMEK, Anda harus memberikan izin seperti yang dijelaskan dalam tabel berikut.Peran Izin diperlukan Deskripsi Akun Layanan Cloud VM Migration roles/vmmigration.serviceAgen
Berikan izin ini ke akun layanan Compute Engine untuk mengenkripsi data image yang dibuat selama proses impor. Agen Layanan Compute Engine roles/compute.serviceAgent
Berikan izin ini ke agen layanan Migrate to Virtual Machines untuk mengenkripsi data selama proses impor. Pilih Create.
gcloud
Untuk mengimpor disk image virtual ke Compute Engine menggunakan Google Cloud CLI, gunakan permintaan berikut.
gcloud alpha migration vms image-imports create IMAGE_NAME \ --source-file=SOURCE_FILE \ --target-project=projects/HOST_PROJECT_ID/locations/global/targetProjects/TARGET_PROJECT
Ganti kode berikut:
HOST_PROJECT_ID
: nama project host tempat Anda ingin memigrasikan disk image virtual.REGION_ID
: region tempat Anda ingin menjalankan proses impor gambar. Gambar dibuat di multi-region terdekat. Jika Anda ingin gambar dibuat di suatu region, pastikansingleRegionStorage
disetel ke benar (true). Untuk mengetahui daftar region yang didukung, lihat Region dan Zona.SOURCE_FILE
: file tempat Anda ingin mengimpor gambar. Masukkan jalur dalam format gs://bucket/folder/file. Untuk mendapatkan jalur objek di dalam bucket, baca Melihat metadata objek. Perhatikan bahwa Anda hanya dapat mengimpor gambar dari file.vmdk
dan.tar.gz
.IMAGE_NAME
: nama gambar yang ingin Anda buat. Untuk informasi selengkapnya tentang aturan penamaan, lihat Konvensi penamaan.TARGET_PROJECT
: project target tempat Anda ingin membuat image. Jika Anda belum menambahkan project target, lakukan menggunakan petunjuk yang diberikan dalam Menambahkan project target.
Untuk mengetahui informasi selengkapnya, lihat gcloud alpha migration vms image-imports.
REST
Untuk mengimpor disk image virtual ke Compute Engine menggunakan REST API, ikuti langkah-langkah berikut.
Buat resource impor gambar menggunakan permintaan berikut.
POST https://vmmigration.googleapis.com/v1/projects/HOST_PROJECT_ID/locations/REGION_ID/imageImports?imageImportId=IMPORT_NAME { "cloudStorageUri": "SOURCE_FILE", "diskImageTargetDefaults": { "imageName": "IMAGE_NAME", "targetProject": "projects/HOST_PROJECT_ID/locations/global/targetProjects/TARGET_PROJECT", ... } }
Ganti kode berikut:
HOST_PROJECT_ID
: nama project host tempat Anda ingin memigrasikan disk image virtual.REGION_ID
: region tempat Anda ingin menjalankan proses impor gambar. Gambar dibuat di multi-region terdekat. Jika Anda ingin gambar dibuat di suatu region, pastikansingleRegionStorage
disetel ke benar (true). Untuk mengetahui daftar region yang didukung, lihat Region dan Zona.SOURCE_FILE
: file tempat Anda ingin mengimpor gambar. Masukkan jalur dalam format gs://bucket/folder/file. Untuk mendapatkan jalur objek di dalam bucket, baca Melihat metadata objek. Perhatikan bahwa Anda hanya dapat mengimpor gambar dari file.vmdk
dan.tar.gz
.IMAGE_NAME
: nama gambar yang ingin Anda buat. Untuk informasi selengkapnya tentang aturan penamaan, lihat Konvensi penamaan.TARGET_PROJECT
: project target tempat Anda ingin membuat image. Jika Anda belum menambahkan project target, lakukan menggunakan petunjuk yang diberikan dalam Menambahkan project target.
Dalam contoh ini,
IMPORT_NAME
adalah ID yang mewakili resource impor gambar. Saat Anda mengimpor gambar ke Compute Engine, Migrate to Virtual Machines membuat resource impor gambar terlebih dahulu. Resource impor gambar mewakili proses impor gambar. Anda dapat menggunakanIMPORT_NAME
untuk mendapatkan link ke gambar yang diimpor sebagai bagian dari proses impor gambar.Lihat tabel berikut untuk mengetahui daftar lengkap kolom permintaan pembuatan impor gambar yang didukung.
Nama kolom Deskripsi cloudStorageUri
string
Jalur file tempat Anda ingin mengimpor gambar. Masukkan jalur dalam format gs://bucket/folder/file. Untuk mendapatkan jalur objek di dalam bucket, baca bagian Melihat metadata objek.
Perhatikan bahwa Anda hanya dapat mengimpor gambar dari file.vmdk
dan.tar.gz
.diskImageTargetDefaults.targetProject
string
JalurTargetProject
. Project target tempat Anda ingin membuat image. Untuk informasi selengkapnya, lihat referensi API project target. Misalnya,
projects/HOST_PROJECT_ID/locations/global/targetProjects/TARGET_PROJECT
Pada contoh, ganti:HOST_PROJECT_ID
: nama project host tempat Anda ingin memigrasikan disk image virtual.TARGET_PROJECT
: project target tempat Anda ingin membuat image.
diskImageTargetDefaults.imageName
string
Nama gambar yang akan dibuat. Untuk mengetahui informasi selengkapnya tentang aturan penamaan, lihat konvensi penamaan resource.diskImageTargetDefaults.description
string
(Opsional) Deskripsi gambar.diskImageTargetDefaults.familyName
string
(Opsional) Pilih kelompok gambar. Compute Engine menyediakan kelompok image untuk membantu memastikan sistem otomatisasi Anda dapat mereferensikan image terbaru. Sebagai administrator, Anda dapat mengelompokkan kumpulan gambar sebagai kelompok gambar. Untuk informasi selengkapnya, lihat Kelompok gambar publik. Untuk informasi selengkapnya, lihat Kelompok gambar publik.diskImageTargetDefaults.labels
map (key: string, value: string)
Untuk mengatur project, tambahkan label sebagai key-value pair ke resource Anda. Lihat Pelabelan resource.diskImageTargetDefaults.additionalLicenses
string[]
Anda dapat menambahkan hingga 10 lisensi tambahan ke instance VM yang dibuat dari gambar yang diimpor menggunakan format URL yang valid. Misalnya, Anda dapat menambahkan lisensi tambahan menggunakan format URL berikut:
https://www.googleapis.com/compute/beta/projects/windows-sql-cloud/global/licenses/sql-server-2012-enterprise
diskImageTargetDefaults.singleRegionStorage
boolean
Tetapkan tanda ini ke benar (true) jika Anda inginstorageLocations
gambar menjadi region. Jika tanda ini disetel ke salah (false), multi-region terdekat akan dipilih.diskImageTargetDefaults.dataDiskImageImport
boolean
Tetapkan tanda ini ke benar (true) jika Anda ingin melewati adaptasi OS.
Agar berfungsi dengan baik di Google Cloud, VM yang dibuat dari image yang diimpor harus diubah pada konfigurasinya. Perubahan ini disebut sebagai adaptasi OS. Migrate to Virtual Machines melakukan adaptasi OS secara otomatis dalam proses impor gambar. Untuk mengetahui informasi selengkapnya, baca artikel Menyesuaikan instance VM untuk dijalankan di Google Cloud.diskImageTargetDefaults.osAdaptationParameters.licenseType
string
Jenis lisensi yang ingin digunakan untuk image Anda. Compute Engine mendukung lisensi bayar sesuai penggunaan (PAYG) dan bring your own license (BYOL) untuk VM yang di-deploy. Jenis lisensi default untuk VM yang dimigrasikan ditetapkan oleh Migrate to Virtual Machines berdasarkan sistem operasi yang dimigrasikan, seperti dijelaskan dalam Sistem operasi yang didukung.
Jika sistem operasi Anda mendukung beberapa jenis lisensi, Anda dapat mengganti jenis lisensi default untuk menentukan jenis lisensi PAYG atau BYOL secara eksplisit.
diskImageTargetDefaults.osAdaptationParameters.generalize
boolean
Tetapkan tanda ini ke benar (true) jika Anda ingin menggeneralisasi gambar.
Saat Anda membuat instance dari gambar, Windows akan menambahkan beberapa informasi unik ke instance tersebut. Generalisasi adalah proses yang menghapus informasi ini sehingga Anda dapat membuat beberapa instance dari gambar yang sama.diskImageTargetDefaults.encryption
string
Kunci enkripsi yang dikelola Google yang ingin Anda gunakan untuk mengenkripsi data selama proses impor. Untuk informasi selengkapnya, lihat mengenkripsi data saat dalam penyimpanan.encryption
string
Pilih opsi ini untuk menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) guna mengenkripsi data Anda selama proses impor, dan data gambar yang dibuat selama proses impor. Jika memiliki persyaratan kepatuhan atau peraturan khusus terkait kunci yang melindungi data, Anda dapat menggunakan CMEK untuk mengenkripsi dan mendekripsi data. Kunci enkripsi ini dibuat, dikelola, dan dimiliki oleh Anda. Untuk mengetahui informasi selengkapnya, lihat Melindungi resource dengan menggunakan kunci Cloud KMS.
Saat menambahkan CMEK, Anda harus memberikan izin seperti yang dijelaskan dalam tabel berikut.Peran Izin diperlukan Deskripsi Akun Layanan Cloud VM Migration roles/vmmigration.serviceAgent Berikan izin ini ke akun layanan Compute Engine untuk mengenkripsi data image yang dibuat selama proses impor. Agen Layanan Compute Engine roles/compute.serviceAgent Berikan izin ini ke agen layanan Migrate to Virtual Machines untuk mengenkripsi data selama proses impor. Anda akan melihat respons yang mirip dengan contoh respons berikut.
{ "name": "projects/HOST_PROJECT_ID/locations/REGION_ID/operations/OPERATION_ID", "metadata": { "createTime": "2023-10-31T09:12:26.94928636Z", "target": "projects/HOST_PROJECT_ID/locations/us-central1/imageImports/IMPORT_NAME", "verb": "create", "apiVersion": "v1", "@type": "type.googleapis.com/google.cloud.vmmigration.v1.OperationMetadata" } }
Periksa apakah tugas impor gambar telah selesai dengan melakukan polling operasi menggunakan perintah berikut.
GET https://vmmigration.googleapis.com/v1/projects/HOST_PROJECT_ID/locations/REGION_ID/operations/OPERATION_ID
Ganti kode berikut:
HOST_PROJECT_ID
: nama project host tempat Anda memigrasikan disk image virtual.REGION_ID
: region tempat Anda ingin menjalankan proses impor gambar. Gambar dibuat di multi-region terdekat. Jika Anda ingin gambar dibuat di suatu region, pastikansingleRegionStorage
disetel ke benar (true). Untuk mengetahui daftar region yang didukung, lihat Region dan Zona.OPERATION_ID
: ID operasi tugas migrasi.
Anda akan melihat respons penyelesaian operasi yang mirip dengan contoh respons berikut.
{ "done": true, "name": "projects/HOST_PROJECT_ID/locations/REGION_ID/operations/OPERATION_ID", "response": { "@type": "type.googleapis.com/google.cloud.vmmigration.v1.ImageImport", "name": "projects/<HOST_PROJECT_ID>/locations/us-central1/imageImports/IMPORT_NAME", "cloudStorageUri": "SOURCE_FILE", "createTime": "2023-10-31T09:04:04.413664947Z", "diskImageTargetDefaults": { "imageName": "IMAGE_NAME", "targetProject": "projects/HOST_PROJECT_ID/locations/global/targetProjects/TARGET_PROJECT" }, "recentImageImportJobs": [ { "name": "projects/HOST_PROJECT_ID/locations/us-central1/imageImports/IMPORT_NAME/imageImportJobs/image-import-job", "diskImageTargetDetails": { "imageName": "IMAGE_NAME", "targetProject": "projects/HOST_PROJECT_ID/locations/global/targetProjects/TARGET_PROJECT" }, "state": "PENDING" } ] }, "metadata": { "createTime": "2023-10-31T09:04:04.416740716Z", "endTime": "2023-10-31T09:05:36.79987142Z", "target": "projects/HOST_PROJECT_ID/locations/us-central1/imageImports/IMPORT_NAME", "verb": "create", "apiVersion": "v1", "@type": "type.googleapis.com/google.cloud.vmmigration.v1.OperationMetadata" } }
Pantau tugas impor gambar agar selesai menggunakan perintah berikut.
GET https://vmmigration.googleapis.com/v1/projects/HOST_PROJECT_ID/locations/REGION_ID/imageImports/IMPORT_NAME/imageImportJobs/image-import-job
Ganti kode berikut:
HOST_PROJECT_ID
: nama project host tempat Anda memigrasikan disk image virtual.REGION_ID
: region tempat Anda ingin menjalankan proses impor gambar. Gambar dibuat di multi-region terdekat. Jika Anda ingin gambar dibuat di suatu region, pastikansingleRegionStorage
disetel ke benar (true). Untuk mengetahui daftar region yang didukung, lihat Region dan Zona.IMPORT_NAME
: ID yang merepresentasikan resource impor gambar. Saat Anda mengimpor gambar ke Compute Engine, Migrate to Virtual Machines membuat resource impor gambar terlebih dahulu. Resource impor gambar mewakili proses impor gambar. Anda dapat menggunakanIMPORT_NAME
untuk mendapatkan link ke gambar yang diimpor sebagai bagian dari proses impor gambar.
Anda akan melihat respons penyelesaian tugas yang mirip dengan contoh respons berikut.
{ "createTime":"2023-10-31T09:12:27.053788394Z", "createdResources":[ "https://www.googleapis.com/compute/v1/projects/USER_PROJECT/global/images/IMAGE_NAME" ], "diskImageTargetDetails": { "imageName":"IMAGE_NAME", "targetProject":"projects/HOST_PROJECT_ID/locations/global/targetProjects/TARGET_PROJECT" }, "endTime":"2023-10-31T09:16:50.224865783Z", "name":"projects/HOST_PROJECT_ID/locations/us-central1/imageImports/IMPORT_NAME/imageImportJobs/image-import-job", "state":"SUCCEEDED" }