Cloud Run ラベルは、Cloud Run インスタンスに適用される Key-Value ペアです。このページでは、Cloud Run インスタンスのラベルを設定、変更、削除する方法について説明します。 Cloud Run インスタンスにラベルを設定すると、このラベルの付いた新しいリビジョンがこのインスタンスに作成されます。古いリビジョンにはラベルは適用されません。
たとえば、次のような用途が考えられます。
- 費用の割り当てと請求の内訳
- 個々のチームやコストセンターで使用されているリソースを特定する
- デプロイ環境(本番、ステージング、検証、テスト)を区別する
- 所有者と状態のラベルを特定する
- Logging でログをフィルタする
ラベルの使用ルール
Cloud Run インスタンスで設定されたラベルを使用する場合、次のルールが適用されます。
Cloud Run で使用できるのは、有効な Google Cloud ラベルのみです。
請求データとロギングのラベル
Cloud Billing と Cloud Logging は、YAML の
spec.template.metadata.labels属性またはtemplateの
Terraform で指定されたラベルのみを受け取ります。Google Cloud CLI を使用してラベルを構成すると、Cloud Run は metadata.labels
と spec.template.metadata.labels 属性の両方にラベルを追加します。
必要なロール
Cloud Run インスタンスの構成とデプロイに必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。
- Cloud Run インスタンスに対する Cloud Run デベロッパー (
roles/run.developer) ロール - サービス ID に対するサービス アカウント ユーザー (
roles/iam.serviceAccountUser) ロール
Cloud Run に関連付けられている IAM ロールと権限のリストについては、Cloud Run IAM ロールと Cloud Run IAM 権限をご覧ください。Cloud Run インスタンスが Google Cloud API(Cloud クライアント ライブラリなど)と連携している場合は、 サービス ID の構成ガイドをご覧ください。 ロールの付与の詳細については、 デプロイ権限 とアクセスの管理をご覧ください。
ラベルを設定または変更する
ラベルを設定または変更するには、Google Cloud CLI を使用します。
gcloud
次のコマンドを使用して、インスタンスのラベルを更新できます。
gcloud beta run instances update INSTANCE --update-labels KEY=VALUE
複数のラベルを更新するには、Key-Value ペアのカンマ区切りリストを指定します。ラベルがすでに存在する場合、update-labels コマンドはラベルキー用に新しい値を設定します。それ以外の場合は、新しいラベルを作成します。
次のように置き換えます。
- INSTANCE: Cloud Run インスタンスの名前。
- KEY: ラベルキーの名前。
- VALUE: キーの値。
デプロイ中にラベルを設定することもできます。
gcloud beta run instances deploy INSTANCE --image IMAGE --labels KEY=VALUE
デプロイ中に複数のラベルを作成するには、Key-Value ペアのカンマ区切りのリストを指定します。
YAML
新しいインスタンスを作成する場合は、この手順をスキップします。 既存のインスタンスを更新する場合は、その YAML 構成をダウンロードします。
gcloud beta run instances describe INSTANCE --format export > instance.yaml
次の例には、YAML 構成が含まれています。
apiVersion: run.googleapis.com/v1 kind: Instance metadata: name: INSTANCE annotations: run.googleapis.com/launch-stage: BETA labels: KEY: VALUE KEY2: VALUE2 KEY3: VALUE3
次のように置き換えます。
- INSTANCE: Cloud Run インスタンスの名前。
- KEY と VALUE: ラベルのキーと値のペア。
metadata.labelsはインスタンス オブジェクトにラベルを設定し、spec.template.metadata.labelsは作成されたリビジョンにラベルを設定します。 Cloud Run は、リビジョンに設定されたラベルのみを Cloud Billing と Cloud Logging に伝播します。次のコマンドを使用して、インスタンスを作成または更新します。
gcloud beta run instances replace instance.yaml
ラベル別にインスタンスを一覧表示する
Google Cloud CLI フィルタを使用して、ラベル別にインスタンスを一覧表示できます。
gcloud beta run instances list --filter metadata.labels.LABEL=VALUE
次のように置き換えます。
- LABEL: ラベルの名前。
- VALUE: フィルタ後のリストに含める値。
インスタンスのラベルを削除する
Google Cloud CLI を使用して、インスタンスのラベルを削除できます。
gcloud
インスタンスからラベルをすべて消去するには:
gcloud beta run instances update INSTANCE --clear-labels
インスタンスから特定のラベルを削除するには、キーのカンマ区切りリストを指定します。
gcloud beta run instances update INSTANCE --remove-labels LABEL
次のように置き換えます。
- INSTANCE: Cloud Run インスタンスの名前。
- LABEL: ラベルの名前。