Membuat instance Confidential VM

Anda dapat membuat instance Confidential VM sebagai bagian dari pembuatan virtual machine Compute Engine baru.

Sebelum memulai

Sebelum membuat instance Confidential VM, Anda perlu menyiapkan lingkungan sebagai berikut:

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Compute Engine API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Compute Engine API.

    Enable the API

  8. Opsional: Untuk menggunakan contoh gcloud CLI dalam panduan ini:
  9. Opsional: Untuk menggunakan contoh API dalam panduan ini, siapkan autentikasi untuk permintaan Anda. Pelajari lebih lanjut OAuth 2.0.

Membuat instance

Konsol

Untuk membuat VM AMD SEV Confidential dengan konsol Google Cloud, selesaikan langkah-langkah berikut.

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik Create instance.

  3. Di bagian Confidential VM service, klik Enable.

  4. Dalam dialog Enable Confidential Computing, tinjau daftar setelan yang diperbarui saat Anda mengaktifkan layanan. Kolom tersebut dapat mencakup kolom berikut, jika ditetapkan ke nilai yang tidak kompatibel.

  5. Klik Aktifkan.

  6. Di bagian Konfigurasi mesin, luaskan Konfigurasi lanjutan.

  7. Untuk platform CPU, pilih AMD Milan atau yang lebih baru.

  8. Pastikan Anda puas dengan setelan ini, lalu klik Buat.

Setelah Anda mengklik Create, halaman VM instances akan terbuka. Di halaman ini, Anda dapat melihat status dan detail untuk instance baru. Jika ikon tanda centang hijau Tersedia muncul di kolom Status untuk instance VM Confidential Anda, instance tersebut siap digunakan.

gcloud

Untuk membuat instance VM Rahasia dengan gcloud CLI, gunakan sub-perintah instances create dengan flag --confidential-compute-type.

gcloud compute instances create INSTANCE_NAME \
    --confidential-compute-type=CONFIDENTIAL_COMPUTING_TECHNOLOGY \
    --machine-type=MACHINE_TYPE_NAME \
    --min-cpu-platform="CPU_PLATFORM" \
    --maintenance-policy="MAINTENANCE_POLICY" \
    --zone=ZONE_NAME \
    --image-family=IMAGE_FAMILY_NAME \
    --image-project=IMAGE_PROJECT \
    --project=PROJECT_ID

Berikan nilai berikut:

  • INSTANCE_NAME: Nama instance VM baru.

  • CONFIDENTIAL_COMPUTING_TECHNOLOGY: Jenis teknologi Confidential Computing yang akan digunakan. Pilih salah satu nilai berikut:

    • SEV

    • SEV_SNP

    • TDX

  • MACHINE_TYPE_NAME: Jenis mesin VM, misalnya, n2d-standard-2. Jenis mesin yang valid untuk instance Confidential VM ditentukan oleh teknologi Confidential Computing yang Anda pilih. Lihat Jenis mesin, CPU, dan zona.

  • CPU_PLATFORM: Pilih salah satu nilai berikut:

    • Untuk AMD SEV: AMD Milan (jenis mesin C2D atau N2D) atau AMD Genoa (jenis mesin C3D).

    • Untuk AMD SEV-SNP: AMD Milan (jenis mesin N2D).

    • Untuk Intel TDX: Hapus tanda ini.

  • MAINTENANCE_POLICY: Untuk jenis mesin N2D yang menggunakan SEV, tetapkan ini ke MIGRATE untuk dukungan migrasi langsung. Untuk semua jenis mesin lainnya, tetapkan nilai ini ke TERMINATE, karena tidak mendukung migrasi langsung.

  • ZONE_NAME: Zona yang didukung Confidential VM tempat membuat instance.

  • IMAGE_FAMILY_NAME: Grup untuk image sistem operasi yang didukung Confidential VM. Jika Anda tidak menentukan --image secara tambahan, versi gambar terbaru akan dipilih.

  • IMAGE_PROJECT: Project yang berisi image sistem operasi yang didukung.

  • PROJECT_ID: Opsional. ID project tempat VM dibuat.

Contoh

Jalankan perintah berikut untuk membuat instance n2d-standard-2 bernama my-instance di zona us-central1-a, menggunakan AMD SEV-SNP:

gcloud compute instances create my-instance \
    --machine-type=n2d-standard-2 \
    --min-cpu-platform="AMD Milan" \
    --zone=us-central1-a \
    --confidential-compute-type=SEV_SNP \
    --maintenance-policy=TERMINATE \
    --image-family=ubuntu-2404-lts-amd64 \
    --image-project=ubuntu-os-cloud

Respons

Respons terhadap permintaan pembuatan terlihat mirip dengan contoh berikut:

Created [https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/my-instance].
NAME: my-instance
ZONE: us-central1-a
MACHINE_TYPE: n2d-standard-2
PREEMPTIBLE:
INTERNAL_IP: 0.0.0.0
EXTERNAL_IP: 0.0.0.0
STATUS: RUNNING

REST

Untuk membuat instance Confidential VM, Anda harus mengirim permintaan POST dengan konten isi yang sesuai.

Metode HTTP dan URL:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE_NAME/instances

Meminta isi JSON:

{
  "name": "INSTANCE_NAME",
  "confidentialInstanceConfig": {
    "confidentialInstanceType": "CONFIDENTIAL_COMPUTING_TECHNOLOGY"
  },
  "machineType": "zones/ZONE_NAME/machineTypes/MACHINE_TYPE_NAME",
  "minCpuPlatform": "CPU_PLATFORM",
  "disks": [
    {
      "boot": true,
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY_NAME"
      }
    }
  ],
  "networkInterfaces": [
    {
      "nicType": "gVNIC"
    }
  ],
  "scheduling": {
    "automaticRestart": true,
    "nodeAffinities": [],
    "preemptible": false,
    "onHostMaintenance": MAINTENANCE_POLICY
  }
}

