Penyekalaan otomatis aplikasi yang disederhanakan dengan add-on Penyekalaan Otomatis Berbasis Peristiwa (KEDA) Kubernetes
Autoscaling Berbasis Peristiwa (KEDA) Kubernetes adalah komponen serbaguna dan ringan yang berupaya membuat penskalan otomatis aplikasi menjadi sederhana dan merupakan proyek Lulusan CNCF.
Menerapkan penskalaan otomatis berbasis peristiwa untuk menskalakan aplikasi Anda untuk memenuhi permintaan secara berkelanjutan dan hemat biaya dengan skala-ke-nol.
Add-on KEDA membuatnya lebih mudah dengan menyebarkan penginstalan KEDA terkelola, memberi Anda katalog yang kaya dari penskala Azure KEDA yang dapat Anda skalakan pada kluster Azure Kubernetes Services (AKS).
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 tersebut akan mulai menjalankannya di pratinjau AKS versi 1.32.
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.
KEDA menyediakan dua komponen utama:
- Operator KEDA memungkinkan pengguna akhir untuk menskalakan beban kerja masuk/keluar dari instans 0 ke N dengan dukungan untuk Penyebaran Kubernetes, Pekerjaan, StatefulSets, atau sumber daya kustom apa pun yang menentukan
/scale
subsumber daya. - Server metrik mengekspos metrik eksternal ke Horizontal Pod Autoscaler (HPA) di Kubernetes untuk tujuan penskalaan otomatis seperti pesan dalam topik Kafka, atau jumlah peristiwa di aktivitas hub Azure. Karena keterbatasan upstream, KEDA harus menjadi satu-satunya adaptor metrik eksternal yang diinstal.
Pelajari selengkapnya tentang cara kerja KEDA dalam dokumentasi resmi KEDA.
KEDA dapat ditambahkan ke kluster Azure Kubernetes Service (AKS) Anda dengan mengaktifkan add-on KEDA menggunakan templat ARM atau Azure CLI.
Add-on KEDA menyediakan instalasi KEDA yang didukung penuh serta terintegrasi dengan AKS.
KEDA menyediakan kemampuan dan fitur berikut:
- Membangun aplikasi yang berkelanjutan dan hemat biaya dengan skala-ke-nol
- Menskalakan beban kerja aplikasi untuk memenuhi permintaan menggunakan katalog penskala Azure KEDA yang kaya
- Menskalakan otomatis aplikasi dengan
ScaledObjects
, seperti penyebaran, StatefulSets atau sumber daya kustom apa pun yang menentukan/scale
sub sumber daya - Beban kerja seperti pekerjaan skala otomatis dengan
ScaledJobs
- Gunakan keamanan tingkat produksi dengan memisahkan autentikasi penskalaan otomatis dari beban kerja
- Bawa sendiri pengskala eksternal Anda untuk menggunakan pengskalaan otomatis yang disesuaikan
- Integrasikan dengan ID Beban Kerja Microsoft Entra untuk autentikasi
Catatan
Jika Anda berencana menggunakan identitas beban kerja, aktifkan add-on identitas beban kerja sebelum mengaktifkan add-on KEDA.
Add-on KEDA AKS memiliki batasan sebagai berikut:
- KEDA’SAdd-on HTTP KEDA (pratinjau) untuk menskalakan beban kerja HTTP tidak diinstal dengan ekstensi, tetapi dapat disebarkan secara terpisah.
- KEDA'SPenskala eksternal KEDA untuk Azure Cosmos DBuntuk menskalakan berdasarkan Azure Cosmos DB perubahan umpan tidak dipasang dengan ekstensi, tetapi dapat disebarkan secara terpisah.
- Hanya satu server metrik eksternal yang diizinkan di kluster Kubernetes. Karena itu add-on KEDA harus menjadi satu-satunya server metrik eksternal di dalam kluster.
- Beberapa penginstalan KEDA tidak didukung
Untuk pertanyaan umum KEDA, sebaiknya kunjungi gambaran umum FAQ.
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
.
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:
Umpan balik Azure Kubernetes Service
Azure Kubernetes Service adalah proyek sumber terbuka. Pilih tautan untuk memberikan umpan balik: