Cloud Run ジョブにはさまざまなメモリ量をプロビジョニングできます。このページでは、ジョブで使用可能なメモリ量を指定する方法について説明します。
メモリ使用量を把握する
許容されるメモリ上限を超える Cloud Run インスタンスは終了します。
インスタンスの使用可能なメモリを消費する操作は次のとおりです。
- ジョブ実行可能ファイルの実行(実行可能ファイルをメモリに読み込む必要があるため)
- ジョブ プロセスでのメモリの割り当て
- ファイル システムへのファイルの書き込み
デプロイされたコンテナ イメージのサイズは、使用可能なメモリにはカウントされません。
メモリ上限の設定と更新
Cloud Run ジョブにはメモリ上限を設定できます。デフォルトでは、各ジョブに割り当てられるメモリは 512 MiB です。
必要な最小 CPU
選択したメモリの量は、ジョブに割り当てられた CPU の量に対応します。メモリの上限を設定する場合は、次の最小 CPU が必要です。
メモリ | 必要な最小 CPU |
---|---|
128 MiB | .083 vCPU |
256 MiB | .167 vCPU |
512 MiB | .333 vCPU |
1 GiB | .583 vCPU |
2 GiB | 1 vCPU |
4 GiB より大きい | 2 vCPU |
8 GiB より大きい | 4 個の vCPU |
16 GiB より大きい | 6 vCPU |
24 GiB より大きい | 8 vCPU |
メモリの最大量
構成できるメモリの最大容量は 32 ギビバイト(32 Gi
)です。
最小メモリ
第 2 世代の実行環境で構成できるメモリの最小容量は 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 APIs(Cloud クライアント ライブラリなど)と連携している場合は、サービス ID の構成ガイドをご覧ください。ロールの付与の詳細については、デプロイ権限とアクセスの管理をご覧ください。
メモリ上限を構成する
Cloud Run ジョブには 512 MiB 以上を指定する必要があります。Cloud Run ジョブのメモリを指定するには:
コンソール
Google Cloud コンソールで Cloud Run の [ジョブ] ページに移動します。
[コンテナをデプロイ] をクリックし、[ジョブ] を選択して、ジョブの初期設定ページに入力します。既存のジョブを構成する場合は、ジョブをクリックして [編集] をクリックします。
[コンテナ、変数とシークレット、接続、セキュリティ] をクリックして、ジョブのプロパティ ページを開きます。
[コンテナ] タブをクリックします。
- [メモリ] プルダウン リストから目的のメモリサイズを選択します。
[作成] または [更新] をクリックします。
gcloud
ジョブを作成するときにメモリ制限を設定するには:
gcloud run jobs create JOB_NAME --image IMAGE_URL --memory SIZE
次のように置き換えます。
- JOB_NAME: ジョブの名前。
- IMAGE_URL は、コンテナ イメージへの参照(
us-docker.pkg.dev/cloudrun/container/job:latest
など)に置き換えます。 - SIZE は、目的のメモリサイズに置き換えます。サイズの書式は、固定小数点または浮動小数点の後に単位が続きます(
G
、M
はそれぞれ GB、MB を表します)。また 2 の累乗で表すこともできます(Gi
、Mi
はそれぞれ GiB、MiB を表します)。
ジョブを更新するときにメモリ制限を設定するには:
gcloud run jobs update JOB_NAME --memory SIZE
YAML
新しいジョブを作成する場合は、この手順をスキップします。既存のジョブを更新する場合は、その YAML 構成をダウンロードします。
gcloud run jobs describe JOB_NAME --format export > job.yaml
memory
属性を更新します。apiVersion: run.googleapis.com/v1 kind: Job metadata: name: JOB spec: template: spec: template: spec: containers: - image: IMAGE resources: limits: memory: SIZE
SIZE は、目的のメモリサイズに置き換えます。最小値は 512 Mi です。書式は、固定小数点または浮動小数点の後に単位が続きます(
G
、M
はそれぞれ GB、MB を表します)。また 2 の累乗で表すこともできます(Gi
、Mi
はそれぞれ GiB、MiB を表します)。環境変数やメモリ上限など他の構成を指定することもできます。
既存のジョブ構成を更新します。
gcloud run jobs replace job.yaml
メモリ上限の設定を表示する
Cloud Run ジョブの現在のメモリ上限設定を表示するには:
コンソール
Google Cloud コンソールで Cloud Run の [ジョブ] ページに移動します。
目的のジョブをクリックして、[ジョブの詳細] ページを開きます。
[構成] タブをクリックします。
構成の詳細でメモリ上限の設定を見つけます。
gcloud
次のコマンドを使用します。
gcloud run jobs describe JOB_NAME
返された構成で、メモリ上限設定を見つけます。