Untuk menggunakan GPU dengan Confidential VM, Anda harus membuat instance Confidential VM menggunakan model penyediaan spot atau flex-start berdasarkan jenis mesin a3-highgpu-1g dan menggunakan Intel TDX. Setelah membuat instance VM, Anda kemudian mengaktifkan mode confidential computing pada GPU yang terpasang.
Persyaratan kuota GPU
Sebelum membuat instance Confidential VM dengan GPU, pastikan Anda memiliki kuota GPU yang cukup yang dialokasikan ke project Anda. Google CloudAnda memerlukan kuota yang cukup dalam jenis kuota berikut untuk berhasil membuat instance VM Rahasia dengan GPU:
Kuota yang dapat di-preempt untuk model GPU yang ingin Anda buat di setiap region.
Kuota global untuk jumlah total GPU dari semua jenis di semua region.
Untuk meminta penambahan kuota GPU ini, lihat Meminta kuota preemptible dan Meminta kuota global.
Meminta kuota preemptible
Untuk meminta penambahan kuota GPU NVIDIA H100 preemptible regional, lakukan hal berikut:
Di konsol Google Cloud , buka halaman Quotas.
Di kotak Filter, masukkan
PREEMPTIBLE_NVIDIA_H100_GPUS
, lalu tekan tombol Enter atau Return.Di kolom Dimensi pada tabel, temukan baris dengan wilayah yang kuotanya ingin Anda tambah.
Di baris tersebut, klik
Tindakan lainnya, lalu klik Edit kuota.Di panel Perubahan kuota, masukkan jumlah GPU yang Anda inginkan di kotak Nilai baru.
Klik Submit request.
Meminta kuota global
Untuk meminta penambahan kuota global, lakukan hal berikut:
Di konsol Google Cloud , buka halaman Quotas.
Di kotak Filter, masukkan
GPUS_ALL_REGIONS
, lalu tekan tombol Enter atau Return.Di baris yang dihasilkan, klik
Tindakan lainnya, lalu klik Edit kuota.Di panel Perubahan kuota, masukkan jumlah GPU yang Anda inginkan di kotak Nilai baru.
Klik Submit request.
Yang terjadi setelah permintaan kuota
Jika permintaan kuota Anda berhasil, Anda akan menerima email persetujuan. Tunggu 15 menit setelah Anda menerima email, lalu muat ulang halaman Kuota untuk memeriksa kuota yang diperbarui. Jika kuota masih belum diperbarui setelah 15 menit, hubungi Cloud Customer Care.
Jika permintaan kuota Anda ditolak, Anda mungkin menerima email yang menjelaskan langkah-langkah selanjutnya yang dapat Anda lakukan. Untuk mengajukan permohonan kembali untuk mendapatkan kuota yang lebih besar, ikuti petunjuk dalam email tersebut.
Membuat instance Confidential VM dengan GPU
Untuk membuat instance VM menggunakan model spot atau flex-start, lakukan hal berikut:
Untuk menggunakan model spot, buat instance Spot VM yang dioptimalkan akselerator. Untuk mengetahui langkah-langkah detailnya, lihat Model spot.
Untuk menggunakan model mulai fleksibel, buat grup instance terkelola (MIG). Untuk mengetahui langkah-langkah mendetail, lihat Model mulai fleksibel.
Model spot
gcloud
Untuk membuat instance VM Spot yang dioptimalkan akselerator dengan
gcloud CLI, gunakan
sub-perintah instances create
dengan flag --provisioning-model
.
gcloud compute instances create INSTANCE_NAME \
--provisioning-model=SPOT \
--confidential-compute-type=TDX \
--machine-type=a3-highgpu-1g \
--maintenance-policy=TERMINATE \
--zone=ZONE_NAME \
--image-project=IMAGE_PROJECT \
--image-family=IMAGE_FAMILY_NAME \
--boot-disk-size=30G
Berikan nilai berikut:
INSTANCE_NAME
: Nama instance VM baru.IMAGE_PROJECT
: Project yang berisi image sistem operasi yang didukung. Sebaiknya gunakan project gambarubuntu-os-cloud
untuk image Ubuntu. Anda dapat secara opsional menggunakan project imageconfidential-vm-images
untuk image Container-Optimized OS.IMAGE_FAMILY_NAME
: Kelompok untuk image sistem operasi yang didukung Confidential VM. Saat menggunakan project imageubuntu-os-cloud
, sebaiknya gunakan kelompok imageubuntu-2204-lts
. Untuk image Container-Optimized OS dari projectconfidential-vm-images
, gunakan kelompok imagecos-tdx-113-lts
.ZONE_NAME
: Zona yang didukung untuk membuat VM.
REST
Untuk membuat instance Spot VM, kirim permintaan POST berikut dengan konten isi yang sesuai.
Metode HTTP dan URL:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
Meminta isi JSON:
{
"name": "INSTANCE_NAME",
"confidentialInstanceConfig": {
"confidentialInstanceType": "TDX"
},
"machineType": "zones/ZONE_NAME/machineTypes/a3-highgpu-1g",
"scheduling": {
"onHostMaintenance": "TERMINATE",
"provisioningModel": "SPOT"
},
"disks": [
{
"autoDelete": true,
"boot": true,
"index": 0,
"initializeParams": {
"diskSizeGb": "30",
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY_NAME"
},
"kind": "compute#attachedDisk",
"mode": "READ_WRITE",
"type": "PERSISTENT"
}
],
"networkInterfaces": [
{
"accessConfigs": [
{
"name": "external-nat",
"type": "ONE_TO_ONE_NAT",
"kind": "compute#accessConfig",
"networkTier": "PREMIUM"
}
],
"kind": "compute#networkInterface",
"name": "nic0",
"network": "projects/PROJECT_ID/global/networks/default"
}
]
}
Berikan nilai berikut:
INSTANCE_NAME
: Nama template instance VM baru.IMAGE_PROJECT
: Project yang berisi image sistem operasi yang didukung. Sebaiknya gunakan project gambarubuntu-os-cloud
untuk image Ubuntu. Anda dapat secara opsional menggunakan project imageconfidential-vm-images
untuk image Container-Optimized OS.IMAGE_FAMILY_NAME
: Kelompok untuk image sistem operasi yang didukung Confidential VM. Saat menggunakan project imageubuntu-os-cloud
, sebaiknya gunakan kelompok imageubuntu-2204-lts
. Untuk image Container-Optimized OS dari projectconfidential-vm-images
, gunakan kelompok imagecos-tdx-113-lts
.PROJECT_ID
: Opsional. ID project tempat VM dibuat.ZONE_NAME
: Zona yang didukung untuk membuat VM.
Model flex-start
Untuk menggunakan model mulai fleksibel, Anda harus membuat template instance terlebih dahulu, lalu membuat grup instance terkelola (MIG) menggunakan template tersebut. Kemudian, Anda dapat menambahkan instance VM GPU ke MIG menggunakan permintaan pengubahan ukuran.
Menggunakan permintaan pengubahan ukuran MIG dengan model penyediaan flex-start akan meningkatkan ketersediaan instance VM GPU. Untuk mengetahui informasi selengkapnya, lihat Tentang permintaan pengubahan ukuran di MIG.
Sebelum memulai
Lihat prasyarat untuk membuat MIG dan batasan untuk membuat permintaan pengubahan ukuran di MIG.
Membuat MIG dengan instance VM GPU
Untuk membuat template instance, lalu menggunakan template tersebut untuk membuat MIG, selesaikan langkah-langkah berikut.
Membuat template instance.
gcloud
gcloud beta compute instance-templates create INSTANCE_TEMPLATE_NAME \ --provisioning-model=FLEX_START \ --confidential-compute-type=TDX \ --machine-type=a3-highgpu-1g \ --maintenance-policy=TERMINATE \ --image-project=IMAGE_PROJECT \ --image-family=IMAGE_FAMILY_NAME \ --reservation-affinity=none \ --boot-disk-size=30G \ --instance-termination-action=DELETE \ --max-run-duration=RUN_DURATION \ --project=PROJECT_ID
Untuk mengaktifkan Booting Aman, Anda dapat menggunakan flag
--shielded-secure-boot
untuk booting instance VM (opsional).Berikan nilai berikut:
INSTANCE_TEMPLATE_NAME
: Nama template instance VM baru.IMAGE_PROJECT
: Project yang berisi image sistem operasi yang didukung. Sebaiknya gunakan project gambarubuntu-os-cloud
untuk image Ubuntu. Anda dapat secara opsional menggunakan project imageconfidential-vm-images
untuk image Container-Optimized OS.IMAGE_FAMILY_NAME
: Kelompok untuk image sistem operasi yang didukung Confidential VM. Saat menggunakan project imageubuntu-os-cloud
, sebaiknya gunakan kelompok imageubuntu-2204-lts
. Untuk image Container-Optimized OS dari projectconfidential-vm-images
, gunakan kelompok imagecos-tdx-113-lts
.RUN_DURATION
: Durasi yang Anda inginkan untuk menjalankan instance VM yang diminta. Anda harus memformat nilai sebagai jumlah hari, jam, menit, atau detik, diikuti dengand
,h
,m
, dans
. Misalnya, tentukan30m
selama 30 menit atau1d2h3m4s
untuk satu hari, dua jam, tiga menit, dan empat detik. Nilai harus berada di antara 10 menit dan tujuh hari.PROJECT_ID
: Opsional. ID project tempat VM dibuat.
REST
Untuk membuat template instance Confidential VM, kirim permintaan POST berikut dengan konten isi yang sesuai.
Metode HTTP dan URL:
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/ZONE_NAME/instanceTemplates
Meminta isi JSON:
{ "name": "INSTANCE_TEMPLATE_NAME", "properties": { "confidentialInstanceConfig": { "confidentialInstanceType": "TDX" }, "machineType": "a3-highgpu-1g", "scheduling": { "instanceTerminationAction": "DELETE", "maxRunDuration": { "seconds": RUN_DURATION }, "automaticRestart": true, "onHostMaintenance": "TERMINATE", "provisioningModel": "FLEX_START", "preemptible": false }, "disks": [ { "autoDelete": true, "index": 0, "boot": true, "kind": "compute#attachedDisk", "mode": "READ_WRITE", "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY_NAME", "diskSizeGb": "30" }, "type": "PERSISTENT" } ], "networkInterfaces": [ { "accessConfigs": [ { "kind": "compute#accessConfig", "name": "external-nat", "networkTier": "PREMIUM", "type": "ONE_TO_ONE_NAT" } ], "kind": "compute#networkInterface", "name": "nic0", "network": "projects/PROJECT_ID/global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "NO_RESERVATION" }, "canIpForward": false } }
Untuk mengaktifkan Booting Aman, Anda dapat secara opsional menyertakan objek berikut untuk booting instance VM.
"shieldedInstanceConfig": { "enableIntegrityMonitoring": true, "enableSecureBoot": true, "enableVtpm": true }
Berikan nilai berikut:
PROJECT_ID
: Opsional. ID project tempat VM dibuat.ZONE_NAME
: Zona yang didukung untuk membuat MIG.INSTANCE_TEMPLATE_NAME
: Nama template instance VM baru.IMAGE_PROJECT
: Project yang berisi image sistem operasi yang didukung. Sebaiknya gunakan project gambarubuntu-os-cloud
untuk image Ubuntu. Anda dapat secara opsional menggunakan project imageconfidential-vm-images
untuk image Container-Optimized OS.IMAGE_FAMILY_NAME
: Kelompok untuk image sistem operasi yang didukung Confidential VM. Saat menggunakan project imageubuntu-os-cloud
, sebaiknya gunakan kelompok imageubuntu-2204-lts
. Untuk image Container-Optimized OS dari projectconfidential-vm-images
, gunakan kelompok imagecos-tdx-113-lts
.RUN_DURATION
: Durasi, dalam detik, yang Anda inginkan agar instance VM yang diminta berjalan. Nilai harus antara600
dan604800
detik, yang sesuai dengan rentang antara 10 menit dan tujuh hari.
Buat MIG dan permintaan perubahan ukuran untuk menambahkan instance VM GPU sekaligus.
Mencantumkan instance yang ada di MIG.
gcloud
gcloud compute instance-groups managed list-instances INSTANCE_GROUP_NAME \ --zone=ZONE_NAME \ --project=PROJECT_ID
Berikan nilai berikut:
INSTANCE_GROUP_NAME
: Nama MIG.ZONE_NAME
: Zona yang didukung untuk mendapatkan daftar instance VM.PROJECT_ID
: Opsional. ID project untuk mendapatkan daftar instance VM.
REST
Untuk mencantumkan semua instance, kirim permintaan GET berikut.
Metode HTTP dan URL:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates
Untuk mempersempit daftar instance ke zona tertentu, kirim permintaan GET berikut.
Metode HTTP dan URL:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/ZONE_NAME/instanceTemplates
Berikan nilai berikut:
ZONE_NAME
: Zona yang didukung untuk mendapatkan daftar instance VM.PROJECT_ID
: ID project tempat daftar instance VM diambil.
Mengaktifkan mode komputasi rahasia di GPU
Hubungkan ke instance VM di MIG menggunakan perintah gcloud compute ssh.
gcloud compute ssh
Perbarui daftar paket dan instal alat serta library yang diperlukan.
sudo apt-get update --yes sudo apt-get install linux-headers-$(uname -r) sudo apt install -y build-essential libxml2 libncurses5-dev pkg-config libvulkan1 gcc-12
Instal driver GPU yang sesuai pada instance VM. Untuk instance VM yang mengaktifkan Booting Aman, lihat Menginstal driver GPU (VM Booting Aman). Sebaiknya gunakan versi driver
nvidia-driver-575-open
.Untuk mengonfigurasi komunikasi yang aman antara GPU dan driver GPU, aktifkan Linux Kernel Crypto API (LKCA).
echo "install nvidia /sbin/modprobe ecdsa_generic; /sbin/modprobe ecdh; /sbin/modprobe --ignore-install nvidia" | sudo tee /etc/modprobe.d/nvidia-lkca.conf sudo update-initramfs -u
Aktifkan mode persistensi untuk membuat koneksi Security Protocol and Data Model (SPDM) yang aman antara GPU dan driver GPU.
sudo test -f /usr/lib/systemd/system/nvidia-persistenced.service && sudo sed -i "s/no-persistence-mode/uvm-persistence-mode/g" /usr/lib/systemd/system/nvidia-persistenced.service sudo systemctl daemon-reload
Mulai ulang instance VM untuk menerapkan konfigurasi mode persistensi dan LKCA.
sudo reboot
(Opsional) Instal contoh CUDA berikut.
wget -O cuda-samples.tar.gz https://github.com/NVIDIA/cuda-samples/archive/refs/tags/v12.5.tar.gz tar xzvf cuda-samples.tar.gz
Langkah berikutnya
Pelajari cara memverifikasi bahwa mode rahasia diaktifkan di GPU.
Pelajari cara memeriksa kuota GPU Anda.
Baca artikel VM GPU dan kuota alokasi yang dapat dihentikan untuk memahami penggunaan kuota.