Dokumen ini menjelaskan cara mengaktifkan virtualisasi bertingkat pada instance virtual machine (VM) dan cara mengonfirmasi bahwa Anda dapat membuat VM bertingkat. Aktifkan virtualisasi bertingkat di VM menggunakan salah satu metode berikut:
Direkomendasikan. Aktifkan virtualisasi bertingkat langsung di VM baru atau yang sudah ada dengan menetapkan kolom
enableNestedVirtualization
ketrue
saat membuat VM atau dengan mengupdate VM. Ini adalah metode yang direkomendasikan karena tidak memerlukan Anda membuat image kustom atau menggunakan kunci lisensi khusus.Aktifkan virtualisasi bertingkat menggunakan kunci lisensi khusus dengan membuat disk booting, membuat image kustom dengan kunci lisensi virtualisasi bertingkat khusus, lalu membuat VM yang menggunakan image kustom.
Sebelum memulai
-
Jika Anda belum melakukannya, siapkan autentikasi.
Autentikasi adalah
proses verifikasi identitas Anda untuk mengakses layanan dan API Google Cloud.
Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
VM_NAME
: nama VM L1 baru dengan virtualisasi bertingkat yang diaktifkanZONE
: zona untuk VM L1 baru dengan virtualisasi bertingkat yang diaktifkanPROJECT_ID
: ID projectZONE
: zona untuk VM L1 baru dengan virtualisasi bertingkat yang diaktifkanVM_NAME
: nama VM L1 baru dengan virtualisasi bertingkat yang diaktifkanEkspor properti VM menggunakan perintah
gcloud compute instances export
berikut:gcloud compute instances export VM_NAME \ --destination=YAML_FILE_PATH \ --zone=ZONE
Ganti kode berikut:
VM_NAME
: nama VM yang propertinya akan dieksporYAML_FILE_PATH
: jalur dan nama file file .yaml tempat menyimpan data konfigurasi yang dieksporZONE
: zona yang berisi VM
Dalam file konfigurasi VM yang disimpan di FILE_PATH, update nilai untuk
enableNestedVirtualization
. Jika nilai tidak ada dalam file, tambahkan hal berikut:advancedMachineFeatures: enableNestedVirtualization: true
Perbarui VM dengan nilai untuk
enableNestedVirtualization
menggunakan perintahgcloud compute instances update-from-file
berikut:gcloud compute instances update-from-file VM_NAME \ --source=FILE_PATH \ --most-disruptive-allowed-action=RESTART \ --zone=ZONE
Ganti kode berikut:
VM_NAME
: nama VM yang diupdateFILE_PATH
: jalur ke file konfigurasi VM yang diperbaruiZONE
: zona yang berisi VM yang diupdate
PROJECT_ID
: ID projectZONE
: zona yang berisi VMVM_NAME
: nama VM yang propertinya akan dieksporBuat disk booting dari image publik atau dari image kustom. Contoh berikut menggunakan
debian-cloud
untuk project image dandebian-10
untuk kelompok image. Jika Anda sudah memiliki instance VM dengan disk yang ada, Anda dapat melewati langkah ini.gcloud
gcloud compute disks create DISK_NAME \ --zone=ZONE \ --image-project=debian-cloud \ --image-family=debian-10
Ganti kode berikut:
DISK_NAME
: nama disk baruZONE
: zona tempat disk akan dibuat
REST
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks { ... "name": "DISK_NAME", "sourceImage": "projects/debian-cloud/global/images/family/debian-10", ... }
Ganti kode berikut:
PROJECT_ID
: ID projectZONE
: zona tempat disk akan dibuatDISK_NAME
: nama disk baru
Buat image kustom dengan kunci lisensi khusus yang diperlukan untuk virtualisasi bertingkat.
gcloud
gcloud compute images create IMAGE_NAME \ --source-disk DISK_NAME \ --source-disk-zone ZONE \ --licenses "https://www.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx"
Ganti kode berikut:
IMAGE_NAME
: nama image baruDISK_NAME
: nama disk yang dibuat sebelumnyaZONE
: zona tempat membuat image
REST
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images { ... "licenses": ["projects/vm-options/global/licenses/enable-vmx"], "name": "IMAGE_NAME", "sourceDisk": "zones/ZONE/disks/DISK_NAME", ... }
Ganti kode berikut:
PROJECT_ID
: ID projectIMAGE_NAME
: nama image baruZONE
: zona tempat membuat imageDISK_NAME
: nama disk yang dibuat sebelumnya
Secara opsional, hapus disk sumber setelah membuat image dengan lisensi khusus.
gcloud
gcloud compute disks delete DISK_NAME --zone=ZONE
Ganti kode berikut:
DISK_NAME
: nama disk yang akan dihapusZONE
: zona yang berisi disk yang akan dihapus
REST
DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME
Ganti kode berikut:
PROJECT_ID
: ID projectZONE
: zona yang berisi disk yang akan dihapusDISK_NAME
: nama disk yang akan dihapus
Buat VM yang menggunakan image baru dengan lisensi khusus. Platform CPU minimum harus
"Intel Haswell"
.gcloud
gcloud compute instances create VM_NAME \ --zone=ZONE \ --min-cpu-platform "Intel Haswell" \ --image IMAGE_NAME
Ganti kode berikut:
VM_NAME
: nama VMZONE
: zona untuk membuat VMIMAGE_NAME
: nama image yang dibuat sebelumnya
REST
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { ... "name": "VM_NAME", "minCpuPlatform": "Intel Haswell", "disks": [ { "initializeParams": { "sourceImage": "IMAGE_NAME" } } ] ... }
Ganti kode berikut:
PROJECT_ID
: ID projectVM_NAME
: nama VMZONE
: zona untuk membuat VMIMAGE_NAME
: nama image yang dibuat sebelumnya
Hubungkan ke instance VM.
gcloud compute ssh VM_NAME
Ganti
VM_NAME
dengan nama VM yang akan dihubungkan.Pastikan virtualisasi bertingkat diaktifkan. Respons apa pun selain
0
akan mengonfirmasi bahwa virtualisasi bertingkat diaktifkan.grep -cw vmx /proc/cpuinfo
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.
Mengaktifkan virtualisasi bertingkat langsung di VM baru
Aktifkan virtualisasi bertingkat langsung di VM menggunakan prosedur berikut.
gcloud
Buat VM L1 dengan virtualisasi bertingkat yang diaktifkan menggunakan perintah
gcloud compute instances create
berikut:gcloud compute instances create VM_NAME \ --enable-nested-virtualization \ --zone=ZONE \ --min-cpu-platform="Intel Haswell"
Ganti kode berikut:
REST
Buat VM L1 dengan virtualisasi bertingkat yang diaktifkan menggunakan metode
instances.insert
berikut:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { ... "name": "VM_NAME", ... "minCpuPlatform": "Intel Haswell", "advancedMachineFeatures": { "enableNestedVirtualization": true }, ... }
Ganti kode berikut:
Mengaktifkan virtualisasi bertingkat langsung di VM yang ada
Aktifkan virtualisasi bertingkat di VM yang ada menggunakan prosedur berikut.
gcloud
REST
Perbarui nilai untuk
enableNestedVirtualization
menggunakan metodeinstances.update
berikut:PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME?most_disruptive_allowed_action=RESTART { ⋮ "advanced_machine_features": { ⋮ "enableNestedVirtualization": "true" }, ⋮ }
Ganti kode berikut:
Mengaktifkan virtualisasi bertingkat menggunakan kunci lisensi khusus
Anda dapat mengaktifkan virtualisasi bertingkat di VM dengan membuat image kustom dengan kunci lisensi khusus yang mengaktifkan VMX di VM L1. Kunci lisensi tidak dikenai biaya tambahan.
Pastikan virtualisasi bertingkat diaktifkan di VM
Langkah berikutnya
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-11-27 UTC.
-