ワークロードのメタデータ変数

Confidential Space ワークロード VM の動作を変更するには、VM の作成時に --metadata オプションに変数を渡します。

複数の変数を渡すには、まず --metadata 値の前に ^~^ を付けて区切り文字を設定します。これにより、, が変数値で使用されるため、区切り文字が ~ に設定されます。

次に例を示します。

metadata="^~^tee-restart-policy=Always~tee-image-reference=us-docker.pkg.dev/WORKLOAD_AUTHOR_PROJECT_ID/REPOSITORY_NAME/WORKLOAD_CONTAINER_NAME:latest"

次の表に、ワークロード VM に設定できるメタデータ変数を示します。

メタデータキー Type 説明と値

tee-image-reference

操作対象:

文字列

必須。これは、ワークロード コンテナの場所を指します。

例
tee-image-reference=us-docker.pkg.dev/WORKLOAD_AUTHOR_PROJECT_ID/REPOSITORY_NAME/WORKLOAD_CONTAINER_NAME:latest

ita-api-key

文字列

構成証明サービスとして Intel Trust Authority を使用している場合にのみ必要です。値を Intel Trust Authority API キーに設定します。

Intel Trust Authority API キーの作成方法については、 Intel のドキュメントをご覧ください。

Intel Trust Authority は、オプションで NVIDIA H100 GPU を搭載した Intel TDX VM インスタンスをサポートしています。GPU が存在する場合は、そのエビデンスも検証されます。

例
ita-api-key=API_KEY

ita-region

文字列

構成証明サービスとして Intel Trust Authority を使用している場合にのみ必要です。Intel Trust Authority を実行するリージョンに値を設定します。有効なリージョンは次のとおりです。

  • 米国: https://api.trustauthority.intel.com
  • ヨーロッパ: https://api.eu.trustauthority.intel.com

Intel Trust Authority は、オプションで NVIDIA H100 GPU を搭載した Intel TDX VM インスタンスをサポートしています。GPU が存在する場合は、そのエビデンスも検証されます。

例
ita-region=REGION_NAME

tee-added-capabilities

操作対象:

JSON 文字列配列

ワークロード コンテナに Linux 機能を追加します。

例
tee-added-capabilities="[\"CAP_SYS_ADMIN\", \"CAP_SYS_CHROOT\"]"

tee-cgroup-ns

操作対象:

ブール値

デフォルトは false です。true に設定すると、/sys/fs/cgroup で名前空間付きの cgroup マウントが有効になります。

例
tee-cgroup-ns=true

tee-cmd

操作対象:

JSON 文字列配列

ワークロード コンテナの Dockerfile で指定された CMD 命令をオーバーライドします。

例
tee-cmd="[\"params1\", \"params2\"]"

tee-container-log-redirect

操作対象:

  • ワークロード作成者: log_redirect 起動ポリシー。
列挙

confidential-space-launcher フィールドを使用して、ワークロード コンテナから Cloud Logging またはシリアル コンソールに STDOUT と STDERR を出力します。

有効な値は次のとおりです。

  • false:(デフォルト)ロギングは行われません。
  • true: シリアル コンソールと Cloud Logging に出力します。
  • cloud_logging: Cloud Logging にのみ出力します。
  • serial: シリアル コンソールにのみ出力します。

シリアル コンソールのログ量が多いと、ワークロードのパフォーマンスに影響する可能性があります。

例
tee-container-log-redirect=true

tee-dev-shm-size-kb

Integer

/dev/shm 共有メモリ マウントのサイズを kB 単位で設定します。

例
tee-dev-shm-size-kb=65536

tee-env-ENVIRONMENT_VARIABLE_NAME

操作対象:

文字列

ワークロード コンテナに環境変数を設定します。ワークロード作成者は、環境変数名を allow_env_override 起動ポリシーに追加する必要があります。追加しないと、環境変数は設定されません。

例
tee-env-example-env-1='value-1'~tee-env-example-env-2='value-2'

tee-impersonate-service-accounts

操作対象:

文字列

ワークロード オペレーターによって権限を借用できるサービス アカウントのリスト。ワークロード オペレーターが、 サービス アカウントの権限借用を許可されている必要があります。

複数のサービス アカウントをカンマで区切って指定できます。

例
tee-impersonate-service-accounts=SERVICE_ACCOUNT_NAME_1@WORKLOAD_OPERATOR_PROJECT_ID.,SERVICE_ACCOUNT_NAME_2@WORKLOAD_OPERATOR_PROJECT_ID.

tee-install-gpu-driver

操作対象:

ブール値

NVIDIA の Confidential Computing GPU ドライバをインストールするかどうか。NVIDIA Confidential Computing をサポートするマシンタイプが必要です。

例
tee-install-gpu-driver=true

tee-monitoring-memory-enable

操作対象:

ブール値

デフォルトは false です。true に設定すると、メモリ使用量のモニタリングが有効になります。Confidential VM によって収集される指標は guest/memory/bytes_used タイプで、Cloud Logging または Metrics Explorer で表示できます。

例
tee-monitoring-memory-enable=true

tee-mount

操作対象:

文字列

セミコロンで区切られたマウント定義のリスト。マウント定義は、Key-Value ペアのカンマ区切りのリストで構成され、type、source、destination が必要です。destination は絶対パスにする必要があります。type/source は tmpfs にする必要があります。

例
type=tmpfs,source=tmpfs,destination=/tmp/tmpfs,size=12345;type=tmpfs,source=tmpfs,destination=/run/workload

tee-nonroot-container

操作対象:

ブール値

デフォルトは false です。true に設定すると、コンテナはホスト VM 上の root ユーザー以外のユーザーとして、隔離されたユーザー名前空間で実行されます。ワークロードの作成者が tee.launch_policy.nonroot_container を nonrootonly に設定している場合、この変数は true に設定する必要があります。

例
tee-nonroot-container=true

tee-restart-policy

操作対象:

列挙

ワークロードが停止したときのコンテナ ランチャーの再起動ポリシー。

有効な値は次のとおりです。

  • Never(デフォルト)
  • Always
  • OnFailure

この変数は、本番環境の Confidential Space イメージでのみサポートされています。

例
tee-restart-policy=OnFailure

tee-signed-image-repos

操作対象:

文字列

Sigstore Cosign によって生成された署名を格納するコンテナ リポジトリのカンマ区切りのリスト。

例
tee-signed-image-repos=us-docker.pkg.dev/projectA/repo/example,us-docker.pkg.dev/projectB/repo/example,us-docker.pkg.dev/projectC/repo/example