コンテナ インスタンスの最大数の設定

Cloud Run for Anthos on Google Cloud サービスで使用できるコンテナ インスタンスの最大数を設定する方法を学習します。Cloud Run for Anthos でインスタンスの最大数を指定すると、受信リクエストに応じてサービスのスケーリングを制限できます。この設定を使用して、コストの制御や、データベースなどのバッキング サービスへの接続数を制限できます。

Cloud Run for Anthos がコンテナ インスタンスを自動スケーリングする方法については、インスタンスの自動スケーリングをご覧ください。

最大インスタンス数の設定と更新

構成を変更すると、新しいリビジョンが作成されます。明示的に更新しない限り、以降のリビジョンでも、この構成が自動的に設定されます。

デフォルトでは、コンテナ インスタンスの数は無限にスケーリングできます。新しいサービスをデプロイするときか、既存のサービスを更新してリビジョンをデプロイするときに、Cloud Console または gcloud コマンドライン ツールを使用して、インスタンス数の最大数の上限を設定できます。

Console

  1. Cloud Run for Anthos on Google Cloud に移動

  2. デプロイ先の新しいサービスを構成する場合は、[サービスの作成] をクリックします。既存のサービスを構成する場合は、そのサービスをクリックし、[新しいリビジョンの編集とデプロイ] をクリックします。

  3. [詳細設定] で [コンテナ] をクリックします。

    画像

  4. [インスタンスの最大数] フィールドに、コンテナ インスタンスの最大数を指定します。

  5. [作成] または [デプロイ] をクリックします。

コマンドライン

  • 既存のサービスの場合は、--max-instances パラメータを指定して gcloud kuberun core services update コマンドを実行し、コンテナ インスタンスの最大数を設定します。

    gcloud kuberun core services update SERVICE --max-instances MAX-VALUE
    

    次のように置き換えます。

    • SERVICE は、実際のサービスの名前に置き換えます。
    • MAX-VALUE は、目的のコンテナ インスタンスの最大数に置き換えます。インスタンスの最大数の設定を消去するには、default を指定します。
  • 新しいサービスの場合は、--max-instances パラメータを指定して gcloud kuberun core services create コマンドを実行し、コンテナ インスタンスの最大数を設定します。

    gcloud kuberun core services create SERVICE --image=IMAGE_URL --max-instances MAX-VALUE
    

    次のように置き換えます。

    • SERVICE は、実際のサービスの名前に置き換えます。
    • IMAGE_URL は、コンテナ イメージへの参照(gcr.io/myproject/my-image:latest など)に置き換えます。
    • MAX-VALUE は、目的のコンテナ インスタンスの最大数に置き換えます。インスタンスの最大数の設定を消去するには、default を指定します。

YAML

YAML ファイルを使用して既存のサービスの構成を変更するには、現在の構成のコピーを取得し、その構成を変更してローカル ファイルに保存してから、これらの変更をサービスにデプロイします。

  1. YAML として表示し、サービスの構成をローカル ファイルにコピーします。例を示します。service.yaml:

    gcloud kuberun core services describe SERVICE --format yaml

    SERVICE は、Cloud Run for Anthos サービスの名前に置き換えます。

  2. ローカル ファイルで autoscaling.knative.dev/maxScale: 属性を更新します。

    spec:
     template:
       metadata:
         annotations:
           autoscaling.knative.dev/maxScale: 'MAX-INSTANCE' 

    次のように置き換えます。

    • MAX-INSTANCE は、目的の最大数に置き換えます。
  3. 次のコマンドを使用して、サービスを新しい構成に置き換えます。

    gcloud beta run services replace service.yaml