Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ważne
Dodatek KEDA dla usługi AKS nie obsługuje obecnie modyfikowania prośb dotyczących CPU ani limitów oraz innych wartości Helm dla serwera metryk lub operatora. Pamiętaj o tym ograniczeniu podczas korzystania z dodatku. Jeśli masz jakiekolwiek pytania, możesz skontaktować się tutaj.
Kubernetes Event-driven Autoscaling (KEDA) to wyspecjalizowany i lekki komponent, który upraszcza automatyczne skalowanie aplikacji. Jest to projekt Cloud Native Computing Foundation (CNCF) Graduate. Usługa KEDA używa automatycznego skalowania opartego na zdarzeniach do skalowania aplikacji w celu zaspokojenia zapotrzebowania w zrównoważony i ekonomiczny sposób z skalowaniem do zera.
W przypadku większości obciążeń produkcyjnych AKS Automatic jest zalecanym domyślnym rozwiązaniem AKS. Usługa AKS Automatic jest domyślnie gotowa do użycia w środowisku produkcyjnym i zawiera w klastrze wstępnie skonfigurowane narzędzie KEDA. Jeśli używasz usługi AKS Standard, możesz włączyć usługę KEDA przy użyciu zarządzanego dodatku KEDA.
Aby dowiedzieć się więcej o usłudze AKS Automatic, zobacz Co to jest Azure Kubernetes Service (AKS) Automatic?
Uwaga / Notatka
Usługa KEDA w wersji 2.15 lub nowszej wprowadza zmianę niekompatybilną, która usuwa obsługę tożsamości zasobnika. Zalecamy przejście na tożsamość roboczą w celu uwierzytelniania, jeśli używasz tożsamości poda. Chociaż zarządzany dodatek KEDA obecnie nie działa w wersji KEDA 2.15+, zacznie on działać w wersji KEDA 2.15+ w wersji zapoznawczej AKS 1.32.
Aby uzyskać więcej informacji na temat bezpiecznego skalowania aplikacji przy użyciu tożsamości obciążenia, przeczytaj nasz samouczek. Aby zapoznać się z polityką zmian niekompatybilnych i wycofywania w KEDA, przeczytaj oficjalną dokumentację.
KEDA w usłudze AKS Automatic i AKS Standard
Usługa KEDA jest dostępna w obu trybach klastra usługi AKS, ale ścieżka konfiguracji jest inna:
- AKS Automatic: KEDA jest wstępnie skonfigurowana i gotowa do użycia.
- AKS Standard: Włącz KEDA, aktywując zarządzany dodatek AKS.
W przypadku większości scenariuszy produkcyjnych zacznij od usługi AKS Automatic, aby używać domyślnych ustawień gotowych do produkcji i zmniejszyć nakład pracy związany z zarządzaniem klastrem.
Architektura
Usługa KEDA udostępnia dwa główne składniki:
-
Operator KEDA umożliwia użytkownikom końcowym skalowanie obciążeń w zakresie od 0 do N instancji z obsługą wdrożeń, zadań, Jobs Kubernetes lub dowolnego zasobu niestandardowego definiującego
StatefulSetszasób podrzędny. - Serwer metryk udostępnia metryki zewnętrzne dla narzędzia Horizontal Pod Autoscaler (HPA) w Kubernetes, umożliwiając automatyczne skalowanie, na przykład w przypadku komunikatów w temacie platformy Kafka lub liczby zdarzeń w centrum zdarzeń platformy Azure. Ze względu na ograniczenia nadrzędne, KEDA musi być jedynym zainstalowanym adapterem metryk zewnętrznych.
Dowiedz się więcej o sposobie działania KEDA w oficjalnej dokumentacji KEDA.
Instalacja i włączanie
Automatyczne usługi AKS
Usługa KEDA jest wstępnie skonfigurowana w usłudze AKS Automatic. Nie jest wymagany żaden oddzielny krok instalacji dodatku KEDA.
AKS Standard
Włącz usługę KEDA w usłudze AKS Standard przy użyciu jednej z następujących metod:
Zarządzany dodatek KEDA zapewnia w pełni obsługiwaną instalację KEDA zintegrowaną z usługą AKS.
Możliwości i funkcje
Usługa KEDA oferuje następujące możliwości i funkcje:
- Skaluj obciążenia do zera, gdy popyt spada.
- Skaluj obciążenia aplikacji, aby sprostać zapotrzebowaniu, przy użyciu modułów skalujących KEDA platformy Azure.
- Automatycznie skaluj aplikacje za pomocą
ScaledObjects, na przykład wdrożenia,StatefulSetslub dowolnego zasobu niestandardowego, który definiuje zasób podrzędny/scale. - Automatyczne skalowanie obciążeń podobnych do zadań przy użyciu polecenia
ScaledJobs. - Korzystaj z zabezpieczeń klasy produkcyjnej, oddzielając uwierzytelnianie na potrzeby automatycznego skalowania od obciążeń roboczych.
- Użyj własnego zewnętrznego skalera do niestandardowej logiki automatycznego skalowania.
- Integracja z Tożsamość obciążeń Microsoft Entra na potrzeby uwierzytelniania.
W usłudze AKS Automatic domyślnie uzyskujesz te możliwości automatycznego skalowania opartego na zdarzeniach, ponieważ klaster jest wstępnie skonfigurowany przy użyciu usługi KEDA.
Uwaga / Notatka
Jeśli planujesz używać tożsamości obciążenia w usłudze AKS Standard, włącz tożsamość obciążenia przed włączeniem dodatku KEDA.
Wskazówki dotyczące produkcji
Skorzystaj z tych wskazówek, aby wybrać tryb klastra:
- Wybierz AKS Automatic, gdy chcesz użyć domyślnego środowiska gotowego do produkcji z wstępnie skonfigurowaną usługą KEDA.
- Wybierz usługę AKS Standard, jeśli potrzebujesz bardziej szczegółowego dostosowywania na poziomie klastra i jawnego zarządzania dodatkami.
- Użyj KEDA w dowolnym z trybów do automatycznego skalowania obciążeń na podstawie zdarzeń.
Ograniczenia dodatku
Dodatek KEDA AKS ma następujące ograniczenia:
- Dodatek HTTP do rozszerzenia KEDA (wersja zapoznawcza) do skalowania obciążeń HTTP nie jest instalowany razem z rozszerzeniem, ale można go wdrożyć oddzielnie.
- Zewnętrzny moduł skalowania rozszerzenia KEDA dla usługi Azure Cosmos DB do skalowania na podstawie zestawienia zmian usługi Azure Cosmos DB nie jest instalowany razem z rozszerzeniem, ale można go wdrożyć oddzielnie.
- W klastrze Kubernetes dozwolony jest tylko jeden zewnętrzny serwer metryk. Ze względu na to dodatek KEDA powinien być jedynym zewnętrznym serwerem metryk wewnątrz klastra.
- Wiele instalacji KEDA nie jest obsługiwanych
- Nie zaleca się łączenia KEDA
ScaledObjectz narzędziem Horizontal Pod Autoscaler (HPA) w celu skalowania tego samego obciążenia. Współzawodniczą ze sobą, ponieważ KEDA używa narzędzia Horizontal Pod Autoscaler (HPA) w tle, co powoduje dziwne działanie skalowania.- Jeśli najpierw zostanie utworzona usługa HPA, następnie spróbuje się utworzyć KEDA
ScaledObject, to KEDAScaledObjectnie zostanie utworzona. - Jeśli najpierw zostanie utworzona KEDA
ScaledObject, a następnie HPA, tworzenie HPA nie zostanie zablokowane.
- Jeśli najpierw zostanie utworzona usługa HPA, następnie spróbuje się utworzyć KEDA
Aby uzyskać ogólne pytania dotyczące KEDA, zalecamy zapoznanie się z omówieniem często zadawanych pytań.
Uwaga / Notatka
Jeśli korzystasz z Tożsamości obciążeń Microsoft Entra i włączysz funkcję KEDA przed Tożsamością obciążeń Microsoft Entra, musisz ponownie uruchomić zasobniki operatora KEDA, aby można było wstrzyknąć odpowiednie zmienne środowiskowe:
Uruchom ponownie zasobniki, uruchamiając polecenie
kubectl rollout restart deployment keda-operator -n kube-system.Uzyskaj zasobniki operatorów KEDA przy użyciu
kubectl get pod -n kube-systemi znajdź zasobniki rozpoczynające się odkeda-operator.Sprawdź poprawność wstrzyknięcia zmiennych środowiskowych, uruchamiając
kubectl describe pod <keda-operator-pod> -n kube-system. PodEnvironmentpowinny być widoczne wartości dlaAZURE_TENANT_ID,AZURE_FEDERATED_TOKEN_FILEiAZURE_AUTHORITY_HOST.
Obsługiwane wersje platform Kubernetes i KEDA
Wersja Kubernetes w twoim klastrze określa, którą wersję KEDA zainstalowano w klastrze Azure Kubernetes Service (AKS). Aby zobaczyć, która wersja KEDA jest przypisana do każdej wersji AKS, zobacz kolumnę AKS managed add-ons w tabeli wersji składników Kubernetes.
W przypadku wersji GA platformy Kubernetes usługa AKS oferuje pełną obsługę odpowiadającej wersji pomocniczej KEDA wymienionej w tabeli. Wersje zapoznawcze Kubernetes i najnowsza poprawka KEDA są częściowo objęte pomocą techniczną dla klientów, oferowaną na zasadzie najlepszych starań. W związku z tym te funkcje nie są przeznaczone do użytku produkcyjnego. Aby uzyskać więcej informacji, zobacz następujące artykuły pomocy technicznej:
Treści powiązane
- Utwórz klaster automatyczny AKS
- Włącz dodatek KEDA za pomocą szablonu ARM (AKS Standard)
- Włączanie dodatku KEDA z Azure CLI (AKS Standard)
- Rozwiązywanie problemów dodatku KEDA
- Automatyczne skalowanie procesu roboczego .NET Core przetwarzającego komunikaty w kolejce usługi Azure Service Bus
- Wyświetl źródłową dokumentację KEDA