Installera tillägget Kubernetes Event-driven Autoscaling (KEDA) med hjälp av Azure CLI

Den här artikeln visar hur du installerar tillägget Kubernetes Event-driven Autoscaling (KEDA) i Azure Kubernetes Service (AKS) med hjälp av Azure CLI. Artikeln innehåller steg för att kontrollera att den är installerad och körs.

Viktigt

KEDA-tillägget installerar version 2.7.0 av KEDA på klustret.

På grund av KEDA:s Kubernetes-kompatibilitetsprincip stöds det hanterade KEDA-tillägget endast i Kubernetes-versioner <= 1,25 när det är allmänt tillgängligt. Följ viktig information för att få ytterligare support för Kubernetes-versionen.

Förutsättningar

Installera Azure CLI-tillägget aks-preview

Viktigt

Förhandsversionsfunktionerna i AKS är tillgängliga via självbetjäning. Förhandsversioner tillhandahålls "i förekommande skick" och "som tillgängliga" och de undantas från serviceavtalen och den begränsade garantin. AKS-förhandsversioner omfattas delvis av kundsupport på bästa sätt. Dessa funktioner är därför inte avsedda för produktionsanvändning. Mer information finns i följande supportartiklar:

Kör följande kommando för att installera tillägget aks-preview:

az extension add --name aks-preview

Kör följande kommando för att uppdatera till den senaste versionen av tillägget som släpptes:

az extension update --name aks-preview

Registrera funktionsflaggan AKS-KedaPreview

Registrera funktionsflaggan AKS-KedaPreview med hjälp av kommandot az feature register , som du ser i följande exempel:

az feature register --namespace "Microsoft.ContainerService" --name "AKS-KedaPreview"

Det tar några minuter för statusen att visa Registrerad. Kontrollera registreringsstatusen med hjälp av kommandot az feature show :

az feature show --namespace "Microsoft.ContainerService" --name "AKS-KedaPreview"

När statusen visar Registrerad uppdaterar du registreringen av resursprovidern Microsoft.ContainerService med hjälp av kommandot az provider register :

az provider register --namespace Microsoft.ContainerService

Installera KEDA-tillägget med Azure CLI

Om du vill installera KEDA-tillägget använder --enable-keda du när du skapar eller uppdaterar ett kluster.

I följande exempel skapas en myResourceGroup-resursgrupp . Sedan skapas ett myAKSCluster-kluster med KEDA-tillägget.

az group create --name myResourceGroup --location eastus

az aks create \
  --resource-group myResourceGroup \
  --name myAKSCluster \
  --enable-keda 

För befintliga kluster använder du az aks update med --enable-keda alternativet . Följande kod visar ett exempel.

az aks update \
  --resource-group myResourceGroup \
  --name myAKSCluster \
  --enable-keda 

Hämta autentiseringsuppgifterna för klustret

Hämta autentiseringsuppgifterna för ditt AKS-kluster med hjälp az aks get-credentials av kommandot . Följande exempelkommando hämtar autentiseringsuppgifterna för myAKSCluster i resursgruppen myResourceGroup :

az aks get-credentials --resource-group myResourceGroup --name myAKSCluster

Kontrollera att KEDA-tillägget är installerat i klustret

Om du vill se om KEDA-tillägget är installerat i klustret kontrollerar du att enabled värdet är true för keda under workloadAutoScalerProfile.

I följande exempel visas status för KEDA-tillägget för myAKSCluster i myResourceGroup:

az aks show -g "myResourceGroup" --name myAKSCluster --query "workloadAutoScalerProfile.keda.enabled" 

Kontrollera att KEDA körs i klustret

Du kan kontrollera att KEDA körs i klustret. Använd kubectl för att visa operatorn och måttservern som är installerad i AKS-klustret under kube-system-namnrymden. Ett exempel:

kubectl get pods -n kube-system 

Följande exempelutdata visar att KEDA-operatorn och MÅTT-API-servern är installerade i AKS-klustret tillsammans med dess status.

kubectl get pods -n kube-system

keda-operator-********-k5rfv                     1/1     Running   0          43m
keda-operator-metrics-apiserver-*******-sj857   1/1     Running   0          43m

Om du vill verifiera versionen av din KEDA använder du kubectl get crd/scaledobjects.keda.sh -o yaml . Ett exempel:

kubectl get crd/scaledobjects.keda.sh -o yaml 

Följande exempelutdata visar konfigurationen av KEDA i app.kubernetes.io/version etiketten:

kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.8.0
  creationTimestamp: "2022-06-08T10:31:06Z"
  generation: 1
  labels:
    addonmanager.kubernetes.io/mode: Reconcile
    app.kubernetes.io/component: operator
    app.kubernetes.io/name: keda-operator
    app.kubernetes.io/part-of: keda-operator
    app.kubernetes.io/version: 2.7.0
  name: scaledobjects.keda.sh
  resourceVersion: "2899"
  uid: 85b8dec7-c3da-4059-8031-5954dc888a0b
spec:
  conversion:
    strategy: None
  group: keda.sh
  names:
    kind: ScaledObject
    listKind: ScaledObjectList
    plural: scaledobjects
    shortNames:
    - so
    singular: scaledobject
  scope: Namespaced
  # Redacted for simplicity

Även om KEDA tillhandahåller olika anpassningsalternativ ger KEDA-tillägget för närvarande grundläggande gemensam konfiguration.

Om du har krav på att köra med en annan anpassad konfiguration, till exempel namnrymder som ska övervakas eller justera loggnivån, kan du redigera KEDA YAML manuellt och distribuera den.

Men när installationen är anpassad kommer det inte att finnas något stöd för anpassade konfigurationer.

Inaktivera KEDA-tillägg från ditt AKS-kluster

När du inte längre behöver KEDA-tillägg i klustret använder du az aks update kommandot med alternativet --disable-keda. Den här körningen inaktiverar automatisk skalning av KEDA-arbetsbelastning.

az aks update \
  --resource-group myResourceGroup \
  --name myAKSCluster \
  --disable-keda 

Nästa steg

Den här artikeln visade hur du installerar KEDA-tillägget på ett AKS-kluster med hjälp av Azure CLI. Stegen för att kontrollera att KEDA-tillägget är installerat och körs ingår. Med KEDA-tillägget installerat i klustret kan du distribuera ett exempelprogram för att börja skala appar.

Du kan felsöka problem med KEDA-tillägg i den här artikeln.