Keda: Getting "no matches for kind "ScaledObject""

Created on 22 Oct 2020  路  4Comments  路  Source: kedacore/keda

I'm not able to use Keda on my Docker Desktop (Windows 10) Kubernetes cluster. I followed the tutorial here:
https://github.com/kedacore/sample-go-rabbitmq

But i'm getting an error on kubectl apply -f deploy/deploy-consumer.yaml

Output of my keda install:

PS C:\WINDOWS\system32> helm install keda kedacore/keda --version 2.0.0-rc --namespace keda
manifest_sorter.go:192: info: skipping unknown hook: "crd-install"
manifest_sorter.go:192: info: skipping unknown hook: "crd-install"
manifest_sorter.go:192: info: skipping unknown hook: "crd-install"
NAME: keda
LAST DEPLOYED: Thu Oct 22 10:11:06 2020
NAMESPACE: keda
STATUS: deployed
REVISION: 1
TEST SUITE: None

Expected Behavior

The deploy consumer is correctly installed

Actual Behavior

secret/rabbitmq-consumer-secret created
deployment.apps/rabbitmq-consumer created
unable to recognize "deploy/deploy-consumer.yaml": no matches for kind "ScaledObject" in version "keda.k8s.io/v1alpha1"
unable to recognize "deploy/deploy-consumer.yaml": no matches for kind "TriggerAuthentication" in version "keda.k8s.io/v1alpha1"

Steps to Reproduce the Problem

  1. kubectl create namespace keda
  2. helm install keda kedacore/keda --version 2.0.0-rc --namespace keda
  3. helm repo add bitnami https://charts.bitnami.com/bitnami
  4. helm install rabbitmq --set auth.username=user --set auth.password=PASSWORD bitnami/rabbitmq
  5. kubectl apply -f deploy/deploy-consumer.yaml

deploy-consumer.yaml:

apiVersion: v1
kind: Secret
metadata:
  name: rabbitmq-consumer-secret
data:
  RabbitMqHost: YW1xcDovL3VzZXI6UEFTU1dPUkRAcmFiYml0bXEuZGVmYXVsdC5zdmMuY2x1c3Rlci5sb2NhbDo1Njcy
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: rabbitmq-consumer
  namespace: default
  labels:
    app: rabbitmq-consumer
spec:
  selector:
    matchLabels:
      app: rabbitmq-consumer
  template:
    metadata:
      labels:
        app: rabbitmq-consumer
    spec:
      containers:
        - name: rabbitmq-consumer
          image: jeffhollan/rabbitmq-client:dev
          imagePullPolicy: Always
          command:
            - receive
          args:
            - "amqp://user:[email protected]:5672"
---
apiVersion: keda.k8s.io/v1alpha1
kind: ScaledObject
metadata:
  name: rabbitmq-consumer
  namespace: default
  labels:
    deploymentName: rabbitmq-consumer
spec:
  scaleTargetRef:
    deploymentName: rabbitmq-consumer
  pollingInterval: 5 # Optional. Default: 30 seconds
  cooldownPeriod: 30 # Optional. Default: 300 seconds
  maxReplicaCount: 30 # Optional. Default: 100
  triggers:
    - type: rabbitmq
      metadata:
        queueName: hello
        queueLength: "5"
      authenticationRef:
        name: rabbitmq-consumer-trigger
---
apiVersion: keda.k8s.io/v1alpha1
kind: TriggerAuthentication
metadata:
  name: rabbitmq-consumer-trigger
  namespace: default
spec:
  secretTargetRef:
    - parameter: host
      name: rabbitmq-consumer-secret
      key: RabbitMqHost
---

Specifications

  • KEDA Version: 2.0.0-rc
  • Platform & Version: Windows 10, Docker Desktop Kubernetes cluster
  • Kubernetes Version: v1.18.8
  • Scaler(s): Please elaborate
bug

Most helpful comment

Make sure to use name for your scaleTargetRef instead of deploymentName and that our CRD has been changed to keda.sh/v1alpha1. See https://keda.sh/docs/2.0/migration/

All 4 comments

Seems like this sample hasn't been migrated to KEDA v2 yet. https://keda.sh/docs/2.0/migration/

@cwhfa Willing to pick this up?

Seems like this sample hasn't been migrated to KEDA v2 yet. https://keda.sh/docs/2.0/migration/

@cwhfa Willing to pick this up?

Yes, I created a PR here https://github.com/kedacore/sample-go-rabbitmq/pull/21

Hi @cwhfa and @zroubalik ,
I am facing the similar issue in my AKS cluster. Is there any fix or workaround?

Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "ScaledObject" in version "keda.k8s.io/v1alpha1"

Below is my scaled object

apiVersion: keda.k8s.io/v1alpha1
kind: ScaledObject
metadata:
  name: {{ .Chart.Name}}
  labels:
    deploymentName: {{ .Chart.Name}}
spec:
  scaleTargetRef:
    deploymentName: {{ .Chart.Name}}
  pollingInterval: 10
  cooldownPeriod: 30
  triggers:
  - type: azure-blob
    metadata:      
      blobContainerName: containername
      connection: StorageConnection

Secret

type: Opaque
stringData:
  StorageConnection: {{ .Values.secret.StorageConnection }}
  FUNCTIONS_WORKER_RUNTIME: {{ .Values.secret.FUNCTIONS_WORKER_RUNTIME }}
apiVersion: v1
kind: Secret
metadata:
  name: {{ .Chart.Name}}

Keda Chart Version - 2.0.1
App Version - 2.0.0

Kubernetes Version - 1.18.10

Make sure to use name for your scaleTargetRef instead of deploymentName and that our CRD has been changed to keda.sh/v1alpha1. See https://keda.sh/docs/2.0/migration/

Was this page helpful?
0 / 5 - 0 ratings