Udostępnij za pośrednictwem


Skalowanie automatyczne i środowisko App Service Environment w wersji 1

Ważne

Ten artykuł dotyczy środowiska App Service Environment w wersji 1. Środowisko App Service Environment w wersji 1 i 2 zostanie wycofane 31 sierpnia 2024 r. Jest dostępna nowa wersja środowiska App Service Environment, która jest łatwiejsza do użycia i działa w bardziej wydajnej infrastrukturze. Aby dowiedzieć się więcej o nowej wersji, zacznij od wprowadzenia do środowiska App Service Environment. Jeśli obecnie używasz środowiska App Service Environment w wersji 1, wykonaj kroki opisane w tym artykule , aby przeprowadzić migrację do nowej wersji.

Po 31 sierpnia 2024 r. rozpocznie się likwidowanie sprzętu środowiska App Service Environment w wersji 1 i w wersji 2, co może mieć wpływ na dostępność i wydajność aplikacji i danych. Umowa dotycząca poziomu usług (SLA) i środki na usługi nie będą już stosowane dla obciążeń środowiska App Service Environment w wersji 1 i 2, które będą nadal w środowisku produkcyjnym po 31 sierpnia 2024 r.

Przed 31 sierpnia 2024 r. należy ukończyć migrację do środowiska App Service Environment w wersji 3 lub można usunąć aplikacje i zasoby. Podejmiemy próbę automatycznej migracji wszystkich pozostałych środowisk App Service Environment w wersji 1 i 2 w oparciu o najlepsze rozwiązanie przy użyciu funkcji migracji w miejscu, ale firma Microsoft nie udziela żadnych oświadczeń ani gwarancji dotyczących dostępności aplikacji po migracji automatycznej. Może być konieczne wykonanie ręcznej konfiguracji w celu ukończenia migracji i zoptymalizowania wybranej jednostki SKU planu usługi App Service w celu spełnienia Twoich potrzeb. Jeśli automatyczna migracja nie jest wykonalna, zasoby i skojarzone dane aplikacji zostaną usunięte. Zdecydowanie zachęcamy do podjęcia działań, aby uniknąć jednego z tych ekstremalnych scenariuszy.

Aby uzyskać najbardziej aktualne informacje na temat wycofania środowiska App Service Environment w wersji 1/2, zobacz aktualizację wycofania środowiska App Service Environment w wersji 1 i 2.

aplikacja systemu Azure Środowiska usługi obsługują skalowanie automatyczne. Poszczególne pule procesów roboczych można skalować automatycznie na podstawie metryk lub harmonogramu.

Opcje automatycznego skalowania dla puli procesów roboczych.

Skalowanie automatyczne optymalizuje wykorzystanie zasobów przez automatyczne zwiększanie i zmniejszanie środowiska usługi App Service w celu dopasowania go do budżetu i lub profilu ładowania.

Konfigurowanie automatycznego skalowania puli procesów roboczych

Dostęp do funkcji autoskalowania można uzyskać na karcie Ustawienia puli procesów roboczych.

Karta Ustawienia puli procesów roboczych.

Z tego miejsca interfejs powinien być dość znany, ponieważ jest to to samo środowisko, które widzisz podczas skalowania planu usługi App Service.

Ustawienia skalowania ręcznego.

Można również skonfigurować profil skalowania automatycznego.

Ustawienia automatycznego skalowania.

Profile skalowania automatycznego są przydatne do ustawiania limitów w skali. Dzięki temu możesz mieć spójne środowisko wydajności, ustawiając niższą wartość skali granic (1) i przewidywalny limit wydatków, ustawiając górną granicę (2).

Ustawienia skalowania w profilu.

Po zdefiniowaniu profilu można dodać reguły autoskalowania w celu skalowania w górę lub w dół liczby wystąpień w puli procesów roboczych w granicach zdefiniowanych przez profil. Reguły skalowania automatycznego są oparte na metrykach.

Reguła skalowania.

Każdą pulę procesów roboczych lub metryki frontonu można użyć do zdefiniowania reguł skalowania automatycznego. Te metryki są tymi samymi metrykami, które można monitorować na wykresach bloku zasobów lub ustawiać alerty.

