関数を管理する

Cloud Functions v2 API を使用して作成された関数(gcloud functions、REST API、Terraform など)は、Cloud Run Admin API と Cloud Functions v2 API で管理できます。たとえば、gcloud functions コマンドまたは gcloud run コマンドを使用して既存の関数を更新できます。

gcloud functions

  gcloud functions deploy FUNCTION_NAME" \
    --runtime=nodejs22\
    --source= . \
    --entry-point=ENTRYPOINT"
    --trigger-http

gcloud run

gcloud run deploy FUNCTION_NAME" \
  --source= . \
  --function="ENTRYPOINT"
  --base-image=google-22-full/nodejs22

接続解除

gcloud beta functions detach コマンドを使用すると、Cloud Functions v2 関数を既存の API 環境から切断できます。関数を切断すると、Cloud Run Admin API を使用してのみ関数を管理できます。これは、ワークロードを Assured Workloadsrun.googleapis.com API 境界内に維持する必要がある場合や、ワークロードで Cloud Run SKU を使用するようにする場合に必要になることがあります。

関数を切断する準備をする

関数を切断する準備をする際は、次の点を考慮してください。

  • 切断オペレーションは元に戻せません。
  • デタッチ オペレーションは、Cloud Run functions(第 1 世代)には適用できません。
  • Google Cloud コンソール、Google Cloud CLI、Terraform を使用して Cloud Run に関数をデプロイする方法を学習します。
  • HTTP 関数には、割り当てられた URL が保持されます。
  • イベント ドリブン関数に接続されているトリガーは保持されます。
  • トリガーは run.googleapis.com API から直接管理できません。Eventarc または Pub/Sub のトリガー管理ガイドをよく理解してください。
  • エラー時の再試行を無効にすることは、Cloud Run でサポートされている機能ではありません。
    • デタッチ オペレーション中、Cloud Run functions は、失敗時に再試行しないように構成された関数に接続されているトリガーを変更し、基盤となる Pub/Sub トピックが最大 5 回配信を試行するようにします。デタッチ オペレーションが完了すると、配信不能なメッセージはデッドレター キュートピックに保存されます。このメッセージは、デッドレター キューへの新しいサブスクリプションを作成することで取得できます。
  • 関数が正常に切断されると、新しい Cloud Run リビジョンが作成されます。このリビジョン以降、関数は Cloud Run SKU を使用して課金されます。

関数を切断する

関数を切断するには、次のコマンドを使用します。

gcloud beta functions detach FUNCTION_NAME

FUNCTION_NAME は、関数の名前で置き換えます。