ターゲットバーストキャパシティの設定¶
ターゲットバーストキャパシティは、Knativeアプリケーションがバッファリングなしで処理できるトラフィックバーストのサイズを決定する、グローバルおよびリビジョンごとの整数設定です。トラフィックバーストがアプリケーションで処理するには大きすぎる場合、リビジョンを保護し、リクエストのロードバランシングを最適化するために、Activatorサービスがリクエストパスに配置されます。
Activatorサービスは、非アクティブなリビジョン、またはトラフィックバーストがそのリビジョンでバッファリングなしで処理できる制限よりも大きいリビジョンに対して、リクエストを受信およびバッファリングする役割を担います。また、キャパシティのために追加のポッドを迅速に立ち上げたり、ポッドにリクエストを送信する速度を調整したりすることもできます。
ターゲットバーストキャパシティは、次のパラメータの組み合わせを使用して構成できます。
- リビジョンのターゲット同時実行制限を設定します。同時実行を参照してください。
- ターゲット利用率パラメータを設定します。ターゲット利用率を参照してください。
- ターゲットバーストキャパシティを設定します。
config-autoscaler
ConfigMapのtarget-burst-capacity
アノテーションキーを使用して、ターゲットバーストキャパシティを設定できます。ターゲットバーストキャパシティの設定を参照してください。
ターゲットバーストキャパシティの設定¶
- グローバルキー:
target-burst-capacity
- リビジョンごとのアノテーションキー:
autoscaling.knative.dev/target-burst-capacity
- 可能な値: float (
0
は、Activatorが0にスケールされた場合にのみパス上にあることを意味し、-1
はActivatorが常にパス上にあることを意味します) - デフォルト:
200
例
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
annotations:
name: <service_name>
namespace: default
spec:
template:
metadata:
annotations:
autoscaling.knative.dev/target-burst-capacity: "200"
apiVersion: v1
kind: ConfigMap
metadata:
name: config-autoscaler
namespace: knative-serving
data:
target-burst-capacity: "200"
apiVersion: operator.knative.dev/v1alpha1
kind: KnativeServing
metadata:
name: knative-serving
spec:
config:
autoscaler:
target-burst-capacity: "200"
注
イングレスゲートウェイのロードバランシングには追加の設定が必要です。イングレスゲートウェイを使用したロードバランシングの詳細については、Serving APIドキュメントを参照してください。
-
autoscaling.knative.dev/target-burst-capacity
が0
に設定されている場合、Activatorはスケールがゼロから始まるシナリオでのみリクエストパスに追加され、イングレスロードバランシングが適用されます。 -
autoscaling.knative.dev/target-burst-capacity
が-1
に設定されている場合、リビジョンサイズに関係なく、Activatorは常にリクエストパスに存在します。 -
autoscaling.knative.dev/target-burst-capacity
が別の整数に設定されている場合、Activatorはリビジョンのスケールと負荷に応じてパス上に存在する場合があります。