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:
Catatan
KEDA versi 2.15 memperkenalkan perubahan yang melanggar yang menghapus dukungan identitas pod. Sebaiknya pindah ke identitas beban kerja untuk autentikasi jika Anda menggunakan identitas pod. Meskipun add-on yang dikelola KEDA saat ini tidak menjalankan KEDA versi 2.15, add-on yang dikelola KEDA akan mulai menjalankannya di pratinjau AKS versi 1.31.
Untuk informasi selengkapnya tentang cara menskalakan aplikasi Anda dengan aman dengan identitas beban kerja, silakan baca tutorial kami. Untuk melihat kebijakan perubahan/penghentian KEDA yang melanggar, baca dokumentasi resmi mereka.
Sebelum Anda mulai
- Anda memerlukan langganan Azure. Jika Anda tidak memiliki langganan Azure, Anda dapat membuat akun gratis.
- Anda memerlukan Azure CLI yang terinstal.
- Pastikan Anda memiliki aturan firewall yang dikonfigurasi untuk mengizinkan akses ke server API Kubernetes. Untuk informasi selengkapnya, lihat Aturan jaringan keluar dan FQDN untuk kluster Azure Kubernetes Service (AKS).
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:
Hidupkan ulang pod dengan menjalankan
kubectl rollout restart deployment keda-operator -n kube-system
.Dapatkan pod operator KEDA menggunakan
kubectl get pod -n kube-system
dan menemukan Pod yang dimulai dengankeda-operator
.Verifikasi keberhasilan injeksi variabel lingkungan dengan menjalankan
kubectl describe pod <keda-operator-pod> -n kube-system
. Di bawahEnvironment
, Anda akan melihat nilai untukAZURE_TENANT_ID
,AZURE_FEDERATED_TOKEN_FILE
, danAZURE_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
Buat grup sumber daya menggunakan
az group create
perintah .az group create --name myResourceGroup --location eastus
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 \ --generate-ssh-keys
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 keworkloadAutoScalerProfile.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.
Azure Kubernetes Service