Skalowanie zaplanowane i predykcyjne
Wstępnie zwiększą pojemność przed znanymi skokami ruchu za pomocą zaplanowanych działań oraz użyją skalowania predykcyjnego do automatycznego prognozowania obciążenia.
Skalowanie zaplanowane i predykcyjne to bezpłatna lekcja Cloud & IT Cert Prep na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cloud & IT Cert Prep, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cloud & IT Cert Prep zawiera 4 lekcji w sumie.
Ograniczenia skalowania reaktywnego
Dynamiczne polityki skalowania (target tracking i step scaling) są reaktywne — reagują dopiero po przekroczeniu progu metryki. W przypadku znanych i przewidywalnych wzorców ruchu, takich jak szczyt w godzinach pracy, comiesięczne zadania wsadowe lub wyprzedaż Black Friday, skalowanie reaktywne jest zbyt wolne, ponieważ uruchomienie i rozgrzanie instancji zajmuje kilka minut. Scheduled Scaling i Predictive Scaling rozwiązują ten problem, proaktywnie dostosowując pojemność, zanim pojawi się obciążenie.
Zaplanowane działania skalowania
Scheduled Scaling Action zmienia minimalną, maksymalną lub docelową pojemność ASG w określonym dniu i czasie albo zgodnie z cyklicznym harmonogramem cron. Jest to idealne rozwiązanie, gdy dokładnie wiadomo, kiedy wzrośnie obciążenie — na przykład do wstępnego rozgrzania zasobów przed zaplanowaną akcją marketingową lub do zmniejszenia skali w nocy, gdy ruch jest minimalny, aby ograniczyć koszty. Zaplanowane działania zastępują bieżącą wartość desired capacity w określonym czasie.
aws autoscaling put-scheduled-update-group-action \
--auto-scaling-group-name 'MyAppASG' \
--scheduled-action-name 'MorningScaleUp' \
--recurrence '0 7 * * MON-FRI' \
--min-size 4 \
--desired-capacity 8 \
--max-size 20Składnia cron dla działań cyklicznych
Zaplanowane działania używają formatu cron systemu Unix: minute hour day-of-month month day-of-week. Wszystkie czasy podawane są w strefie UTC. Typowe wzorce to 0 8 * * 1-5 (poranki w dni robocze o 08:00 UTC) używany do zwiększania skalowania oraz 0 20 * * * (każdej nocy o 20:00 UTC) używany do zmniejszania skalowania. W ramach tego samego ASG można utworzyć wiele zaplanowanych działań, na przykład jedno zwiększające skalowanie i jedno zmniejszające je każdego dnia.
# Scale down every night at 22:00 UTC
aws autoscaling put-scheduled-update-group-action \
--auto-scaling-group-name 'MyAppASG' \
--scheduled-action-name 'NightScaleDown' \
--recurrence '0 22 * * *' \
--min-size 2 \
--desired-capacity 2 \
--max-size 20Jednorazowe a cykliczne zaplanowane działania
Zaplanowane działania mogą być jednorazowe (wykonywane raz o określonej godzinie rozpoczęcia) lub cykliczne (wykonywane zgodnie z harmonogramem cron). Działanie jednorazowe doskonale sprawdza się w przypadku znanego przyszłego wydarzenia, takiego jak premiera produktu. Działanie cykliczne obsługuje regularne wzorce, takie jak dobowe lub tygodniowe cykle ruchu. W przypadku działania cyklicznego można również ustawić czas rozpoczęcia i czas zakończenia, aby automatycznie włączać i wyłączać harmonogram w określonym przedziale dat.
# One-time scale-up for a product launch event
aws autoscaling put-scheduled-update-group-action \
--auto-scaling-group-name 'MyAppASG' \
--scheduled-action-name 'ProductLaunchScaleUp' \
--start-time '2026-07-15T14:00:00Z' \
--min-size 10 \
--desired-capacity 20 \
--max-size 50Współdziałanie z zasadami dynamicznymi
Zaplanowane działania i zasady dynamicznego skalowania mogą działać jednocześnie. Zaplanowane działanie ustawia nową pojemność bazową w zaplanowanym czasie. Następnie zasady dynamiczne (target tracking lub step scaling) nadal dostosowują pojemność w ramach zaktualizowanych limitów minimalnego i maksymalnego. Na przykład poranne zaplanowane działanie ustawia min=4, desired=8; w ciągu dnia target tracking zwiększa skalowanie do 15 instancji przy dużym obciążeniu; wieczorne zaplanowane działanie resetuje następnie wartości do min=2, desired=2.
Wprowadzenie do Predictive Scaling
Predictive Scaling wykorzystuje uczenie maszynowe do analizowania historycznych wzorców obciążenia na podstawie metryk CloudWatch i prognozowania przyszłego zapotrzebowania na pojemność. Proaktywnie planuje działania zwiększające skalowanie zanim nadejdzie przewidywane obciążenie — zazwyczaj z wyprzedzeniem od 5 do 60 minut. Predictive Scaling najlepiej sprawdza się w przypadku obciążeń z powtarzającymi się dobowymi lub tygodniowymi cyklami ruchu. W miarę gromadzenia większej ilości danych stale aktualizuje prognozę.
Włączanie Predictive Scaling
Predictive Scaling włącza się przez dołączenie zasady PredictiveScaling do ASG. Należy określić parę metryk: metrykę obciążenia (czynnik wpływający na skalowanie, taki jak użycie procesora lub liczba żądań ALB) oraz metrykę skalowania (wartość monitorowaną dla każdej instancji). AWS prognozuje następnie metrykę obciążenia i oblicza liczbę instancji potrzebnych do utrzymania metryki skalowania na docelowym poziomie.
aws autoscaling put-scaling-policy \
--auto-scaling-group-name 'MyAppASG' \
--policy-name 'PredictiveScalingPolicy' \
--policy-type PredictiveScaling \
--predictive-scaling-configuration '{
'MetricSpecifications': [{
'TargetValue': 40.0,
'PredefinedMetricPairSpecification': {
'PredefinedMetricPairType': 'ASGCPUUtilization'
}
}],
'Mode': 'ForecastAndScale'
}'Tryby Predictive Scaling
Predictive Scaling ma dwa tryby: ForecastOnly generuje prognozy bez faktycznej zmiany pojemności — jest przydatny do przeglądania prognoz przed zatwierdzeniem automatycznego skalowania. ForecastAndScale zarówno generuje prognozy, jak i automatycznie stosuje zmiany pojemności. Należy rozpocząć od trybu ForecastOnly na kilka tygodni, aby zweryfikować dokładność, a następnie przełączyć się na ForecastAndScale. AWS wymaga co najmniej 24 godzin danych metryk przed wygenerowaniem pierwszej prognozy.
Czas buforowania i bufor maksymalnej pojemności
Predictive Scaling uruchamia działania zwiększające skalowanie z wyprzedzeniem, ale można skonfigurować SchedulingBufferTime, aby jeszcze wcześniej rozgrzewać instancje. Wartość SchedulingBufferTime wynosząca 5 minut oznacza, że pojemność zostanie zwiększona 5 minut przed przewidywanym zapotrzebowaniem. Można również ustawić MaxCapacityBuffer, aby zezwolić ASG na skalowanie powyżej prognozowanego zapotrzebowania o określony procent, zapewniając zapas chroniący przed niedokładnością prognoz.
Łączenie Predictive Scaling i Target Tracking
Zalecanym wzorcem w przypadku zmiennych, ale przewidywalnych obciążeń jest połączenie obu mechanizmów: Predictive Scaling obsługuje oczekiwane obciążenie cykliczne, wcześniej przygotowując odpowiednią pojemność, natomiast Target Tracking Scaling obsługuje nieoczekiwane skoki przekraczające prognozę. Razem zapewniają zarówno ochronę proaktywną, jak i reaktywną. ASG bezpiecznie stosuje najbardziej zachowawczą rekomendację zwiększenia skalowania spośród obu zasad.
Kiedy wybrać poszczególne typy skalowania
Scheduled Scaling należy stosować, gdy skoki ruchu są w pełni przewidywalne i znane są ich dokładne godziny (wzorce związane z wydarzeniami lub godzinami pracy). Predictive Scaling należy stosować, gdy wzorce się powtarzają, ale ich dokładny czas może się zmieniać — uczenie maszynowe automatycznie rozpoznaje taki wzorzec. Target Tracking warto stosować jako stale aktywny, dynamiczny mechanizm zabezpieczający przed nieoczekiwanym obciążeniem. W przypadku całkowicie losowego obciążenia należy polegać wyłącznie na target tracking lub step scaling. Egzamin SAA-C03 często wymaga wybrania rozwiązania najbardziej efektywnego operacyjnie, a w przypadku powtarzających się obciążeń cyklicznych zwykle wygrywa predictive scaling.
Szybkie sprawdzenie
Sprawdź swoją znajomość zagadnień AWS Solutions Architect (SAA-C03) omówionych w tej lekcji.
Podsumowanie lekcji
W tej lekcji poznali Państwo: Scheduled Scaling używa wyrażeń cron do zmiany pojemności ASG w znanych momentach, dzięki czemu idealnie nadaje się do przewidywalnych wydarzeń lub powtarzających się wzorców związanych z godzinami pracy; Predictive Scaling wykorzystuje uczenie maszynowe i historyczne dane CloudWatch do proaktywnego skalowania przed nadejściem obciążenia; natomiast połączenie Predictive + Target Tracking zapewnia ochronę zarówno proaktywną, jak i reaktywną, tworząc najbardziej odporną strategię skalowania. Następnie omówimy Instance Refresh i Lifecycle Hooks, które umożliwiają kontrolowane wdrażanie.
Często zadawane pytania
Czy lekcja „Skalowanie zaplanowane i predykcyjne” jest bezpłatna?
Tak — pełny tekst „Skalowanie zaplanowane i predykcyjne” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cloud & IT Cert Prep, przejdź na CoddyKit PRO. Kurs Cloud & IT Cert Prep zawiera 4 lekcji w sumie.
Co nauczysz się w „Skalowanie zaplanowane i predykcyjne”?
Wstępnie zwiększą pojemność przed znanymi skokami ruchu za pomocą zaplanowanych działań oraz użyją skalowania predykcyjnego do automatycznego prognozowania obciążenia. Ćwiczysz Cloud & IT Cert Prep z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Cloud & IT Cert Prep?
Nie wymagamy żadnego doświadczenia. Cloud & IT Cert Prep w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.
Ile czasu zajmuje lekcja „Skalowanie zaplanowane i predykcyjne”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Cloud & IT Cert Prep?
Tak. Każda lekcja Cloud & IT Cert Prep zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Szablony uruchamiania i konfiguracja ASG
- Zasady skalowania: śledzenie celu i skalowanie krokowe
- Skalowanie zaplanowane i predykcyjne
- Odświeżanie instancji i haki cyklu życia