Przykład automatycznego skalowania

Autoskalowanie środowiska usługi App Service można najlepiej zilustrować, przechodząc przez scenariusz.

W tym artykule opisano wszystkie niezbędne zagadnienia związane z konfigurowaniem automatycznego skalowania. W tym artykule opisano interakcje, które wchodzą w grę, gdy uwzględniasz skalowanie automatyczne środowisk usługi App Service hostowanych w środowisku App Service Environment.

Wprowadzenie do scenariusza

Frank jest administratorem systemu dla przedsiębiorstwa, który zmigrował część obciążeń zarządzanych do środowiska usługi App Service.

Środowisko usługi App Service jest skonfigurowane do ręcznego skalowania w następujący sposób:

  • Frontony: 3
  • Pula procesów roboczych 1: 10
  • Pula procesów roboczych 2: 5
  • Pula procesów roboczych 3: 5

Pula procesów roboczych 1 jest używana na potrzeby obciążeń produkcyjnych, natomiast pula procesów roboczych 2 i pula procesów roboczych 3 są używane do zapewniania jakości (QA) i obciążeń programistycznych.

Plany usługi App Service dla kontroli jakości i deweloperów są skonfigurowane do ręcznego skalowania. Plan produkcyjnej usługi App Service jest ustawiony na automatyczne skalowanie w celu obsługi zmian obciążenia i ruchu.

Frank jest bardzo zaznajomiony z aplikacją. Wiedzą, że godziny szczytu obciążenia to od 9:00 do 18:00, ponieważ jest to aplikacja biznesowa (LOB), z której korzystają pracownicy, gdy znajdują się w biurze. Użycie spadnie po tym, gdy użytkownicy będą wykonywane przez ten dzień. Poza godzinami szczytu nadal występuje pewne obciążenie, ponieważ użytkownicy mogą zdalnie uzyskiwać dostęp do aplikacji przy użyciu urządzeń przenośnych lub komputerów domowych. Produkcyjny plan usługi App Service jest już skonfigurowany do automatycznego skalowania na podstawie użycia procesora CPU przy użyciu następujących reguł:

Określone ustawienia aplikacji LOB.

Profil autoskalowania — dni robocze — plan usługi App Service Profil autoskalowania — weekendy — plan usługi App Service
Nazwa: Profil dnia tygodnia Nazwa: Profil weekendowy
Skalowanie według: Harmonogram i reguły wydajności Skalowanie według: Harmonogram i reguły wydajności
Profil: Dni robocze Profil: Weekend
Typ: Cykl Typ: Cykl
Zakres docelowy: od 5 do 20 wystąpień Zakres docelowy: od 3 do 10 wystąpień
Dni: poniedziałek, wtorek, środa, czwartek, piątek Dni: sobota, niedziela
Godzina rozpoczęcia: 9:00 Godzina rozpoczęcia: 9:00
Strefa czasowa: UTC-08 Strefa czasowa: UTC-08
Reguła skalowania automatycznego (skalowanie w górę) Reguła skalowania automatycznego (skalowanie w górę)
Zasób: Środowisko produkcyjne (App Service Environment) Zasób: Środowisko produkcyjne (App Service Environment)
Metryka: % procesora CPU Metryka: % procesora CPU
Operacja: większa niż 60% Operacja: większa niż 80%
Czas trwania: 5 minut Czas trwania: 10 minut
Agregacja czasu: Średnia Agregacja czasu: Średnia
Akcja: Zwiększ liczbę o 2 Akcja: Zwiększ liczbę o 1
Schładz (minuty): 15 Schładz (minuty): 20
Reguła automatycznego skalowania (skalowanie w dół) Reguła automatycznego skalowania (skalowanie w dół)
Zasób: Środowisko produkcyjne (App Service Environment) Zasób: Środowisko produkcyjne (App Service Environment)
Metryka: % procesora CPU Metryka: % procesora CPU
Operacja: mniej niż 30% Operacja: mniej niż 20%
Czas trwania: 10 minut Czas trwania: 15 minut
Agregacja czasu: Średnia Agregacja czasu: Średnia
Akcja: Zmniejsz liczbę o 1 Akcja: Zmniejsz liczbę o 1
Schładz (minuty): 20 Schładz (minuty): 10

