Instal add-on Autoscaling berbasis Peristiwa (KEDA) Kubernetes menggunakan Azure CLI

Artikel ini menunjukkan cara menginstal add-on Autoscaling berbasis Peristiwa (KEDA) Kubernetes ke Azure Kubernetes Service (AKS) menggunakan Azure CLI.

Penting

Versi Kubernetes kluster Anda menentukan versi KEDA apa yang akan diinstal pada kluster AKS Anda. Untuk melihat versi KEDA mana yang dipetakan ke setiap versi AKS, lihat kolom add-on terkelola AKS dari tabel versi komponen Kubernetes.

Untuk versi GA Kubernetes, AKS menawarkan dukungan penuh dari versi minor KEDA yang sesuai dalam tabel. Versi pratinjau Kubernetes dan patch KEDA terbaru sebagian dicakup oleh dukungan pelanggan berdasarkan upaya terbaik. Dengan demikian, fitur-fitur ini tidak dimaksudkan untuk penggunaan produksi. Untuk informasi lebih lanjut, lihat artikel dukungan berikut ini:

Sebelum Anda mulai

Catatan

Jika Anda menggunakan ID Beban Kerja Microsoft Entra dan mengaktifkan KEDA sebelum ID Beban Kerja, Anda perlu menghidupkan ulang pod operator KEDA sehingga variabel lingkungan yang tepat dapat disuntikkan:

  1. Hidupkan ulang pod dengan menjalankan kubectl rollout restart deployment keda-operator -n kube-system.

  2. Dapatkan pod operator KEDA menggunakan kubectl get pod -n kube-system dan menemukan Pod yang dimulai dengan keda-operator.

  3. Verifikasi keberhasilan injeksi variabel lingkungan dengan menjalankan kubectl describe pod <keda-operator-pod> -n kube-system. Di bawah Environment, Anda akan melihat nilai untuk AZURE_TENANT_ID, AZURE_FEDERATED_TOKEN_FILE, dan AZURE_AUTHORITY_HOST.

Memasang add-on KEDA dengan Azure CLI

Untuk memasang add-on KEDA, gunakan --enable-keda saat membuat atau memperbarui kluster.

Mengaktifkan add-on KEDA pada kluster AKS Anda

Catatan

Meskipun KEDA menyediakan berbagai opsi penyesuaian, add-on KEDA saat ini menyediakan konfigurasi umum dasar.

Jika Anda memerlukan konfigurasi kustom, Anda dapat mengedit file YAML KEDA secara manual untuk menyesuaikan penginstalan. Azure tidak menawarkan dukungan untuk konfigurasi kustom.

Membuat kluster AKS baru dengan add-on KEDA diaktifkan

  1. Buat grup sumber daya menggunakan az group create perintah .

    az group create --name myResourceGroup --location eastus
    
  2. Buat kluster AKS baru menggunakan az aks create perintah dan aktifkan add-on KEDA menggunakan --enable-keda bendera .

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

Mengaktifkan add-on KEDA pada kluster AKS yang ada

  • Perbarui kluster yang ada menggunakan az aks update perintah dan aktifkan add-on KEDA menggunakan --enable-keda bendera .

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

Dapatkan informasi masuk untuk kluster Anda

  • Dapatkan kredensial untuk kluster AKS Anda menggunakan az aks get-credentials perintah .

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

Verifikasi add-on KEDA diinstal pada kluster Anda

  • Verifikasi add-on KEDA diinstal pada kluster Anda menggunakan az aks show perintah dan atur --query parameter ke workloadAutoScalerProfile.keda.enabled.

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

    Contoh output berikut menunjukkan add-on KEDA diinstal pada kluster:

    true
    

Pastikan KEDA berjalan pada kluster Anda

  • Verifikasi add-on KEDA berjalan pada kluster Anda menggunakan kubectl get pods perintah .

    kubectl get pods -n kube-system 
    

    Contoh output berikut menunjukkan operator KEDA, hook penerimaan, dan server API metrik diinstal pada kluster:

    keda-admission-webhooks-**********-2n9zl           1/1     Running   0            3d18h
    keda-admission-webhooks-**********-69dkg           1/1     Running   0            3d18h
    keda-operator-*********-4hb5n                      1/1     Running   0            3d18h
    keda-operator-*********-pckpx                      1/1     Running   0            3d18h
    keda-operator-metrics-apiserver-**********-gqg4s   1/1     Running   0            3d18h
    keda-operator-metrics-apiserver-**********-trfcb   1/1     Running   0            3d18h
    

Memverifikasi versi KEDA pada kluster Anda

Untuk memverifikasi versi KEDA Anda, gunakan kubectl get crd/scaledobjects.keda.sh -o yaml . Contohnya:

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

Contoh output berikut menunjukkan konfigurasi KEDA pada label app.kubernetes.io/version:

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.9.0
    meta.helm.sh/release-name: aks-managed-keda
    meta.helm.sh/release-namespace: kube-system
  creationTimestamp: "2023-08-09T15:58:56Z"
  generation: 1
  labels:
    app.kubernetes.io/component: operator
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/name: keda-operator
    app.kubernetes.io/part-of: keda-operator
    app.kubernetes.io/version: 2.10.1
    helm.toolkit.fluxcd.io/name: keda-adapter-helmrelease
    helm.toolkit.fluxcd.io/namespace: 64d3b6fd3365790001260647
  name: scaledobjects.keda.sh
  resourceVersion: "1421"
  uid: 29109c8c-638a-4bf5-ac1b-c28ad9aa11fa
spec:
  conversion:
    strategy: None
  group: keda.sh
  names:
    kind: ScaledObject
    listKind: ScaledObjectList
    plural: scaledobjects
    shortNames:
    - so
    singular: scaledobject
  scope: Namespaced
  # Redacted due to length

Menonaktifkan add-on KEDA pada kluster AKS Anda

  • Nonaktifkan add-on KEDA pada kluster Anda menggunakan az aks update perintah dengan --disable-keda bendera .

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

Langkah berikutnya

Artikel ini menunjukkan kepada Anda cara menginstal add-on KEDA pada kluster AKS menggunakan Azure CLI.

Dengan add-on KEDA yang dipasang pada kluster, Anda dapat menyebarkan aplikasi contoh untuk mulai menskalakan aplikasi.

Untuk informasi tentang pemecahan masalah KEDA, lihat Memecahkan masalah add-on Autoscaling berbasis Peristiwa (KEDA) Kubernetes.

Untuk mempelajari lebih lanjut , lihat dokumen KEDA upstream.