×

规模边界决定了在任何给定时间可以为应用程序提供服务的副本的最小和最大数量。可以为应用程序设置规模边界,以帮助防止冷启动或控制计算成本。

最小规模边界

可以为应用程序提供服务的最小副本数由min-scale注解确定。如果未启用缩放到零,则min-scale值默认为1

如果满足以下条件,则min-scale值默认为0个副本

  • 未设置min-scale注解

  • 已启用缩放到零

  • 使用类KPA

带有min-scale注解的示例服务规范
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: showcase
  namespace: default
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/min-scale: "0"
...

使用 Knative CLI 设置 min-scale 注解

使用 Knative (kn) CLI 设置min-scale注解比直接修改 YAML 文件提供更简化和直观的用户界面。可以使用带有--scale-min标志的kn service命令来创建或修改服务的min-scale值。

先决条件
  • 集群上已安装 Knative Serving。

  • 已安装 Knative (kn) CLI。

步骤
  • 使用--scale-min标志设置服务的最小副本数

    $ kn service create <service_name> --image <image_uri> --scale-min <integer>
    示例命令
    $ kn service create showcase --image quay.io/openshift-knative/showcase --scale-min 2

最大规模边界

可以为应用程序提供服务的最大副本数由max-scale注解确定。如果未设置max-scale注解,则创建的副本数没有上限。

带有max-scale注解的示例服务规范
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
  name: showcase
  namespace: default
spec:
  template:
    metadata:
      annotations:
        autoscaling.knative.dev/max-scale: "10"
...

使用 Knative CLI 设置 max-scale 注解

使用 Knative (kn) CLI 设置max-scale注解比直接修改 YAML 文件提供更简化和直观的用户界面。可以使用带有--scale-max标志的kn service命令来创建或修改服务的max-scale值。

先决条件
  • 集群上已安装 Knative Serving。

  • 已安装 Knative (kn) CLI。

步骤
  • 使用--scale-max标志设置服务的最大副本数

    $ kn service create <service_name> --image <image_uri> --scale-max <integer>
    示例命令
    $ kn service create showcase --image quay.io/openshift-knative/showcase --scale-max 10