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).

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 metrikaadapternek.

Diagram that shows the architecture of K E D A and how it extends Kubernetes instead of re-inventing the wheel.

További információ a KEDA működéséről a HIVATALOS KEDA dokumentációjában.

Installation

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ássalScaledObjects, 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

Megjegyzé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 metrikus kiszolgáló engedélyezett. Emiatt a KEDA-kiegészítőnek kell lennie az egyetlen metrikai kiszolgá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.

Megjegyzé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:

  1. Indítsa újra a podokat a futtatással kubectl rollout restart deployment keda-operator -n kube-system.

  2. A KEDA operátori podok lekérése kubectl get pod -n kube-system és a kezdő podok megkeresése keda-operator.

  3. 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 csoportban Environmenta következő értékeknek kell megjelennie AZURE_TENANT_ID: , AZURE_FEDERATED_TOKEN_FILEés AZURE_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