コンテンツにスキップ

負荷分散

負荷分散装置として機能するために、リクエストパスに *Activator service* を配置することで、Knative の負荷分散をオンにできます。これを行うには、まず個々のポッドのアドレス指定が有効になっていることを確認する必要があります。

Activator ポッドの選択

Activator ポッドは水平方向にスケールされるため、デプロイメント内に複数の Activator が存在する場合があります。一般に、リビジョンポッドの数が Activator ポッドの数よりも多く、それらの数が均等に分割される場合、システムは最もパフォーマンスを発揮します。

Knative はリビジョンサイズに応じて、各リビジョンの Activator のサブセットを割り当てます。リビジョンポッドが多いほど、そのリビジョンの Activator の数が多くなります。

Activator の負荷分散アルゴリズムは次のようになります。

  • 同時実行が無制限の場合、リクエストは2つのランダムな選択肢のうち、より良い方に送信されます。
  • 同時実行が3以下の値に設定されている場合、Activator は容量のある最初のポッドにリクエストを送信します。それ以外の場合、リクエストはコンテナの同時実行に関してラウンドロビン方式でバランスされます。

詳細については、同時実行に関するドキュメントを参照してください。

ターゲットバースト容量の構成

ターゲットバースト容量は、主にスケールゼロからのシナリオ以外で、Activator がリクエストパスにあるかどうかを判断する役割を担います。

ターゲットバースト容量は、次のパラメーターの組み合わせを使用して構成できます。

  • リビジョンのターゲット同時実行制限の設定。同時実行を参照してください。
  • ターゲット利用率パラメータの設定。ターゲット利用率を参照してください。
  • ターゲットバースト容量の設定。config-autoscaler ConfigMap の target-burst-capacity キーを使用してターゲットバースト容量を構成できます。ターゲットバースト容量の設定を参照してください。
  • config-autoscaler ConfigMap を使用して Activator の容量を設定します。Activator の容量の設定を参照してください。

当サイトでは、サイトトラフィックを把握するために分析とCookieを使用しています。当サイトの利用に関する情報は、その目的のために Google と共有されます。詳細はこちら。