×

您可以通过修改 `KnativeServing` 自定义资源 (CR) 中的 `workloads` 规范来覆盖某些特定部署的默认配置。

覆盖系统部署配置

目前,支持覆盖 `resources`、`replicas`、`labels`、`annotations` 和 `nodeSelector` 字段的默认配置设置,以及探针的 `readiness` 和 `liveness` 字段。

在下面的示例中,一个 `KnativeServing` CR 覆盖了 `webhook` 部署,以便

  • `net-kourier-controller` 的 `readiness` 探针超时设置为 10 秒。

  • 部署已指定 CPU 和内存资源限制。

  • 部署有 3 个副本。

  • 添加了 `example-label: label` 标签。

  • 添加了 `example-annotation: annotation` 注解。

  • `nodeSelector` 字段设置为选择具有 `disktype: hdd` 标签的节点。

`KnativeServing` CR 标签和注解设置会覆盖部署本身及其生成的 Pod 的标签和注解。

KnativeServing CR 示例
apiVersion: operator.knative.dev/v1beta1
kind: KnativeServing
metadata:
  name: ks
  namespace: knative-serving
spec:
  high-availability:
    replicas: 2
  workloads:
  - name: net-kourier-controller
    readinessProbes: (1)
      - container: controller
        timeoutSeconds: 10
  - name: webhook
    resources:
    - container: webhook
      requests:
        cpu: 300m
        memory: 60Mi
      limits:
        cpu: 1000m
        memory: 1000Mi
    replicas: 3
    labels:
      example-label: label
    annotations:
      example-annotation: annotation
    nodeSelector:
      disktype: hdd
1 您可以使用 `readiness` 和 `liveness` 探针覆盖来覆盖部署容器中探针的所有字段,Kubernetes API 中指定的字段除外,这些字段与探针处理程序相关:`exec`、`grpc`、`httpGet` 和 `tcpSocket`。