Cloud Run ワーカープールに提供するメモリ量を選択できます。このページでは、ワーカープールで使用可能なメモリ量を指定する方法について説明します。
メモリ使用量を把握する
許容されるメモリ上限を超える Cloud Run インスタンスは終了します。
インスタンスで使用可能なメモリは、次のために十分である必要があります。
- ワーカープール実行可能ファイルの実行(実行可能ファイルをメモリに読み込む必要があるため)
- ワーカープール プロセスでのメモリの割り当て
- ファイル システムへのファイルの書き込み
デプロイされたコンテナ イメージのサイズは、インスタンスで使用可能なメモリには影響しません。
メモリ上限を設定、更新する
Cloud Run ワーカープールにはメモリ上限を設定できます。デフォルトでは、各ワーカープールに割り当てられるメモリは 512 MiB です。
必要な最小 CPU
選択した割り当てメモリの量は、ワーカープールの最小 CPU の量に対応します。メモリの上限を設定する場合は、次の最小 CPU が必要です。
メモリ | 必要な最小 CPU |
---|---|
2 GiB | 1 vCPU |
4 GiB より大きい | 2 vCPU |
8 GiB より大きい | 4 個の vCPU |
16 GiB より大きい | 6 vCPU |
24 GiB より大きい | 8 vCPU |
メモリの最大量
構成できるメモリの最大容量は 32 GiB(32 Gi
)です。
最小メモリ
最小メモリ設定は 512 MiB です。
必要なロール
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 の構成ガイドをご覧ください。ロールの付与の詳細については、デプロイ権限とアクセスの管理をご覧ください。
メモリ上限を構成する
構成を変更すると、新しいリビジョンが作成されます。明示的に更新しない限り、以降のリビジョンでも、この構成が自動的に設定されます。
Cloud Run ワーカープールのメモリ上限を構成するには、Google Cloud コンソール、Google Cloud CLI、または Terraform を使用します。
コンソール
Google Cloud コンソールで Cloud Run に移動します。
メニューから [ワーカープール] を選択し、[コンテナをデプロイ] をクリックして新しいワーカープールを構成します。既存のワーカープールを構成する場合は、ワーカープールをクリックし、[新しいリビジョンの編集とデプロイ] をクリックします。
新しいワーカープールを構成する場合は、最初のワーカープール ページに入力してから、[コンテナ、ボリューム、ネットワーキング、セキュリティ] をクリックしてワーカープール構成ページを開きます。
[コンテナ] タブをクリックします。
- [メモリ] プルダウン リストから目的のメモリサイズを選択します。
[作成] または [デプロイ] をクリックします。
gcloud
次のコマンドを使用して、特定のワーカープールのメモリ割り当てを更新します。
gcloud beta run worker-pools update WORKER_POOL --memory SIZE
次のように置き換えます。
- WORKER_POOL は、ワーカープールの名前に置き換えます。
- SIZE は、CPU とメモリの表のメモリサイズに置き換えます。サイズの書式は、固定小数点または浮動小数点の後に単位が続きます(
G
、M
はそれぞれ GB、MB を表します)。また 2 の累乗で表すこともできます(Gi
、Mi
はそれぞれ GiB、MiB を表します)。
デプロイ中にメモリ制限を設定するには、次のコマンドを使用します。
gcloud beta run worker-pools deploy --image IMAGE_URL --memory SIZE
次のように置き換えます。
- IMAGE_URL: ワーカープールを含むコンテナ イメージへの参照(
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
など)。 - SIZE: CPU とメモリの表のメモリサイズ。サイズの書式は、固定小数点または浮動小数点の後に単位が続きます(G、B はそれぞれ GB、MB を表します)。また 2 の累乗で表すこともできます(Gi、Mi はそれぞれ GiB、MiB を表します)。
Terraform
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
resource "google_cloud_run_v2_worker_pool" "default" {
name = "WORKER_POOL"
location = "REGION"
launch_stage = "BETA"
template {
containers {
image = "IMAGE_URL"
resources {
limits = {
memory = "SIZE"
}
}
}
}
}
次のように置き換えます。
- WORKER_POOL: ワーカープールの名前。
- REGION: Google Cloud リージョン(例: europe-west1)。
- IMAGE_URL: ワーカープールを含むコンテナ イメージへの参照(
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
など)。 - SIZE: CPU とメモリの表のメモリサイズ。サイズの書式は、固定小数点または浮動小数点の後に単位が続きます(
G
、M
はそれぞれ GB、MB を表します)。また 2 の累乗で表すこともできます(Gi
、Mi
はそれぞれ GiB、MiB を表します)。
ワーカープールのメモリ構成を確認する
Google Cloud コンソールで Cloud Run に移動します。
[ワーカープール] をクリックして、デプロイされたワーカープールのリストを確認します。
調べるワーカープールをクリックして、詳細ウィンドウを表示します。
[コンテナ] タブをクリックして、各コンテナのワーカープールのメモリ構成を確認します。