Kubernetes Olay Odaklı Otomatik Ölçeklendirme (KEDA) eklentisiyle basitleştirilmiş uygulama otomatik ölçeklendirmesi
Kubernetes Event-driven Autoscaling (KEDA), uygulama otomatik ölçeklendirmesini basitleştirmeye çalışan tek amaçlı ve hafif bir bileşendir ve CNCF Graduate projesidir.
Uygulamanızı sıfıra ölçeklendirin ve sürdürülebilir ve uygun maliyetli bir şekilde talebi karşılayacak şekilde ölçeklendirmek için olay odaklı otomatik ölçeklendirme uygular.
KEDA eklentisi, yönetilen bir KEDA yüklemesi dağıtarak uygulamalarınızı Azure Kubernetes Services (AKS) kümenizde ölçeklendirebileceğiniz zengin bir Azure KEDA ölçekleyici kataloğu sağlayarak bunu daha da kolaylaştırır.
Not
KEDA sürüm 2.15, pod kimliği desteğini kaldıran bir hataya neden olan değişikliği tanıtır. Pod kimliği kullanıyorsanız kimlik doğrulamanız için iş yükü kimliğine geçmenizi öneririz. KEDA yönetilen eklentisi şu anda KEDA sürüm 2.15'i çalıştırmasa da, BUNU AKS önizleme sürümü 1.32'de çalıştırmaya başlar.
İş yükü kimliğiyle uygulamalarınızı güvenli bir şekilde ölçeklendirme hakkında daha fazla bilgi için lütfen öğreticimizi okuyun. KEDA'nın hataya neden olan değişiklik/kullanımdan kaldırma ilkesini görüntülemek için lütfen resmi belgelerini okuyun.
Mimari
KEDA iki ana bileşen sağlar:
- KEDA operatörü Kubernetes Dağıtımları, İşler, StatefulSets veya alt kaynağı tanımlayan
/scale
herhangi bir özel kaynak desteğiyle son kullanıcıların iş yüklerini 0'dan N örneğe ölçeklendirmesine olanak tanır. - Ölçüm sunucusu , Kafka konu başlığındaki iletiler veya Azure olay hub'ında olay sayısı gibi otomatik ölçeklendirme amacıyla Kubernetes'teki Yatay Pod Otomatik Ölçeklendiricisi'nde (HPA) dış ölçümleri kullanıma sunar. Yukarı akış sınırlamaları nedeniyle, KEDA'nın yüklenen tek dış ölçüm bağdaştırıcısı olması gerekir.
Resmi KEDA belgelerinde KEDA'nın nasıl çalıştığı hakkında daha fazla bilgi edinin.
Yükleme
KEDA, ARM şablonu veya Azure CLI kullanılarak KEDA eklentisi etkinleştirilerek Azure Kubernetes Service (AKS) kümenize eklenebilir.
KEDA eklentisi, AKS ile tümleştirilmiş tam olarak desteklenen bir KEDA yüklemesi sağlar.
Yetenekler ve özellikler
KEDA aşağıdaki özellikleri ve özellikleri sağlar:
- Sıfıra ölçekle sürdürülebilir ve uygun maliyetli uygulamalar oluşturma
- Azure KEDA ölçeklendiricilerinin zengin kataloğunu kullanarak uygulama iş yüklerini talebi karşılayacak şekilde ölçeklendirme
- Ile Dağıtımlar, StatefulSets veya alt kaynağı tanımlayan
/scale
herhangi bir özel kaynak gibi uygulamalarıScaledObjects
otomatik ölçeklendirme - ile iş benzeri iş yüklerini otomatik ölçeklendirme
ScaledJobs
- İş yüklerinden otomatik ölçeklendirme kimlik doğrulamasını birbirinden çıkararak üretim sınıfı güvenliği kullanma
- Özel olarak hazırlanmış otomatik ölçeklendirme kararlarını kullanmak için kendi harici ölçeklendiricinizi getirin
- Kimlik doğrulaması için Microsoft Entra İş Yükü Kimliği ile tümleştirme
Not
İş yükü kimliğini kullanmayı planlıyorsanız, KEDA eklentisini etkinleştirmeden önce iş yükü kimliği eklentisini etkinleştirin.
Eklenti sınırlamaları
KEDA AKS eklentisi aşağıdaki sınırlamalara sahiptir:
- KEDA'nın HTTP iş yüklerini ölçeklendirmeye yönelik HTTP eklentisi (önizleme), uzantıyla birlikte yüklenmez ancak ayrı olarak dağıtılabilir.
- KEDA'nın, Azure Cosmos DB değişiklik akışına göre ölçeklendirmek için olan, Azure Cosmos DB'ye yönelik harici ölçeklendiricisi, uzantıyla birlikte yüklenmez ancak ayrı olarak dağıtılabilir.
- Kubernetes kümesinde yalnızca bir dış ölçüm sunucusuna izin verilir. Bu yüzden KEDA eklentisi, küme içindeki tek dış ölçüm sunucusu olmalıdır.
- Birden çok KEDA yüklemesi desteklenmez
Genel KEDA soruları için SSS'ye genel bakış bölümünü ziyaret etmenizi öneririz.
Not
Microsoft Entra İş Yükü Kimliği kullanıyorsanız ve İş Yükü Kimliği önce KEDA'yı etkinleştirirseniz, uygun ortam değişkenlerinin eklenebilmesi için KEDA işleç podlarını yeniden başlatmanız gerekir:
komutunu çalıştırarak
kubectl rollout restart deployment keda-operator -n kube-system
podları yeniden başlatın.kullanarak
kubectl get pod -n kube-system
KEDA işleç podlarını alın ve ilekeda-operator
başlayan podları bulun.komutunu çalıştırarak
kubectl describe pod <keda-operator-pod> -n kube-system
ortam değişkenlerinin başarıyla eklenmesini doğrulayın. altındaEnvironment
,AZURE_FEDERATED_TOKEN_FILE
veAZURE_AUTHORITY_HOST
değerleriniAZURE_TENANT_ID
görmeniz gerekir.
Desteklenen Kubernetes ve KEDA sürümleri
Kümenizin Kubernetes sürümü, AKS kümenize hangi KEDA sürümünün yükleneceğini belirler. Hangi KEDA sürümünün her AKS sürümüne eşleneceğini görmek için Kubernetes bileşen sürümü tablosunun AKS tarafından yönetilen eklentiler sütununa bakın.
GA Kubernetes sürümleri için AKS, tablodaki ilgili KEDA ikincil sürümü için tam destek sunar. Kubernetes önizleme sürümleri ve en son KEDA düzeltme eki, müşteri desteği kapsamındadır. Bu nedenle, bu özellikler üretim kullanımı için tasarlanmamıştır. Daha fazla bilgi için aşağıdaki destek makalelerine bakın:
Sonraki adımlar
Azure Kubernetes Service