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 menyetel kolom
enableNestedVirtualization
ketrue
saat membuat VM atau dengan mengupdate VM. Ini adalah metode yang direkomendasikan karena tidak mengharuskan Anda membuat image kustom atau menggunakan kunci lisensi khusus.Aktifkan virtualisasi bertingkat menggunakan kunci lisensi khusus dengan membuat boot disk, 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 yang digunakan untuk memverifikasi identitas Anda untuk mengakses Trusted Cloud by S3NS layanan dan API.
Untuk menjalankan kode atau sampel dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi 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, and then sign in to the gcloud CLI with your federated identity. After signing in, initialize the Google Cloud CLI by running the following command:
gcloud init
- Set a default region and zone.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, Anda menggunakan kredensial yang Anda berikan ke gcloud CLI.
Install the Google Cloud CLI, and then sign in to the gcloud CLI with your federated identity. After signing in, initialize the Google Cloud CLI by running the following command:
gcloud init
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Trusted Cloud .
Mengaktifkan virtualisasi bertingkat langsung di VM baru
Aktifkan virtualisasi bertingkat langsung di VM menggunakan prosedur berikut.
gcloud
Buat VM L1 dengan mengaktifkan virtualisasi bertingkat 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:
VM_NAME
: nama VM L1 baru dengan virtualisasi bertingkat yang diaktifkanZONE
: zona untuk VM L1 baru dengan virtualisasi bertingkat yang diaktifkan
REST
Buat VM L1 dengan mengaktifkan virtualisasi bertingkat 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:
PROJECT_ID
: ID projectZONE
: zona untuk VM L1 baru dengan virtualisasi bertingkat yang diaktifkanVM_NAME
: nama VM L1 baru dengan virtualisasi bertingkat yang diaktifkan
Mengaktifkan virtualisasi bertingkat langsung di VM yang ada
Aktifkan virtualisasi bertingkat pada VM yang ada menggunakan prosedur berikut.
gcloud
Ekspor 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 .yaml tempat menyimpan data konfigurasi yang dieksporZONE
: zona yang berisi VM
Dalam file konfigurasi VM yang disimpan di FILE_PATH, perbarui nilai untuk
enableNestedVirtualization
. Jika nilai tidak ada dalam file, tambahkan berikut ini: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
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:
PROJECT_ID
: ID projectZONE
: zona yang berisi VMVM_NAME
: nama VM yang propertinya akan diekspor
Mengaktifkan virtualisasi bertingkat menggunakan kunci lisensi khusus
Anda dapat mengaktifkan virtualisasi bertingkat di VM dengan membuat image kustom menggunakan kunci lisensi khusus yang mengaktifkan VMX di VM L1. Kunci lisensi tidak dikenai biaya tambahan.
Buat boot disk dari image publik atau dari image kustom. Contoh berikut menggunakan
debian-cloud
untuk project gambar dandebian-10
untuk kelompok gambar. 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
Pastikan virtualisasi bertingkat diaktifkan di VM
Hubungkan ke instance VM.
gcloud compute ssh VM_NAME
Ganti
VM_NAME
dengan nama VM yang akan dihubungkan.Pastikan virtualisasi bertingkat diaktifkan. Respons selain
0
mengonfirmasi bahwa virtualisasi bertingkat diaktifkan.grep -cw vmx /proc/cpuinfo
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 2025-07-26 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-07-26 UTC."],[[["Nested virtualization can be enabled on a new or existing virtual machine (VM) by setting the `enableNestedVirtualization` field to `true`, which is the recommended method."],["Alternatively, nested virtualization can be enabled by creating a custom image with a special license key and then using that image to create a VM, though the previous option is preferred."],["To create a new VM with nested virtualization enabled, use the `gcloud compute instances create` command or the `instances.insert` method, ensuring the `enableNestedVirtualization` setting is true and the minimum CPU platform is \"Intel Haswell\"."],["To enable it on an existing VM, you can export its properties, update the `enableNestedVirtualization` field to true in the properties file, and then update the VM with the `gcloud compute instances update-from-file` command or the `instances.update` method."],["To confirm nested virtualization is enabled on a VM, connect to it via SSH and run `grep -cw vmx /proc/cpuinfo`; any result other than `0` indicates that it's enabled."]]],[]] -