Stopa inflacji planu usługi App Service

Plany usługi App Service, które są skonfigurowane do automatycznego skalowania, robią to z maksymalną szybkością na godzinę. Tę stawkę można obliczyć na podstawie wartości podanych w regule autoskalowania.

Zrozumienie i obliczanie stopy inflacji planu usługi App Service jest ważne w przypadku automatycznego skalowania środowiska App Service, ponieważ skalowanie zmian w puli procesów roboczych nie jest natychmiastowe.

Stopa inflacji planu usługi App Service jest obliczana w następujący sposób:

Plan obliczania stopy inflacji w usłudze App Service.

Na podstawie reguły autoskalowania — skalowanie w górę dla profilu dzień powszedni produkcyjnego planu usługi App Service:

Usługa App Service planuje stopę inflacji w dni powszednie na podstawie reguły autoskalowania — skalowanie w górę.

W przypadku reguły autoskalowania — skalowanie w górę dla profilu weekendowego produkcyjnego planu usługi App Service formuła będzie rozpoznawana jako:

Wskaźnik inflacji planu usługi App Service dla weekendów oparty na regule skalowania automatycznego — skalowanie w górę.

Tę wartość można również obliczyć dla operacji skalowanych w dół.

Na podstawie reguły Autoskalowania — skalowanie w dół dla profilu Dnia tygodnia produkcyjnego planu usługi App Service będzie to wyglądać następująco:

Usługa App Service planuje stopę inflacji w dni powszednie w oparciu o regułę Autoskalowania — skalowanie w dół.

W przypadku reguły autoskalowania — skalowanie w dół dla profilu weekendowego produkcyjnego planu usługi App Service formuła będzie rozpoznawana jako:

Wskaźnik inflacji planu usługi App Service dla weekendów oparty na regule Autoskalowania — skalowanie w dół.

Plan usługi App Service w środowisku produkcyjnym może rosnąć z maksymalną szybkością ośmiu wystąpień/godzin w ciągu tygodnia i czterech wystąpień/godziny w weekend. Może ona zwalniać wystąpienia z maksymalną szybkością czterech wystąpień/godzin w ciągu tygodnia i sześciu wystąpień/godzin w weekendy.

Jeśli wiele planów usługi App Service jest hostowanych w puli procesów roboczych, musisz obliczyć całkowitą stopę inflacji jako sumę stopy inflacji dla wszystkich planów usługi App Service hostujących w tej puli procesów roboczych.

Obliczenie całkowitej stopy inflacji dla wielu planów usługi App Service hostowanych w puli procesów roboczych.

Użyj wskaźnika inflacji planu usługi App Service, aby zdefiniować reguły automatycznego skalowania puli procesów roboczych

Pule procesów roboczych hostujące plany usługi App Service skonfigurowane do automatycznego skalowania muszą zostać przydzielone bufor pojemności. Bufor umożliwia zwiększanie i zmniejszanie planu usługi App Service w razie potrzeby przez operacje skalowania automatycznego. Minimalny bufor to obliczona łączna stopa inflacji planu usługi App Service.

Ponieważ operacje skalowania środowiska App Service zajmują trochę czasu, każda zmiana powinna uwzględniać dalsze zmiany zapotrzebowania, które mogą wystąpić podczas wykonywania operacji skalowania. Aby uwzględnić to opóźnienie, zalecamy użycie obliczonej łącznej stopy inflacji planu usługi App Service jako minimalnej liczby wystąpień dodanych dla każdej operacji skalowania automatycznego.

Dzięki tym informacjom Frank może zdefiniować następujący profil i reguły skalowania automatycznego:

Przykładowe reguły profilu automatycznego skalowania dla klasy LOB.

