このページでは、ワーカープールを手動でスケーリングする方法について説明します。
概要
手動スケーリングでは、再デプロイを必要とすることなく、特定のインスタンスの数を設定できます。これにより、外部システムを使用して独自のスケーリング ロジックを記述できます。例については、Kafka Autoscaler をご覧ください。
手動スケーリングを使用する場合の課金に関する考慮事項
手動スケーリングを使用する場合、リクエストしたすべてのインスタンスは、アイドル状態であってもアクティブなインスタンスとして課金されます。課金の詳細については、料金ページをご覧ください。
必要なロール
Cloud Run ワーカー プールのデプロイに必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。
-
Cloud Run サービスに対する Cloud Run デベロッパー(
roles/run.developer
) -
サービス ID に対するサービス アカウント ユーザー(
roles/iam.serviceAccountUser
) -
デプロイされたコンテナ イメージの Artifact Registry リポジトリに対する Artifact Registry 読み取り(
roles/artifactregistry.reader
)(該当する場合)
Cloud Run に関連付けられている IAM ロールと権限のリストについては、Cloud Run IAM ロールと Cloud Run IAM 権限をご覧ください。Cloud Run ワーカープールがGoogle Cloud API(Cloud クライアント ライブラリなど)と連携している場合は、サービス ID の構成ガイドをご覧ください。ロールの付与の詳細については、デプロイ権限とアクセスの管理をご覧ください。
スケーリングを構成する
新しいワーカープールを作成するか、新しいリビジョンをデプロイするときに、Google Cloud CLI を使用してスケーリング モードを構成します。
gcloud
新しいワーカープールのスケーリングを指定するには、deploy コマンドを使用します。
gcloud beta run worker-pools deploy WORKER_POOL \ --scaling=INSTANCE_COUNT \ --image IMAGE_URL
次のように置き換えます。
- WORKER_POOL は、ワーカープールの名前に置き換えます。
- INSTANCE_COUNT は、ワーカープールのインスタンス数に置き換えます。これにより、ワーカープールは手動スケーリングに設定されます。ワーカープールを無効にするには、値
0
を指定します。 - IMAGE_URL は、ワーカープールを含むコンテナ イメージへの参照(
us-docker.pkg.dev/cloudrun/container/worker-pool:latest
など)に置き換えます。
次の update コマンドを使用して、既存のワーカープールのスケーリングを指定します。
gcloud beta run worker-pools update WORKER_POOL \ --scaling=INSTANCE_COUNT
ワーカープールのスケーリング構成を表示する
Google Cloud コンソールで Cloud Run に移動します。
[ワーカープール] をクリックして、デプロイされたワーカープールのリストを表示します。
調べるワーカー プールをクリックして、詳細ウィンドウを表示します。
現在のスケーリング設定は、ワーカープールのリビジョン リストの上に表示されます(スケーリング: 手動(インスタンス: ))。
ワーカープールを無効にする
ワーカープールを無効にするには、次のコマンドを使用してスケーリングをゼロに設定します。
gcloud beta run worker-pools update WORKER_POOL --scaling=0
WORKER_POOL は、ワーカープールの名前に置き換えます。