このページでは、Cloud Run サービスの GPU のゾーン冗長性オプションの設定について説明します。デフォルトでは、GPU でゾーン冗長性が有効になっているため、データとトラフィックはリージョン内のゾーン間で自動的にロードバランスされます。特定のゾーン内で障害が発生した場合、トラフィックは自動的に他のゾーンにルーティングされます。
代わりに、GPU 秒あたりの費用を抑えながらベスト エフォートの信頼性を使用する場合は、GPU のゾーン冗長性をオフにします。
サポートされているリージョン
us-central1
(アイオワ)低 CO2
asia-southeast1
(シンガポール)europe-west1
(ベルギー)低 CO2
europe-west4
(オランダ)低 CO2
asia-south1
(ムンバイ)- 注: このリージョンは招待制です。この地域にご興味をお持ちの場合は、Google アカウント チームにお問い合わせください。
料金への影響
ゾーン冗長性の費用に関する GPU の料金の詳細については、Cloud Run の料金をご覧ください。
リクエストの割り当て
デフォルトでは、ゾーン冗長性またはゾーン冗長性のいずれにも割り当てはありません。割り当てをリクエストする必要があります。次のボタンに記載されているリンクを使用して、必要な割り当てをリクエストしてください。
必要な割り当て | 割り当てリンク |
---|---|
ゾーン冗長性がオンになっている GPU | ゾーン冗長性のある GPU 割り当てをリクエストする |
ゾーン冗長性がオフになっている GPU | ゾーン冗長性のない GPU 割り当てをリクエストする |
GPU の割り当てページ(ゾーン冗長と非ゾーン冗長の両方) | GPU 割り当てをリクエストする |
始める前に
次のリストに、Cloud Run で GPU を使用する場合の要件と制限事項を示します。
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Cloud Run API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles.
必要なロール
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 の構成ガイドをご覧ください。ロールの付与の詳細については、デプロイ権限とアクセスの管理をご覧ください。
GPU を使用する Cloud Run サービスにゾーン冗長性を構成する
構成を変更すると、新しいリビジョンが作成されます。明示的に更新しない限り、以降のリビジョンでも、この構成が自動的に設定されます。
Google Cloud コンソール、Google Cloud CLI、または YAML を使用して GPU を構成できます。
Console
Google Cloud コンソールで、Cloud Run に移動します。
[コンテナをデプロイ] をクリックし、[サービス] を選択して、新しいサービスを構成します。既存のサービスを構成する場合は、サービスをクリックし、[新しいリビジョンの編集とデプロイ] をクリックします。
新しいサービスを構成する場合は、最初のサービス設定のページに入力してから、[コンテナ、ボリューム、ネットワーキング、セキュリティ] をクリックしてサービス構成ページを開きます。
[コンテナ] タブをクリックします。
-
GPU チェックボックスをオンにして、GPU 冗長性オプションを表示します。
- ゾーン冗長性を無効にするには、[ゾーン冗長性なし] を選択します。
- [ゾーンの冗長性] を選択して、ゾーンの冗長性を有効にします。
-
GPU チェックボックスをオンにして、GPU 冗長性オプションを表示します。
[作成] または [デプロイ] をクリックします。
gcloud
デフォルトでは、GPU ゾーン冗長性がオンになっています。サービスの GPU ゾーン冗長構成を無効にするには、または以前にゾーン冗長を無効にした場合は再度有効にするには、gcloud beta run services update コマンドを使用します。
gcloud beta run services update SERVICE \ --image IMAGE_URL \ --cpu CPU \ --memory MEMORY \ --no-cpu-throttling \ --gpu GPU_NUMBER \ --gpu-type GPU_TYPE \ --max-instances MAX_INSTANCE --GPU_ZONAL_REDUNDANCY
次のように置き換えます。
- SERVICE: Cloud Run サービスの名前。
- IMAGE_URL はコンテナ イメージへの参照(
us-docker.pkg.dev/cloudrun/container/hello:latest
など)に置き換えます。Artifact Registry を使用する場合は、リポジトリ REPO_NAME がすでに作成されている必要があります。URL の形式はLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
です。 - CPU: CPU の数。少なくとも
4
個の CPU を指定する必要があります。 - MEMORY: メモリ容量。少なくとも
16Gi
(16 GiB)を指定する必要があります。 - GPU_NUMBER: 値
1
(1)。これが指定されていないが GPU_TYPE が存在する場合、デフォルトは1
です。 - GPU_TYPE: GPU のタイプ。これが指定されていないが GPU_NUMBER が存在する場合、デフォルトは
nvidia-l4
です(nvidiaL
4 の L は小文字、数値 14 ではありません)。 - MAX_INSTANCE: インスタンスの最大数。この数は、プロジェクトに割り当てられた GPU 割り当てを超えることはできません。
- GPU_ZONAL_REDUNDANCY は、ゾーン冗長性をオフにするには
no-gpu-zonal-redundancy
、ゾーン冗長性をオンにするにはgpu-zonal-redundancy
に置き換えます。
YAML
新しいサービスを作成する場合は、この手順をスキップします。既存のサービスを更新する場合は、その YAML 構成をダウンロードします。
gcloud run services describe SERVICE --format export > service.yaml
run.googleapis.com/gpu-zonal-redundancy-disabled
アノテーションを更新します。apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE annotations: run.googleapis.com/launch-stage: BETA spec: template: metadata: annotations: run.googleapis.com/gpu-zonal-redundancy-disabled: GPU_ZONAL_REDUNDANCY
次のように置き換えます。
- SERVICE は、Cloud Run サービスの名前に置き換えます。
- GPU_ZONAL_REDUNDANCY は、GPU ゾーン冗長性をオンにするには
false
、オフにするにはtrue
に置き換えます。
次のコマンドを使用して、サービスを作成または更新します。
gcloud run services replace service.yaml