Berikan nilai berikut:

  • PROJECT_ID: ID project tempat membuat VM.

  • ZONE_NAME: Zona yang didukung Confidential VM tempat membuat instance.

  • INSTANCE_NAME: Nama instance VM baru.

  • CONFIDENTIAL_COMPUTING_TECHNOLOGY: Jenis teknologi Confidential Computing yang akan digunakan. Pilih salah satu nilai berikut:

    • SEV

    • SEV_SNP

    • TDX

  • MACHINE_TYPE_NAME: Jenis mesin VM, misalnya, n2d-standard-2. Jenis mesin yang valid untuk instance Confidential VM ditentukan oleh teknologi Confidential Computing yang Anda pilih. Lihat Jenis mesin, CPU, dan zona.

  • CPU_PLATFORM: Pilih salah satu nilai berikut:

    • Untuk AMD SEV: AMD Milan (jenis mesin C2D atau N2D) atau AMD Genoa (jenis mesin C3D).

    • Untuk AMD SEV-SNP: AMD Milan (jenis mesin N2D).

    • Untuk Intel TDX: Hapus pasangan nilai kunci ini.

  • IMAGE_PROJECT: Project yang berisi image sistem operasi yang didukung.

  • IMAGE_FAMILY_NAME: Grup untuk image sistem operasi yang didukung Confidential VM. Jika Anda tidak menentukan --image secara tambahan, versi gambar terbaru akan dipilih.

  • MAINTENANCE_POLICY: Untuk jenis mesin N2D yang menggunakan SEV, tetapkan ini ke MIGRATE untuk dukungan migrasi langsung. Untuk semua jenis mesin lainnya, tetapkan nilai ini ke TERMINATE, karena tidak mendukung migrasi langsung.

Contoh

Jalankan salah satu perintah berikut untuk membuat instance n2d-standard-2 yang disebut my-instance di zona us-central1-a, dalam project my-project, menggunakan AMD SEV-SNP:

curl (Linux, macOS, atau Cloud Shell)

curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{
            "machineType": "zones/us-central1-a/machineTypes/n2d-standard-2",
            "name": "my-instance",
            "minCpuPlatform": "AMD Milan",
            "confidentialInstanceConfig": {
              "confidentialInstanceType": "SEV_SNP"
            },
            "disks": [
              {
                "boot": true,
                "initializeParams": {
                  "sourceImage": "projects/ubuntu-os-cloud/global/images/family/ubuntu-2404-lts-amd64"
                }
              }
            ],
            "networkInterfaces": [
              {
                "nicType": "gVNIC"
              }
            ],
            "scheduling": {
              "automaticRestart": true,
              "nodeAffinities": [],
              "preemptible": false,
              "onHostMaintenance": "TERMINATE"
            }
          }' \
      https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances

PowerShell (Windows)

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
$body = @"
{
  "machineType": "zones/us-central1-a/machineTypes/n2d-standard-2",
  "name": "my-instance",
  "minCpuPlatform": "AMD Milan",
  "confidentialInstanceConfig": {
    "confidentialInstanceType": "SEV_SNP"
  },
  "disks": [
    {
      "boot": true,
      "initializeParams": {
        "sourceImage": "projects/ubuntu-os-cloud/global/images/family/ubuntu-2404-lts-amd64"
      }
    }
  ],
  "networkInterfaces": [
    {
      "nicType": "gVNIC"
    }
  ],
  "scheduling": {
    "automaticRestart": true,
    "nodeAffinities": [],
    "preemptible": false,
    "onHostMaintenance": "TERMINATE"
  }
}
"@
Invoke-WebRequest `
  -Method POST `
  -Headers $headers `
  -ContentType: "application/json; charset=utf-8" `
  -Body $body `
  -Uri "https://compute.googleapis.com/compute/projects/my-project/zones/us-central1-a/instances" | Select-Object -Expand Content

Respons

Respons terhadap permintaan pembuatan terlihat mirip dengan contoh berikut:

{
  "kind": "compute#operation",
  "id": "0000000000000000000",
  "name": "operation-0000000000000-0000000000000-00000000-00000000",
  "zone": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a",
  "operationType": "insert",
  "targetLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/my-instance",
  "targetId": "0000000000000000000",
  "status": "RUNNING",
  "user": "alex@example.com",
  "progress": 0,
  "insertTime": "2024-09-29T18:06:52.174-07:00",
  "startTime": "2024-09-29T18:06:52.175-07:00",
  "selfLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/operations/operation-0000000000000-0000000000000-00000000-00000000"
}

Anda dapat memeriksa progres pembuatan VM dengan membuat permintaan GET ke selfLink:

GET https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE_NAME/operations/OPERATION_ID

Mengaktifkan bandwidth jaringan yang lebih tinggi untuk jenis mesin C2D

Tiga bentuk VM Compute Engine C2D terbesar (32, 56, dan 112) mendukung jaringan dengan bandwidth tinggi. Saat Anda memilih konfigurasi bandwidth jaringan Tingkat 1, bandwidth transfer data keluar akan meningkat dari 32 Gbps default menjadi 50 atau 100 Gbps. Untuk mencapai kecepatan bandwidth Tingkat 1 yang lebih tinggi, instance harus menjalankan driver jaringan virtual gVNIC. Pelajari lebih lanjut cara mengonfigurasi VM dengan bandwidth yang lebih tinggi.

Langkah selanjutnya

Pelajari cara menggunakan Cloud Monitoring untuk memvalidasi instance Confidential VM Anda.