×

您可以使用 OpenShift Container Platform Web 控制台安装自定义指标自动缩放操作符。

安装会创建以下五个 CRD:

  • ClusterTriggerAuthentication

  • KedaController

  • ScaledJob

  • ScaledObject

  • TriggerAuthentication

安装自定义指标自动缩放器

您可以使用以下步骤安装自定义指标自动缩放操作符。

先决条件
  • 删除任何先前安装的集群指标自动缩放操作符技术预览版本。

  • 删除任何基于社区的 KEDA 版本。

    此外,通过运行以下命令删除 KEDA 1.x 自定义资源定义:

    $ oc delete crd scaledobjects.keda.k8s.io
    $ oc delete crd triggerauthentications.keda.k8s.io
  • 可选:如果您需要自定义指标自动缩放操作符连接到集群外服务,例如外部 Kafka 集群或外部 Prometheus 服务,请将任何必需的服务 CA 证书放入配置映射中。配置映射必须存在于安装操作符的同一命名空间中。例如:

    $ oc create configmap -n openshift-keda thanos-cert  --from-file=ca-cert.pem
步骤
  1. 在 OpenShift Container Platform Web 控制台中,单击**操作符**→**OperatorHub**。

  2. 从可用操作符列表中选择**自定义指标自动缩放器**,然后单击**安装**。

  3. 在**安装操作符**页面上,确保为**安装模式**选择了**集群上的所有命名空间(默认)**选项。这会在所有命名空间中安装操作符。

  4. 确保为**已安装命名空间**选择了`openshift-keda`命名空间。如果您的集群中不存在该命名空间,OpenShift Container Platform 会创建它。

  5. 单击**安装**。

  6. 通过列出自定义指标自动缩放操作符组件来验证安装。

    1. 导航到**工作负载**→**Pod**。

    2. 从下拉菜单中选择`openshift-keda`项目,并验证`custom-metrics-autoscaler-operator-*` Pod 是否正在运行。

    3. 导航到**工作负载**→**部署**以验证`custom-metrics-autoscaler-operator`部署是否正在运行。

  7. 可选:使用以下命令在 OpenShift CLI 中验证安装:

    $ oc get all -n openshift-keda

    输出类似于以下内容:

    示例输出
    NAME                                                      READY   STATUS    RESTARTS   AGE
    pod/custom-metrics-autoscaler-operator-5fd8d9ffd8-xt4xp   1/1     Running   0          18m
    
    NAME                                                 READY   UP-TO-DATE   AVAILABLE   AGE
    deployment.apps/custom-metrics-autoscaler-operator   1/1     1            1           18m
    
    NAME                                                            DESIRED   CURRENT   READY   AGE
    replicaset.apps/custom-metrics-autoscaler-operator-5fd8d9ffd8   1         1         1       18m
  8. 安装`KedaController`自定义资源,这将创建所需的CRD。

    1. 在 OpenShift Container Platform Web 控制台中,单击**操作符**→**已安装的操作符**。

    2. 单击**自定义指标自动缩放器**。

    3. 在**操作符详细信息**页面上,单击**KedaController**选项卡。

    4. 在**KedaController**选项卡上,单击**创建 KedaController**并编辑文件。

      kind: KedaController
      apiVersion: keda.sh/v1alpha1
      metadata:
        name: keda
        namespace: openshift-keda
      spec:
        watchNamespace: '' (1)
        operator:
          logLevel: info (2)
          logEncoder: console (3)
          caConfigMaps: (4)
          - thanos-cert
          - kafka-cert
        metricsServer:
          logLevel: '0' (5)
          auditConfig: (6)
            logFormat: "json"
            logOutputVolumeClaim: "persistentVolumeClaimName"
            policy:
              rules:
              - level: Metadata
              omitStages: ["RequestReceived"]
              omitManagedFields: false
            lifetime:
              maxAge: "2"
              maxBackup: "1"
              maxSize: "50"
        serviceAccount: {}
      1 指定自定义指标自动缩放操作符应在其内缩放应用程序的单个命名空间。将其留空或留空可在所有命名空间中缩放应用程序。此字段应包含命名空间或为空。默认值为null。
      2 指定自定义指标自动缩放操作符日志消息的详细程度。允许的值为`debug`、`info`、`error`。默认为`info`。
      3 指定自定义指标自动缩放操作符日志消息的日志格式。允许的值为`console`或`json`。默认为`console`。
      4 可选:指定一个或多个包含 CA 证书的配置映射,自定义指标自动缩放操作符可以使用这些证书安全地连接到启用 TLS 的指标源。
      5 指定自定义指标自动缩放器指标服务器的日志级别。允许的值为0(表示info)和4(表示debug)。默认值为0
      6 激活自定义指标自动缩放器操作符的审计日志记录,并指定要使用的审计策略,详见“配置审计日志记录”部分。
    5. 点击创建以创建 KEDA 控制器。