Sie können eine Confidential VM-Instanz erstellen, wenn Sie eine neue Compute Engine-VM erstellen.
Hinweise
Bevor Sie eine Confidential VM-Instanz erstellen, müssen Sie Ihre Umgebung so einrichten:
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
- Optional: So verwenden Sie die Beispiele der gcloud CLI in dieser Anleitung:
- Installieren Sie die gcloud CLI oder aktualisieren Sie sie auf die neueste Version.
- Legen Sie eine Standardregion und -zone für Ihren Client fest, die Confidential VM unterstützt.
- Optional: Wenn Sie die API-Beispiele in dieser Anleitung verwenden möchten, müssen Sie die Authentifizierung für Ihre Anfragen einrichten. Weitere Informationen zu OAuth 2.0.
Instanz erstellen
Console
So erstellen Sie mit der Google Cloud Console eine AMD SEV Confidential VM:
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Klicken Sie auf Instanz erstellen.
Klicken Sie im Abschnitt Confidential VM-Dienst auf Aktivieren.
Prüfen Sie im Dialogfeld Confidential Computing aktivieren die Liste der Einstellungen, die beim Aktivieren des Dienstes aktualisiert werden. Wenn die Werte inkompatibel sind, können sie die folgenden Felder enthalten.
Serien- und Maschinentyp. Weitere Informationen finden Sie unter Maschinentypen, CPUs und Zonen.
Region und Zone. Weitere Informationen finden Sie unter Maschinentypen, CPUs und Zonen.
Bootlaufwerk-Image. Weitere Informationen finden Sie unter Betriebssysteme.
Bei Hostwartung Weitere Informationen finden Sie unter Hostwartungsrichtlinie einer VM festlegen.
Netzwerkkarte. Weitere Informationen finden Sie unter Google Virtual NIC verwenden.
Klicken Sie auf Aktivieren.
Maximieren Sie im Abschnitt Maschinenkonfiguration den Abschnitt Erweiterte Konfigurationen.
Wählen Sie als CPU-Plattform AMD Milan oder höher aus.
Prüfen Sie, ob diese Einstellungen Ihren Anforderungen entsprechen, und klicken Sie auf Erstellen.
Nachdem Sie auf Erstellen geklickt haben, wird die Seite VM-Instanzen geöffnet. Auf dieser Seite können Sie den Status und die Details der neuen Instanz ansehen. Wenn in der Spalte Status für Ihre Confidential VM-Instanz das Symbol
Verfügbar angezeigt wird, ist sie einsatzbereit.
gcloud
Verwenden Sie zum Erstellen einer Confidential VM-Instanz mit der gcloud-Befehlszeile den Unterbefehl instances create
mit dem 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
Geben Sie folgende Werte an:
INSTANCE_NAME
: Der Name der neuen VM-Instanz.CONFIDENTIAL_COMPUTING_TECHNOLOGY
: Die zu verwendende Confidential Computing-Technologie. Wählen Sie einen der folgenden Werte aus:SEV
SEV_SNP
TDX
MACHINE_TYPE_NAME
: Der Maschinentyp der VM, z. B.n2d-standard-2
. Gültige Maschinentypen für Confidential VM-Instanzen werden von der von Ihnen ausgewählten Confidential Computing-Technologie bestimmt. Weitere Informationen finden Sie unter Maschinentypen, CPUs und Zonen.CPU_PLATFORM
: Wählen Sie einen der folgenden Werte aus:Für AMD SEV: Entweder
AMD Milan
(C2D- oder N2D-Maschinentypen) oderAMD Genoa
(C3D-Maschinentypen).Für AMD SEV-SNP:
AMD Milan
(N2D-Maschinentypen)Intel TDX: Entfernen Sie dieses Flag.
MAINTENANCE_POLICY
: Legen Sie für N2D-Maschinentypen, die SEV verwenden,MIGRATE
fest, um die Unterstützung für die Livemigration zu aktivieren. Legen Sie für alle anderen Maschinentypen diesen Wert aufTERMINATE
fest, da sie keine Live-Migration unterstützen.ZONE_NAME
: Die von Confidential VM unterstützte Zone, in der die Instanz erstellt werden soll.IMAGE_FAMILY_NAME
: Die Familie für das von Confidential VMs unterstützte Betriebssystem-Image. Wenn Sie--image
nicht zusätzlich angeben, wird die neueste Image-Version ausgewählt.IMAGE_PROJECT
: Das Projekt, das das unterstützte Betriebssystem-Image enthält.PROJECT_ID
: Optional. Die ID des Projekts, in dem die VM erstellt werden soll.
Beispiel
Führen Sie den folgenden Befehl aus, um eine n2d-standard-2
-Instanz mit dem Namen my-instance
in der Zone us-central1-a
mit AMD SEV-SNP zu erstellen:
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
Antwort
Eine Antwort auf eine Erstellungsanfrage sieht in etwa so aus:
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
Wenn Sie eine Confidential VM-Instanz erstellen möchten, müssen Sie eine POST-Anfrage mit dem entsprechenden Text senden.
HTTP-Methode und URL:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE_NAME/instances
JSON-Text anfordern:
{
"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
}
}
Geben Sie folgende Werte an:
PROJECT_ID
: Die ID des Projekts, in dem die VM erstellt werden soll.ZONE_NAME
: Die von Confidential VM unterstützte Zone, in der die Instanz erstellt werden soll.INSTANCE_NAME
: Der Name der neuen VM-Instanz.CONFIDENTIAL_COMPUTING_TECHNOLOGY
: Die zu verwendende Confidential Computing-Technologie. Wählen Sie einen der folgenden Werte aus:SEV
SEV_SNP
TDX
MACHINE_TYPE_NAME
: Der Maschinentyp der VM, z. B.n2d-standard-2
. Gültige Maschinentypen für Confidential VM-Instanzen werden von der von Ihnen ausgewählten Confidential Computing-Technologie bestimmt. Weitere Informationen finden Sie unter Maschinentypen, CPUs und Zonen.CPU_PLATFORM
: Wählen Sie einen der folgenden Werte aus:Für AMD SEV: Entweder
AMD Milan
(C2D- oder N2D-Maschinentypen) oderAMD Genoa
(C3D-Maschinentypen).Für AMD SEV-SNP:
AMD Milan
(N2D-Maschinentypen)Intel TDX: Entfernen Sie dieses Schlüssel/Wert-Paar.
IMAGE_PROJECT
: Das Projekt, das das unterstützte Betriebssystem-Image enthält.IMAGE_FAMILY_NAME
: Die Familie für das von Confidential VMs unterstützte Betriebssystem-Image. Wenn Sie--image
nicht zusätzlich angeben, wird die neueste Image-Version ausgewählt.MAINTENANCE_POLICY
: Legen Sie für N2D-Maschinentypen, die SEV verwenden,MIGRATE
fest, um die Unterstützung für die Livemigration zu aktivieren. Legen Sie für alle anderen Maschinentypen diesen Wert aufTERMINATE
fest, da sie keine Live-Migration unterstützen.
Beispiel
Führen Sie einen der folgenden Befehle aus, um eine n2d-standard-2
-Instanz namens my-instance
in der Zone us-central1-a
im Projekt my-project
mit AMD SEV-SNP zu erstellen:
curl (Linux, macOS oder 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
Antwort
Eine Antwort auf eine Erstellungsanfrage sieht in etwa so aus:
{
"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"
}
Sie können den Fortschritt der VM-Erstellung prüfen, indem Sie eine GET
-Anfrage an die selfLink
senden:
GET https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE_NAME/operations/OPERATION_ID
Höhere Netzwerkbandbreite für C2D-Maschinentypen aktivieren
Die drei größten C2D-Compute Engine-VM-Formen (32, 56 und 112) unterstützen Netzwerke mit hoher Bandbreite. Wenn Sie eine Netzwerkbandbreitenkonfiguration der Stufe 1 auswählen, erhöht sich die Bandbreite für die ausgehende Datenübertragung von den standardmäßigen 32 Gbit/s auf 50 oder 100 Gbit/s. Um die höheren Bandbreitengeschwindigkeiten der Stufe 1 zu erreichen, muss die Instanz den virtuellen gVNIC-Netzwerktreiber ausführen. Weitere Informationen zum Konfigurieren einer VM mit höherer Bandbreite
Nächste Schritte
Weitere Informationen zur Validierung Ihrer Confidential VM-Instanzen mit Cloud Monitoring