Zjednodušené automatické škálování aplikací pomocí doplňku KEDA (Event-driven Autoscaling) Kubernetes
Automatické škálování řízené událostmi Kubernetes (KEDA) je jednoúčelová a jednoduchá komponenta, která se snaží usnadnit automatické škálování aplikací a je projekt CNCF Graduate.
Použije automatické škálování řízené událostmi pro škálování aplikace tak, aby splňovalo poptávku udržitelným a nákladově efektivním způsobem pomocí škálování na nulu.
Doplněk KEDA usnadňuje nasazení spravované instalace KEDA a poskytuje bohatý katalog škálovacích nástrojů Azure KEDA, které můžete škálovat pomocí clusteru Azure Kubernetes Services (AKS).
Poznámka:
KEDA verze 2.15 zavádí zásadní změnu, která odstraňuje podporu identit podů. Pokud používáte identitu podu, doporučujeme přejít na identitu úloh pro vaše ověřování. I když spravovaný doplněk KEDA aktuálně nespouští KEDA verze 2.15, začne ho spouštět ve verzi AKS Preview 1.32.
Další informace o tom, jak bezpečně škálovat aplikace pomocí identity úloh, najdete v našem kurzu. Pokud si chcete prohlédnout zásady zásadních změn nebo vyřazení ke službě KEDA, přečtěte si oficiální dokumentaci.
Architektura
KEDA poskytuje dvě hlavní komponenty:
- Operátor KEDA umožňuje koncovým uživatelům škálovat úlohy od 0 do N instancí s podporou nasazení, úloh, stavových sad Kubernetes nebo libovolného vlastního prostředku, který definuje
/scale
podsourc. - Server metrik zveřejňuje externí metriky horizontálnímu automatickému škálování podů (HPA) v Kubernetes pro účely automatického škálování, jako jsou zprávy v tématu Kafka nebo počet událostí v centru událostí Azure. Z důvodu upstreamových omezení musí být KEDA jediným nainstalovaným externím adaptérem metrik.
Další informace o tom, jak KEDA funguje, najdete v oficiální dokumentaci KEDA.
Instalace
KeDA je možné přidat do clusteru Azure Kubernetes Service (AKS) povolením doplňku KEDA pomocí šablony ARM nebo Azure CLI.
Doplněk KEDA poskytuje plně podporovanou instalaci KEDA, která je integrovaná s AKS.
Možnosti a funkce
KEDA poskytuje následující funkce a funkce:
- Vytváření udržitelných a nákladově efektivních aplikací s využitím škálování na nulu
- Škálování aplikačních úloh tak, aby splňovaly poptávku pomocí bohatého katalogu škálovacích nástrojů Azure KEDA
- Automatické škálování aplikací pomocí
ScaledObjects
nasazení, stavových sad nebo libovolného vlastního prostředku, který definuje/scale
podsourc - Automatické škálování úloh podobných úlohám pomocí
ScaledJobs
- Použití zabezpečení na úrovni produkčního prostředí oddělením ověřování automatického škálování od úloh
- Používání vlastního externího škálovače pro použití rozhodnutí o automatickém škálování na míru
- Integrace s ID úloh Microsoft Entra pro ověřování
Poznámka:
Pokud plánujete používat identitu úloh, před povolením doplňku KEDA povolte doplněk identity úlohy.
Omezení doplňků
Doplněk KEDA AKS má následující omezení:
- Doplněk HTTP KEDA (náhled) pro škálování úloh HTTP se neinstaluje s rozšířením, ale lze jej nasadit samostatně.
- Externí škálovací nástroj KEDA pro službu Azure Cosmos DB pro škálování na základě kanálu změn Azure Cosmos DB se neinstaluje s rozšířením, ale lze jej nasadit samostatně.
- V clusteru Kubernetes je povolený jenom jeden externí server metriky. Vzhledem k tomu, že doplněk KEDA by měl být jediným externím serverem metrik v clusteru.
- Není podporováno více instalací KEDA.
Pro obecné dotazy keda doporučujeme navštívit přehled nejčastějších dotazů.
Poznámka:
Pokud používáte ID úloh Microsoft Entra a před ID úloh povolíte KEDA, musíte restartovat pody operátoru KEDA, aby bylo možné vloženého správné proměnné prostředí:
Restartujte pody spuštěním
kubectl rollout restart deployment keda-operator -n kube-system
příkazu .Získejte pody operátorů KEDA pomocí
kubectl get pod -n kube-system
a hledání podů, které začínajíkeda-operator
.Spuštěním
kubectl describe pod <keda-operator-pod> -n kube-system
příkazu ověřte úspěšné injektáže proměnných prostředí . V částiEnvironment
by se měly zobrazit hodnoty proAZURE_TENANT_ID
,AZURE_FEDERATED_TOKEN_FILE
aAZURE_AUTHORITY_HOST
.
Podporované verze Kubernetes a KEDA
Verze Kubernetes vašeho clusteru určuje, jaká verze KEDA se nainstaluje v clusteru AKS. Pokud chcete zjistit, která verze KEDA se mapuje na každou verzi AKS, podívejte se na sloupec spravovaných doplňků AKS v tabulce verzí komponent Kubernetes.
Pro verze GA Kubernetes nabízí AKS plnou podporu odpovídající podverze KEDA v tabulce. Verze Kubernetes Preview a nejnovější opravy KEDA jsou částečně pokryty zákaznickou podporou na základě maximálního úsilí. Proto tyto funkce nejsou určené pro produkční použití. Další informace najdete v následujících článcích podpory:
Další kroky
Azure Kubernetes Service