Uwaga
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.
Uwaga
Plany Basic, Standardi Enterprise weszły w okres wycofywania 17 marca 2025 r. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.
Plan dotyczący zużycia standardowego oraz dedykowany plan zostały wycofane 30 września 2024 r., z całkowitym zamknięciem do końca marca 2025 r. Aby uzyskać więcej informacji, zobacz Migrowanie użycia usługi Azure Spring Apps w warstwie Standardowa i dedykowanego planu do usługi Azure Container Apps.
Ten artykuł dotyczy:✅ Standardowe zużycie i dedykowane (wersja zapoznawcza) ❎ Podstawowa/Standardowa ❎ Przedsiębiorstwo
W tym artykule opisano, jak skonfigurować reguły automatycznego skalowania dla aplikacji w planie konsumpcyjnym Azure Spring Apps Standard oraz w planie dedykowanym. Plan używa środowiska usługi Azure Container Apps do hostowania aplikacji Spring i zapewnia następujące funkcje zarządzania i obsługi:
- Zarządza automatycznym skalowaniem w poziomie za pomocą zestawu reguł deklaratywnego skalowania.
- Obsługuje wszystkie reguły skalowania obsługiwane przez usługę Azure Container Apps.
Aby uzyskać więcej informacji, zobacz dokumentację usługi Azure Container Apps.
Wymagania wstępne
- Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem zobacz bezpłatne konto platformy Azure.
- Instancja usługi Azure Spring Apps w planie konsumpcyjnym Standardowa i w planie dedykowanym.
- Aplikacja Spring wdrożona w usłudze Azure Spring Apps.
Definicja skalowania
Skalowanie jest definiowane przez kombinację limitów i reguł.
Limity to minimalna i maksymalna liczba wystąpień dozwolonych przez platformę Spring.
Limit skalowania Domyślna wartość Wartość minimalna Wartość maksymalna Minimalna liczba wystąpień na każde wdrożenie 1 0 30 Maksymalna liczba wystąpień na wdrożenie 10 1 30 Domyślnie minimalna liczba wystąpień aplikacji Spring jest ustawiona na 1, aby upewnić się, że wdrożenie jest zawsze uruchomione. Jeśli chcesz skalować do zera, możesz ustawić minimalną liczbę wystąpień na zero.
Reguły są kryteriami, według których skalowanie automatyczne dodaje lub usuwa wystąpienia. Reguły skalowania obejmują reguły HTTP, TCP i niestandardowe, zgodnie z opisem w sekcji Reguły skalowania w Ustawianiu reguł skalowania w usłudze Azure Container Apps.
Jeśli zdefiniujesz więcej niż jedną regułę skalowania, skalowanie automatyczne rozpoczyna się po spełnieniu pierwszego warunku dowolnej reguły.
Interwał sondowania i okres chłodzenia to dwa przedziały czasu, które występują podczas skalowania automatycznego.
- Interwał sondowania określa okres czasu między każdą akcją sondowania danych czasu rzeczywistego, określony przez reguły. Interwał sondowania jest domyślnie ustawiony na 30 sekund.
- Okres ochładzania ma zastosowanie tylko przy skalowaniu do zera — na przykład można poczekać pięć minut po ostatnim sprawdzeniu przez autoskalowanie kolejki komunikatów, podczas którego okazało się, że była pusta.
Konfigurowanie ustawień automatycznego skalowania
Ustawienia skalowania automatycznego dla aplikacji można skonfigurować przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.
Wykonaj poniższe kroki, aby zdefiniować ustawienia i reguły autoskalowania.
- Zaloguj się w witrynie Azure Portal.
- Wybierz pozycję Azure Spring Apps w obszarze Usługi platformy Azure.
- W kolumnie Nazwa wybierz wystąpienie usługi Azure Spring Apps, które chcesz skalować automatycznie.
- Na stronie przeglądu wystąpienia usługi Azure Spring Apps wybierz pozycję Aplikacje w okienku nawigacji.
- Wybierz aplikację, którą chcesz skalować automatycznie.
- Na stronie przeglądu wybranej aplikacji wybierz pozycję Skaluj w poziomie w okienku nawigacji.
- Na stronie Skalowanie w poziomie (wersja zapoznawcza) wybierz wdrożenie, które chcesz skalować automatycznie.
- Skonfiguruj limity wystąpień wdrożenia.
- Wybierz pozycję Dodaj , aby dodać reguły skalowania.
Niestandardowe reguły skalowania
Aby uzyskać informacje na temat definiowania reguł niestandardowych, zobacz Moduły skalowania Keda. W poniższych sekcjach przedstawiono dwa przykłady ustawiania reguł skalowania w programach MySQL i Cron.
Konfigurowanie reguł automatycznego skalowania w bazie danych MySQL
Następujące polecenia interfejsu wiersza polecenia pokazują, jak automatycznie skalować aplikację Spring na podstawie skalera Keda MySQL. Najpierw utwórz sekret do przechowywania ciągu połączenia SQL. Ten sekret jest używany do uwierzytelniania zasady miary. Następnie skonfiguruj regułę, która skaluje aplikację na podstawie liczby wierszy tabeli.
Uwaga
Firma Microsoft zaleca korzystanie z najbezpieczniejszego dostępnego przepływu uwierzytelniania. Przepływ uwierzytelniania opisany w tej procedurze, taki jak bazy danych, pamięci podręczne, komunikaty lub usługi sztucznej inteligencji, wymaga bardzo wysokiego stopnia zaufania w aplikacji i niesie ze sobą ryzyko, które nie występują w innych przepływach. Użyj tego przepływu tylko wtedy, gdy bardziej bezpieczne opcje, takie jak tożsamości zarządzane dla połączeń bez hasła lub bez kluczy, nie są opłacalne. W przypadku operacji maszyny lokalnej preferuj tożsamości użytkowników dla połączeń bez hasła lub bez klucza.
az spring app update \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-service-instance-name> \
--name <app-name> \
--secrets mysqlconnectionstring="<username>:<pwd>@tcp(<server name>:3306)/<database name>"
az spring app scale \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-service-instance-name> \
--name <app-name> \
--scale-rule-type mysql \
--scale-rule-name <your rule name> \
--scale-rule-auth "connectionString=mysqlconnectionstring" \
--scale-rule-metadata queryValue=4 query="SELECT count(*) FROM mytable" \
--min-replicas 0 \
--max-replicas 3
Tworzenie reguły opartej na cronie systemu Linux
Poniższe polecenia pokazują, jak skonfigurować regułę w oparciu o Keda Cron Scaler. Repliki są skalowane do żądanej liczby zgodnie z harmonogramem cron.
az spring app scale \
--resource-group <resource-group-name> \
--service <Azure-Spring-Apps-service-instance-name> \
--name <app-name> \
--scale-rule-type cron \
--scale-rule-name testscalerule \
--scale-rule-metadata timezone="Asia/Shanghai" \
start="10 * * * *" \
end="15 * * * *" \
desiredReplicas="3" \
--min-replicas 0 \
--max-replicas 3
Skalowanie zdarzeń
Zdarzenia skalowania można znaleźć w dziennikach systemowych podstawowej aplikacji kontenera i filtrować źródło zdarzeń przy użyciu metody KEDA
, jak pokazano w poniższym przykładzie:
ContainerAppSystemLogs_CL
| where ContainerAppName_s == 'YourAppName' and EventSource_s == 'KEDA'
Czyszczenie zasobów
Pamiętaj, aby usunąć zasoby utworzone w tym artykule, gdy nie są już potrzebne. Aby usunąć zasoby, wystarczy usunąć grupę zasobów, która je zawiera. Grupę zasobów można usunąć przy użyciu witryny Azure Portal. Alternatywnie, aby usunąć grupę zasobów przy użyciu interfejsu wiersza polecenia platformy Azure, użyj następujących poleceń:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."