Targets

Configuring a target provide the Autoscaler with a value that it tries to maintain for the configured metric for a revision. See the metrics documentation for more information about configurable metric types.

The target annotation, used to configure per-revision targets, is metric agnostic. This means the target is simply an integer value, which can be applied for any metric type.

Configuring targets

  • Global settings key: container-concurrency-target-default for setting a concurrency target, and requests-per-second-target-default for setting a requests-per-second (RPS) target. For more information, see the documentation on metrics.
  • Per-revision annotation key: autoscaling.knative.dev/target
  • Possible values: An integer (metric agnostic).
  • Default: "100" for container-concurrency-target-default, and "200" for requests-per-second-target-default. There is no default value set for the target annotation.
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: helloworld-go
  namespace: default
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/target: "50"
apiVersion: v1
kind: ConfigMap
metadata:
 name: config-autoscaler
 namespace: knative-serving
data:
 container-concurrency-target-default: "200"
apiVersion: operator.knative.dev/v1alpha1
kind: KnativeServing
metadata:
  name: knative-serving
spec:
  config:
    autoscaler:
      container-concurrency-target-default: "200"
apiVersion: v1
kind: ConfigMap
metadata:
 name: config-autoscaler
 namespace: knative-serving
data:
 requests-per-second-target-default: "150"
apiVersion: operator.knative.dev/v1alpha1
kind: KnativeServing
metadata:
  name: knative-serving
spec:
  config:
    autoscaler:
      requests-per-second-target-default: "150"