Rozpoczynanie pracy ze skalowaniem automatycznym na platformie Azure

Automatyczne skalowanie automatycznie skaluje aplikacje lub zasoby na podstawie zapotrzebowania. Użyj automatycznego skalowania, aby przydzielać wystarczającą ilość zasobów do obsługi zapotrzebowania aplikacji bez nadmiarowego przydzielania zasobów i ponoszenia niepotrzebnych kosztów.

W tym artykule opisano sposób konfigurowania ustawień autoskalowania w portalu Azure. W tym przewodniku użyto planu usługi App Service, ale funkcja automatycznego skalowania w usłudze Azure Monitor obsługuje wiele typów zasobów. Aby uzyskać więcej informacji, zobacz zasoby obsługiwane przez skalowanie automatyczne.

W tym przewodniku poznasz zasoby, które obsługują skalowanie automatyczne, utworzysz reguły skalowania w górę i w dół na podstawie metryk, dodasz zaplanowane warunki skalowania oraz przejrzysz historię uruchomień i konfigurację JSON.

Wymagania wstępne

  • Konto platformy Azure z aktywną subskrypcją. Utwórz bezpłatne konto.
  • Plan usługi App Service w warstwie Standard lub wyższej.
  • Co najmniej jedna aplikacja w planie usługi App Service.
  • Rola Właściciel lub Współautor lub rola niestandardowa z uprawnieniami Microsoft.Insights/autoscaleSettings/* w planie usługi App Service.

Funkcja automatycznego skalowania w usłudze Azure Monitor stosuje reguły metryk i harmonogramu do całego planu usługi App Service, dlatego skalowanie wpływa na każdą aplikację w tym planie.

Uwaga

Automatyczne skalowanie usługi App Service to oddzielna opcja, która skaluje poszczególne aplikacje na podstawie ruchu HTTP bez reguł metryk ani harmonogramów.

Odnajdywanie ustawień automatycznego skalowania w ramach subskrypcji

Aby odnaleźć zasoby dostępne do automatycznego skalowania, wykonaj następujące kroki.

  1. Otwórz portal Azure.

  2. Wyszukaj i wybierz Monitor.

  3. W obszarze Ustawienia wybierz pozycję Autoskaluj , aby wyświetlić zasoby, które obsługują skalowanie automatyczne i ich bieżący stan.

  4. Użyj filtrów, aby wybrać subskrypcję, grupę zasobów, typ zasobu lub zasób.

    Zrzut ekranu przedstawiający zasoby, które mogą używać skalowania automatycznego i ich stanów.

    Na stronie przedstawiono liczbę instancji i stan autoskalowania dla każdego zasobu. Stany automatycznego skalowania to:

    • Nieskonfigurowane: autoskalowanie nie zostało jeszcze skonfigurowane dla tego zasobu.
    • Włączone: automatyczne skalowanie jest włączone dla tego zasobu.
    • Wyłączone: autoskalowanie jest wyłączone dla tego zasobu.

    W przypadku planu usługi App Service możesz również otworzyć plan, a następnie w obszarze Ustawienia wybierz pozycję Skaluj w poziomie (plan usługi App Service).

    Zrzut ekranu przedstawiający plan usługi App Service z zaznaczoną opcją Skaluj w poziomie w sekcji Ustawienia.

Tworzenie pierwszego ustawienia autoskalowania

Wykonaj kroki opisane w tej sekcji, aby utworzyć pierwsze ustawienie autoskalowania.

  1. Otwórz okienko Autoskalowania w Azure Monitor i wybierz plan usługi App Service, który chcesz skalować.

  2. Bieżąca liczba wystąpień to 1. Wybierz Autoskalowanie niestandardowe.

  3. Przejrzyj wygenerowaną nazwę ustawienia autoskalowania i grupę zasobów. W razie potrzeby zmień je.

    Zrzut ekranu przedstawiający wybraną opcję Niestandardowe autoskalowanie dla planu usługi App Service.

  4. Wybierz opcję Skaluj na podstawie metryki.

  5. Wybierz pozycję Dodaj regułę, aby otworzyć okienko Reguły skalowania .

  6. Nowa reguła domyślnie zwiększa liczbę wystąpień o jedną, gdy metryka Procent użycia procesora CPU planu usługi App Service jest większa niż 70 procent w ciągu 10 minut.

    Zachowaj wartości domyślne i wybierz pozycję Dodaj.

  7. Utworzyłeś(-aś) pierwszą regułę skalowania w poziomie. Najlepszą praktyką jest stosowanie co najmniej jednej reguły skalowania w dół. Aby dodać kolejną regułę, wybierz pozycję Dodaj regułę.

  8. Ustaw Operator na Mniejsza niż.

  9. Ustaw próg metryki wyzwalającej skalowanie na 20.

  10. Ustaw Operację na Zmniejsz licznik o.

    Zrzut ekranu przedstawiający regułę skalowania w poziomie usługi App Service z 20-procentowym progiem procesora CPU.

  11. Wybierz pozycję Dodaj.

    Skonfigurowano ustawienie skalowania, które zwiększa i zmniejsza liczbę wystąpień na podstawie użycia procesora, ale maksymalna liczba wystąpień nadal jest ograniczona do jednego. Zmień limity wystąpień, aby zezwolić na więcej wystąpień.

  12. W sekcji Limity instancji ustaw opcję Maksimum na 3.

    Zrzut ekranu przedstawiający reguły zwiększania i zmniejszania liczby wystąpień usługi App Service z limitem od jednego do trzech wystąpień.

  13. Wybierz pozycję Zapisz.

Utworzono ustawienie skalowania automatycznego, które skaluje plan usługi App Service na podstawie użycia procesora CPU. Gdy użycie procesora przekracza 70%, automatyczne skalowanie dodaje instancję, aż do maksymalnie trzech. Gdy użycie CPU spada poniżej 20 procent, automatyczne skalowanie usuwa instancję, aż do minimum jednej instancji. Domyślna liczba wystąpień to jedna.

Dodawanie zaplanowanych warunków skalowania

Domyślny warunek skalowania definiuje reguły skalowania, które są aktywne, gdy nie obowiązują żadne inne warunki skalowania. Dodaj warunki skalowania, które są aktywne w danej dacie i godzinie lub które są powtarzane co tydzień.

Skalowanie w oparciu o powtarzający się harmonogram

Ustaw zasób tak, aby był skalowany do pojedynczego wystąpienia w niedzielę.

  1. Wybierz pozycję Dodaj warunek skalowania.

  2. Wybierz pozycję Skaluj do określonej liczby wystąpień. Można również skalować na podstawie metryk i progów specyficznych dla tego warunku skalowania.

  3. Wprowadź wartość 1 w polu Liczba wystąpień .

  4. Wybierz pozycję Powtórz określone dni.

  5. Wybierz Niedziela.

  6. Ustaw godzinę rozpoczęcia i godzinę zakończenia dla momentu zastosowania warunku skalowania. Poza tym zakresem czasu ma zastosowanie domyślny warunek skalowania.

    Zrzut ekranu warunku skalowania planu usługi App Service powtarzającego się w niedzielę.

  7. Wybierz pozycję Zapisz.

Zdefiniowano warunek skalowania, który zmniejsza plan usługi App Service do jednego wystąpienia co niedzielę w określonym zakresie czasu.

Skaluj inaczej dla określonych dat

Ustaw skalowanie automatyczne, aby skalować inaczej dla określonych dat, gdy oczekujesz nietypowego poziomu zapotrzebowania na usługę.

  1. Wybierz pozycję Dodaj warunek skalowania.

  2. Wybierz opcję Skaluj na podstawie metryki.

  3. Wybierz pozycję Dodaj regułę, aby zdefiniować reguły skalowania w górę i skalowania w dół. Ustaw reguły tak, aby były takie same jak warunek domyślny.

  4. Ustaw maksymalny limit wystąpień na 10.

  5. Ustaw domyślny limit wystąpień na 3.

  6. Wybierz pozycję Określ daty rozpoczęcia/zakończenia.

  7. Wprowadź datę rozpoczęcia i datę zakończenia dla daty zastosowania warunku skalowania.

    Zrzut ekranu przedstawiający warunek metryki planu usługi App Service z określonymi datami rozpoczęcia i zakończenia.

  8. Wybierz pozycję Zapisz.

Zdefiniowano warunek skalowania dla określonego zakresu dat. Gdy użycie procesora CPU przekracza 70 procent, automatyczne skalowanie dodaje instancję, aż do maksymalnie 10. Gdy użycie procesora spadnie poniżej 20 procent, automatyczne skalowanie usuwa instancję, ale nie poniżej jednej instancji. Gdy ten warunek skalowania stanie się aktywny, jego domyślna liczba wystąpień wynosi trzy.

Ustawienia dodatkowe

Użyj kart ustawień automatycznego skalowania i opcji specyficznych dla zasobów, aby przejrzeć działania, edytować kod JSON, skonfigurować powiadomienia i uzyskać dostęp do zaawansowanych funkcji skalowania.

Wyświetlanie historii zdarzeń skalowania zasobu

Za każdym razem, gdy zasób ma jakiekolwiek zdarzenie skalowania, dziennik aktywności rejestruje je. Historię zdarzeń skalowania można wyświetlić na karcie Historia uruchamiania .

Zrzut ekranu przedstawiający zaobserwowaną liczbę instancji planu usługi App Service na karcie Historia uruchomień.

Wyświetlanie ustawień skalowania dla zasobu

Autoskalowanie jest zasobem usługi Azure Resource Manager. Podobnie jak w przypadku innych zasobów, możesz wyświetlić definicję zasobu w formacie JSON. Aby wyświetlić ustawienia autoskalowania w formacie JSON, wybierz kartę JSON .

Zrzut ekranu przedstawiający regułę automatycznego skalowania planu usługi App Service na karcie JSON.

W razie potrzeby wprowadź zmiany bezpośrednio w formacie JSON. Te zmiany zostaną zastosowane po ich zapisaniu.

Automatyczne skalowanie predykcyjne dla Virtual Machine Scale Sets

Autoskalowanie predykcyjne wykorzystuje uczenie maszynowe, aby pomóc zarządzać zestawami skalowania maszyn wirtualnych Azure i skalować je w przypadku cyklicznych wzorców obciążenia. Prognozuje ogólne obciążenie procesora CPU w zestawie skalowania maszyn wirtualnych na podstawie historycznych wzorców użycia procesora CPU. Przewiduje ogólne obciążenie procesora na podstawie obserwacji i historycznych danych o użyciu. Ten proces zapewnia, że skalowanie w poziomie następuje odpowiednio wcześnie, aby sprostać zapotrzebowaniu. Aby uzyskać więcej informacji, zobacz Używanie autoskalowania predykcyjnego do skalowania w poziomie przed zapotrzebowaniem na obciążenie.

Zasady skalowania w dół dla zestawów skalowania maszyn wirtualnych

Podczas skalowania zestawu skalowania maszyn wirtualnych zasady skalowania w poziomie określają, które maszyny wirtualne są wybierane do usunięcia w przypadku wystąpienia zdarzenia skalowania w poziomie. Ustaw zasady skalowania w dół na Default, NewestVM lub OldestVM. Aby uzyskać więcej informacji, zobacz Use custom scale-in policies with Azure Virtual Machine Scale Sets (Używanie niestandardowych zasad skalowania w poziomie w usłudze Azure Virtual Machine Scale Sets).

Zrzut ekranu przedstawiający ustawienie zasady zmniejszania zasobów.

Powiadom

Skonfiguruj powiadomienia wysyłane po wystąpieniu zdarzenia skalowania. Wysyłaj powiadomienia na adres e-mail lub do webhooka. Aby uzyskać więcej informacji, zobacz powiadomienia dotyczące automatycznego skalowania.

Skutki okresu karencji

Automatyczne skalowanie ocenia okres schładzania skonfigurowany dla każdej rozważanej reguły. Po operacji skalowania reguła nie kwalifikuje się do zainicjowania innej akcji skalowania, dopóki nie upłynął jej własny okres ochładzania. Kolejna reguła z krótszym okresem ochładzania może zostać zakwalifikowana wcześniej. Okres schładzania umożliwia ustabilizowanie metryk i uniknięcie skalowania więcej niż raz dla tego samego warunku. Domyślny okres ochładzania wynosi pięć minut. Aby uzyskać więcej informacji, zobacz jak autoskalowanie ocenia okres schładzania.

Niestabilność

Flapping odnosi się do stanu zapętlenia, który powoduje serię naprzemiennych zdarzeń skalowania. Flapping występuje, gdy jedno zdarzenie skalowania wyzwala odwrotne zdarzenie skalowania. Na przykład zmniejszenie liczby instancji powoduje wzrost użycia procesora CPU na pozostałych instancjach. Ten warunek powoduje zdarzenie skalowania na zewnątrz, co prowadzi do spadku obciążenia procesora i powtórzenia tego procesu. Aby uzyskać więcej informacji, zobacz Flapping in autoscale and Troubleshoot autoscale (Rozwiązywanie problemów z autoskalowaniem).

Czyszczenie ustawień automatycznego skalowania

Aby zatrzymać automatyczne skalowanie zasobu, otwórz okienko Autoskalowanie dla zasobu, wybierz pozycję Skalowanie ręczne, ustaw liczbę wystąpień i wybierz pozycję Zapisz. Skalowanie ręczne usuwa reguły autoskalowania i zwraca zasób do stałej liczby wystąpień.

Przenieść autoskalowanie do innego regionu

W tej sekcji opisano sposób przenoszenia automatycznego skalowania platformy Azure do innego regionu w ramach tej samej subskrypcji i grupy zasobów. Użyj interfejsu API REST, aby przenieść ustawienia autoskalowania.

Wymagania wstępne

Przesuń

Użyj interfejsu API REST , aby utworzyć ustawienie autoskalowania w nowym środowisku. Ustawienie autoskalowania utworzone w regionie docelowym jest kopią ustawienia autoskalowania w regionie źródłowym.

Nie można przenieść ustawień diagnostycznych utworzonych w skojarzeniu z ustawieniem automatycznego skalowania w regionie źródłowym. Po utworzeniu ustawień autoskalowania należy ponownie utworzyć ustawienia diagnostyczne w regionie docelowym.

Dowiedz się więcej na temat przenoszenia zasobów między regionami świadczenia usługi Azure

Aby dowiedzieć się więcej na temat przenoszenia zasobów między regionami i odzyskiwaniem po awarii na platformie Azure, zobacz Przenoszenie zasobów do nowej grupy zasobów lub subskrypcji.