$ oc delete crd scaledobjects.keda.k8s.io
您可以使用 OpenShift Dedicated Web 控制台安装自定义指标自动缩放器操作符。
安装将创建以下五个 CRD:
ClusterTriggerAuthentication
KedaController
ScaledJob
ScaledObject
TriggerAuthentication
您可以使用以下步骤安装自定义指标自动缩放器操作符。
您具有对集群的访问权限,并具有 `cluster-admin` 角色。
如果您的 OpenShift Dedicated 集群位于 Red Hat (非 CCS) 拥有的云帐户中,则必须请求 `cluster-admin` 权限。
删除之前安装的任何技术预览版的集群指标自动缩放器操作符。
删除任何基于社区的 KEDA 版本。
此外,通过运行以下命令删除 KEDA 1.x 自定义资源定义:
$ oc delete crd scaledobjects.keda.k8s.io
$ oc delete crd triggerauthentications.keda.k8s.io
确保 `keda` 命名空间存在。如果不存在,则必须手动创建 `keda` 命名空间。
可选:如果您需要自定义指标自动缩放器操作符连接到集群外服务(例如外部 Kafka 集群或外部 Prometheus 服务),请将任何必需的服务 CA 证书放入配置映射中。配置映射必须存在于安装操作符的相同命名空间中。例如:
$ oc create configmap -n openshift-keda thanos-cert --from-file=ca-cert.pem
在 OpenShift Dedicated Web 控制台中,单击**操作符** → **OperatorHub**。
从可用操作符列表中选择**自定义指标自动缩放器**,然后单击**安装**。
在**安装操作符**页面上,确保为**安装模式**选择**集群上的特定命名空间**选项。
对于**已安装的命名空间**,单击**选择命名空间**。
单击**选择项目**
如果 `keda` 命名空间存在,请从列表中选择**keda**。
如果 `keda` 命名空间不存在:
选择**创建项目**打开**创建项目**窗口。
在**名称**字段中,输入keda
。
在**显示名称**字段中,输入一个描述性名称,例如keda
。
可选:在**显示名称**字段中,添加命名空间的描述。
点击**创建**。
点击**安装**。
通过列出自定义指标自动缩放器操作符组件来验证安装。
导航到**工作负载** → **Pod**。
从下拉菜单中选择keda
项目,并验证custom-metrics-autoscaler-operator-*
pod 是否正在运行。
导航到**工作负载** → **部署**以验证custom-metrics-autoscaler-operator
部署是否正在运行。
可选:使用以下命令在 OpenShift CLI 中验证安装
$ oc get all -n 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
安装KedaController
自定义资源,这将创建所需的 CRD。
在 OpenShift Dedicated 网络控制台中,点击**操作符** → **已安装的操作符**。
点击**自定义指标自动缩放器**。
在**操作符详细信息**页面上,点击**KedaController**选项卡。
在**KedaController**选项卡上,点击**创建 KedaController**并编辑文件。
kind: KedaController
apiVersion: keda.sh/v1alpha1
metadata:
name: keda
namespace: 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 | 指定自定义指标自动缩放器操作符应该缩放应用程序的单个命名空间。留空表示在所有命名空间中缩放应用程序。此字段应包含命名空间或为空。默认值为为空。 |
2 | 指定自定义指标自动缩放器操作符日志消息的详细程度。允许的值为debug 、info 、error 。默认为info 。 |
3 | 指定自定义指标自动缩放器操作符日志消息的日志格式。允许的值为console 或json 。默认为console 。 |
4 | 可选:指定一个或多个包含 CA 证书的 ConfigMap,自定义指标自动缩放器操作符可以使用这些证书安全地连接到启用 TLS 的指标源。 |
5 | 指定自定义指标自动缩放器指标服务器的日志级别。允许的值为0 表示info ,4 表示debug 。默认为0 。 |
6 | 激活自定义指标自动缩放器操作符的审计日志记录,并指定要使用的审计策略,如“配置审计日志记录”部分所述。 |
点击**创建**以创建 KEDA 控制器。