Confidential VM インスタンスは、新しい Compute Engine 仮想マシンの作成の一環として作成できます。
始める前に
Confidential VM インスタンスを作成する前に、次のように環境を設定する必要があります。
- 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.
- 省略可: このガイドの gcloud CLI の例を使用するには、次のようにします。
- gcloud CLI の最新バージョンをインストールするか、最新バージョンに更新します。
- Confidential VM をサポートする クライアントのデフォルトのリージョンとゾーンを設定します。
- 省略可: このガイドの API の例を使用する場合は、リクエストに対する認証の設定を行います。OAuth 2.0 の詳細をご覧ください。
インスタンスの作成
コンソール
Google Cloud コンソールで AMD SEV Confidential VM を作成するには、次の操作を行います。
Google Cloud コンソールで、[VM インスタンス] ページに移動します。
[インスタンスを作成] をクリックします。
[Confidential VM サービス] セクションで、[有効にする] をクリックします。
次に、[Confidential Computing を有効にする] ダイアログで、サービスを有効にするときに更新される設定のリストを確認します。互換性のない値が設定されている場合は、次のフィールドを含めることができます。
シリーズとマシンタイプ。詳細については、マシンタイプ、CPU、ゾーンをご覧ください。
リージョンとゾーン。詳細については、マシンタイプ、CPU、ゾーンをご覧ください。
ブートディスク イメージ:。詳細については、オペレーティング システムをご覧ください。
ホスト メンテナンス時。詳細については、VM のホスト メンテナンス ポリシーを設定するをご覧ください。
ネットワーク インターフェース カード。詳細については、Google Virtual NIC の使用をご覧ください。
[有効にする] をクリックします。
[マシンの構成] セクションで、[高度な構成] を開きます。
[CPU プラットフォーム] で、[AMD Milan 以降] を選択します。
これらの設定が問題ないことを確認し、[作成] をクリックします。
[作成] をクリックすると、[VM インスタンス] ページが開きます。このページでは、新しいインスタンスのステータスと詳細を確認できます。Confidential VMs インスタンスの [ステータス] 列に [使用可能] アイコンが表示されていれば、使用できる状態です。
gcloud
gcloud CLI を使用して Confidential VM インスタンスを作成するには、--confidential-compute-type
フラグを指定して instances create
サブコマンドを使用します。
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
次の値を指定します。
INSTANCE_NAME
: 新しい VM インスタンスの名前。CONFIDENTIAL_COMPUTING_TECHNOLOGY
: 使用する Confidential Computing テクノロジーのタイプ。次のいずれかの値を選択します。SEV
SEV_SNP
TDX
MACHINE_TYPE_NAME
: VM マシンタイプ(例:n2d-standard-2
)。Confidential VM インスタンスで有効なマシンタイプは、選択した Confidential Computing テクノロジによって決まります。マシンタイプ、CPU、ゾーンをご覧ください。CPU_PLATFORM
: 次のいずれかの値を選択します。AMD SEV の場合:
AMD Milan
(C2D または N2D マシンタイプ)またはAMD Genoa
(C3D マシンタイプ)。AMD SEV-SNP の場合:
AMD Milan
(N2D マシンタイプ)。Intel TDX の場合: このフラグを削除します。
MAINTENANCE_POLICY
: SEV を使用する N2D マシンタイプの場合は、ライブ マイグレーションのサポートのためにこれをMIGRATE
に設定します。他のすべてのマシンタイプでは、ライブ マイグレーションをサポートしていないため、この値をTERMINATE
に設定します。ZONE_NAME
: インスタンスを作成する Confidential VM がサポートされているゾーン。IMAGE_FAMILY_NAME
: Confidential VM でサポートされているオペレーティング システム イメージのファミリー。--image
を追加で指定しない場合、最新のイメージ バージョンが選択されます。IMAGE_PROJECT
: サポートされているオペレーティング システム イメージを含むプロジェクト。PROJECT_ID
: 省略可。VM を作成するプロジェクトの ID。
例
次のコマンドを実行して、AMD SEV-SNP を使用して us-central1-a
ゾーンに my-instance
という n2d-standard-2
インスタンスを作成します。
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
レスポンス
作成リクエストに対するレスポンスは次のようになります。
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
Confidential VM インスタンスを作成するには、適切な本文コンテンツを含む POST リクエストを送信する必要があります。
HTTP メソッドと URL:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE_NAME/instances
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
}
}
次の値を指定します。
PROJECT_ID
: VM を作成するプロジェクトの ID。ZONE_NAME
: インスタンスを作成する Confidential VM がサポートされているゾーン。INSTANCE_NAME
: 新しい VM インスタンスの名前。CONFIDENTIAL_COMPUTING_TECHNOLOGY
: 使用する Confidential Computing テクノロジーのタイプ。次のいずれかの値を選択します。SEV
SEV_SNP
TDX
MACHINE_TYPE_NAME
: VM マシンタイプ(例:n2d-standard-2
)。Confidential VM インスタンスで有効なマシンタイプは、選択した Confidential Computing テクノロジによって決まります。マシンタイプ、CPU、ゾーンをご覧ください。CPU_PLATFORM
: 次のいずれかの値を選択します。AMD SEV の場合:
AMD Milan
(C2D または N2D マシンタイプ)またはAMD Genoa
(C3D マシンタイプ)。AMD SEV-SNP の場合:
AMD Milan
(N2D マシンタイプ)。Intel TDX の場合: この Key-Value ペアを削除します。
IMAGE_PROJECT
: サポートされているオペレーティング システム イメージを含むプロジェクト。IMAGE_FAMILY_NAME
: Confidential VM でサポートされているオペレーティング システム イメージのファミリー。--image
を追加で指定しない場合、最新のイメージ バージョンが選択されます。MAINTENANCE_POLICY
: SEV を使用する N2D マシンタイプの場合は、ライブ マイグレーションのサポートのためにこれをMIGRATE
に設定します。他のすべてのマシンタイプでは、ライブ マイグレーションをサポートしていないため、この値をTERMINATE
に設定します。
例
次のいずれかのコマンドを実行して、AMD SEV-SNP を使用して、my-project
プロジェクトの us-central1-a
ゾーンに my-instance
という n2d-standard-2
インスタンスを作成します。
curl(Linux、macOS、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
レスポンス
作成リクエストに対するレスポンスは次のようになります。
{
"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"
}
VM の作成の進行状況を確認するには、selfLink
に GET
リクエストを送信します。
GET https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE_NAME/operations/OPERATION_ID
C2D マシンタイプに大きいネットワーク帯域幅を有効にする
上位 3 つの C2D Compute Engine VM 型(32、56、112)では、高帯域幅ネットワーキングがサポートされています。ティア 1 ネットワーク帯域幅の構成を選択すると、データ転送(送信)帯域幅はデフォルトの 32 Gbps から 50 Gbps または 100 Gbps に増加します。ティア 1 の帯域幅速度を速い方にするには、インスタンスで gVNIC 仮想ネットワーク ドライバが実行されている必要があります。詳細については、帯域幅の大きな VM の構成をご覧ください。
次のステップ
Cloud Monitoring を使用して Confidential VMs インスタンスを検証する方法を確認する。