Profil automatycznego skalowania — dni robocze Profil autoskalu — weekendy
Nazwa: Profil dnia tygodnia Nazwa: Profil weekendowy
Skalowanie według: Harmonogram i reguły wydajności Skalowanie według: Harmonogram i reguły wydajności
Profil: Dni robocze Profil: Weekend
Typ: Cykl Typ: Cykl
Zakres docelowy: od 13 do 25 wystąpień Zakres docelowy: od 6 do 15 wystąpień
Dni: poniedziałek, wtorek, środa, czwartek, piątek Dni: sobota, niedziela
Godzina rozpoczęcia: 7:00 Godzina rozpoczęcia: 9:00
Strefa czasowa: UTC-08 Strefa czasowa: UTC-08
Reguła skalowania automatycznego (skalowanie w górę) Reguła skalowania automatycznego (skalowanie w górę)
Zasób: pula procesów roboczych 1 Zasób: pula procesów roboczych 1
Metryka: Pracownicydostępni Metryka: Pracownicydostępni
Operacja: mniej niż 8 Operacja: mniej niż 3
Czas trwania: 20 minut Czas trwania: 30 minut
Agregacja czasu: Średnia Agregacja czasu: Średnia
Akcja: Zwiększ liczbę o 8 Akcja: Zwiększ liczbę o 3
Schładz (minuty): 180 Schładz (minuty): 180
Reguła automatycznego skalowania (skalowanie w dół) Reguła automatycznego skalowania (skalowanie w dół)
Zasób: pula procesów roboczych 1 Zasób: pula procesów roboczych 1
Metryka: Pracownicydostępni Metryka: Pracownicydostępni
Operacja: większa niż 8 Operacja: większa niż 3
Czas trwania: 20 minut Czas trwania: 15 minut
Agregacja czasu: Średnia Agregacja czasu: Średnia
Akcja: Zmniejsz liczbę o 2 Akcja: Zmniejsz liczbę o 3
Schładz (minuty): 120 Schładz (minuty): 120

Zakres docelowy zdefiniowany w profilu jest obliczany przez minimalne wystąpienia zdefiniowane w profilu dla planu usługi App Service i buforu.

Maksymalny zakres będzie sumą wszystkich maksymalnych zakresów dla wszystkich planów usługi App Service hostowanych w puli procesów roboczych.

Dla reguł zwiększania skali w górę należy ustawić co najmniej 1X stopę inflacji planu usługi App Service na potrzeby skalowania w górę.

Liczbę spadków można dostosować do wartości z zakresu od 1/2X do 1X współczynnika inflacji planu usługi App Service w celu skalowania w dół.

Automatyczne skalowanie dla puli frontonu

Reguły automatycznego skalowania frontonu są prostsze niż w przypadku pul procesów roboczych. Przede wszystkim należy
Upewnij się, że czas trwania miary i czasomierze chłodzenia uważają, że operacje skalowania w planie usługi App Service nie są natychmiastowe.

W tym scenariuszu Frank wie, że szybkość błędów wzrasta po osiągnięciu wykorzystania procesora CPU przez fronton 80% i ustawia regułę autoskalowania w następujący sposób:

Ustawienia automatycznego skalowania dla puli frontonu.

Profil skalowania automatycznego — frontony
Nazwa: Autoskaluj — frontony
Skalowanie według: Harmonogram i reguły wydajności
Profil: Codziennie
Typ: Cykl
Zakres docelowy: od 3 do 10 wystąpień
Dni: codziennie
Godzina rozpoczęcia: 9:00
Strefa czasowa: UTC-08
Reguła skalowania automatycznego (skalowanie w górę)
Zasób: Pula frontonu
Metryka: % procesora CPU
Operacja: większa niż 60%
Czas trwania: 20 minut
Agregacja czasu: Średnia
Akcja: Zwiększ liczbę o 3
Schładz (minuty): 120
Reguła automatycznego skalowania (skalowanie w dół)
Zasób: pula procesów roboczych 1
Metryka: % procesora CPU
Operacja: mniej niż 30%
Czas trwania: 20 minut
Agregacja czasu: Średnia
Akcja: Zmniejsz liczbę o 3
Schładz (minuty): 120