Egyszerűsített alkalmazás-automatikus skálázás a Kubernetes eseményvezérelt automatikus skálázási (KEDA) bővítményével
A Kubernetes Eseményvezérelt automatikus skálázás (KEDA) egy egy célra szolgáló és egyszerűsített összetevő, amely arra törekszik, hogy az alkalmazás automatikus skálázása egyszerű legyen, és egy CNCF graduate projekt.
Eseményvezérelt automatikus skálázást alkalmaz az alkalmazás skálázására, hogy fenntartható és költséghatékony módon, nullára skálázva kielégítse az igényeket.
A KEDA bővítmény még egyszerűbbé teszi egy felügyelt KEDA-telepítés üzembe helyezését, amely az Azure KEDA-skálázók gazdag katalógusát biztosítja, amellyel skálázhatja az alkalmazásait az Azure Kubernetes Services-fürtön (AKS).
Feljegyzés
A KEDA 2.15-ös verziója olyan kompatibilitástörő változást vezet be, amely eltávolítja a pod identitástámogatását. Javasoljuk, hogy pod-identitás használata esetén térjen át a számítási feladatok identitására a hitelesítéshez. Bár a KEDA által felügyelt bővítmény jelenleg nem futtatja a KEDA 2.15-ös verzióját, az AKS előzetes verziójában, az 1.32-es verzióban fogja futtatni.
Az alkalmazások számítási feladatok identitásával való biztonságos skálázásáról további információt az oktatóanyagban talál. A KEDA kompatibilitástörő változási/elavulással kapcsolatos szabályzatának megtekintéséhez olvassa el a hivatalos dokumentációt.
Architektúra
A KEDA két fő összetevőt biztosít:
- A KEDA-operátor lehetővé teszi, hogy a végfelhasználók 0-tól N-példányig skálázhatják a számítási feladatokat a Kubernetes-környezetek, a feladatok, a StatefulSets vagy bármely, az alforrást meghatározó
/scale
egyéni erőforrás támogatásával. - A metrikakiszolgáló külső metrikákat tesz elérhetővé a Kubernetes horizontális pod-automatikus skálázási (HPA) eszközén automatikus skálázás céljából, például egy Kafka-témakör üzenetei vagy egy Azure-eseményközpont eseményeinek száma érdekében. A felsőbb rétegbeli korlátozások miatt a KEDA-nak kell lennie az egyetlen telepített külső metrikaadapternek.
További információ a KEDA működéséről a HIVATALOS KEDA dokumentációjában.
Telepítés
A KEDA hozzáadható az Azure Kubernetes Service (AKS) fürthöz a KEDA bővítmény ARM-sablonnal vagy Azure CLI-vel való engedélyezésével.
A KEDA bővítmény a KEDA teljes körűen támogatott telepítését biztosítja, amely integrálva van az AKS-sel.
Képességek és funkciók
A KEDA a következő képességeket és funkciókat biztosítja:
- Fenntartható és költséghatékony alkalmazások létrehozása nullára skálázással
- Alkalmazások számítási feladatainak skálázása az igényeknek megfelelően az Azure KEDA-skálázók gazdag katalógusával
- Automatikus skálázási alkalmazások, például üzembe helyezésekkel, StatefulSet-ekkel vagy bármely olyan egyéni erőforrással
ScaledObjects
, amely az alforrást definiálja/scale
- Feladatszerű számítási feladatok automatikus méretezése a
ScaledJobs
- Éles szintű biztonság használata az automatikus hitelesítés számítási feladatoktól való leválasztásával
- Saját külső skálázó használata személyre szabott automatikus méretezési döntésekhez
- Integráció Microsoft Entra Számítási feladat ID hitelesítéshez
Feljegyzés
Ha számítási feladat identitását tervezi használni, a KEDA bővítmény engedélyezése előtt engedélyezze a számítási feladat identitásának bővítményét.
Bővítménykorlátozások
A KEDA AKS bővítményre a következő korlátozások vonatkoznak:
- A KEDA HTTP-kiegészítő (előzetes) a HTTP-munkaterhelések skálázásához nem a bővítménnyel együtt települ, hanem külön telepíthető.
- A KEDA külső skálázó az Azure Cosmos DB-hez az Azure Cosmos DB változásai alapján történő skálázáshoz nem a bővítménnyel együtt települ, hanem külön telepíthető.
- A Kubernetes-fürtben csak egy külső metrikakiszolgáló engedélyezett. Emiatt a KEDA bővítménynek kell lennie az egyetlen külső metrikakiszolgálónak a fürtön belül.
- Több KEDA telepítés nem támogatott
Általános KEDA-kérdések esetén javasoljuk, hogy tekintse meg a GYIK áttekintését.
Feljegyzés
Ha Microsoft Entra Számítási feladat ID használ, és Számítási feladat ID előtt engedélyezi a KEDA-t, újra kell indítania a KEDA operátori podjait, hogy a megfelelő környezeti változók injektálhatók legyenek:
Indítsa újra a podokat a futtatással
kubectl rollout restart deployment keda-operator -n kube-system
.A KEDA operátori podok lekérése
kubectl get pod -n kube-system
és a kezdő podok megkeresésekeda-operator
.Ellenőrizze a környezeti változók sikeres injektálását a futtatással
kubectl describe pod <keda-operator-pod> -n kube-system
. A csoportbanEnvironment
a következő értékeknek kell megjelennieAZURE_TENANT_ID
: ,AZURE_FEDERATED_TOKEN_FILE
ésAZURE_AUTHORITY_HOST
.
Támogatott Kubernetes- és KEDA-verziók
A fürt Kubernetes-verziója határozza meg, hogy milyen KEDA-verzió lesz telepítve az AKS-fürtön. Az egyes AKS-verziókhoz tartozó KEDA-verziók megtekintéséhez tekintse meg a Kubernetes-összetevő verziótáblájának AKS által felügyelt bővítmények oszlopát.
A GA Kubernetes-verziók esetében az AKS teljes mértékben támogatja a táblázat megfelelő KEDA-alverzióját. A Kubernetes előzetes verzióit és a legújabb KEDA-javításokat részben az ügyfélszolgálat fedezi a legjobb munka érdekében. Ezért ezek a funkciók nem éles használatra vannak szánva. További információkért tekintse meg az alábbi támogatási cikkeket:
Következő lépések
Azure Kubernetes Service