$ oc delete crd scaledobjects.keda.k8s.io
您可以使用AWS上的Red Hat OpenShift Service Web控制台安装自定义指标自动缩放算子。
安装将创建以下五个CRD:
ClusterTriggerAuthentication
KedaController
ScaledJob
ScaledObject
TriggerAuthentication
您可以使用以下步骤安装自定义指标自动缩放算子。
您作为具有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
在AWS上的Red Hat OpenShift Service 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。
在AWS上的Red Hat OpenShift Service Web控制台中,点击操作符 → 已安装操作符。
点击自定义指标自动缩放器。
在操作符详细信息页面上,点击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证书的配置映射,自定义指标自动缩放算子可以使用这些证书安全地连接到启用TLS的指标源。 |
5 | 指定自定义指标自动缩放器指标服务器的日志级别。允许的值为0 (表示info )和4 (表示debug )。默认为0 。 |
6 | 激活自定义指标自动缩放算子的审计日志记录,并指定要使用的审计策略,如“配置审计日志记录”部分所述。 |
点击创建以创建KEDA控制器。