Autoskalowanie i saldo SLA
Autoskalowanie i saldo SLA
1) Cele i zasady
Celem autoskalaryzacji jest utrzymanie SLO (opóźnienie/dostępność) przy minimalnych kosztach.
SLA i SLO i SLA Koszt: nie gonić „niekończącej się” skali - skali w budżecie błędów i limitów pieniężnych.
Model obciążenia otwartego: przychodzące żądania tworzą strumień natężenia „na”; system zapewnia przeciętny równoległość „N, W” (prawo małego), gdzie „W” jest średnim czasem pracy.
2) Jakie metryki nadają się do wyzwalaczy
Techniczne:- Procesor/pamięć RAM/IO (proxy do nasycenia).
- W locie i poczekać na basen.
- p95/p99 opóźnienia aplikacji (faktycznie odzwierciedla SLO).
- RPS/szybkość przyjazdu.
- Kolejki: głębokość, wiek wiadomości, szybkość przetwarzania.
- Udział udanych transakcji ≤ T sekund (depozyty, wymeldowanie).
- Czas na potwierdzenie transakcji.
Zalecenie: połączyć 2-3 sygnały: na przykład, opóźnienia + baseny dla usług i głębokość kolejki + wiek dla pracowników.
3) Reaktywna skala predykcyjna
Informacje zwrotne: wzrost/spadek HPA/ASG w rzeczywistości. Proste, ale jest opóźnienie.
Przewidywanie (feed-forward): kalendarz/miniona telemetria/wydarzenia rynkowe. Umożliwia wstępne ocieplenie: podnieść N instancje wt przed szczytem.
W praktyce: hybryda - punkt wyjściowy (minimum), predykcyjny impuls przed zdarzeniami, przynosi reaktywność.
4) Polityka skali i parametry stabilności
Śledzenie celu: utrzymać metrykę w pobliżu celu (np. CPU 60%).
Krok skalowania: kroki w nadmiarze (agresywnie na przyczepności).
Okno stabilizacyjne/chłodzenie: gładkie klapowanie (np. 60-180 sekund).
Min/Max: dolne i górne granice; max - w granicach DB/dostawcy.
5) Koordynacja poziomu (kaskada architektoniczna)
1. Brama obwodowa/API - elastyczna, ale z ograniczeniami i ciśnieniem wstecznym.
2. Usługi - HPA według opóźnień/RPS/pool czekać.
3. Kolejki/pracownicy - KEDA/ASG według głębokości/wieku wiadomości.
4. DB/cache - staranne skalowanie (repliki/odłamki), z góry.
Zasada: Nie rozwijaj aplikacji szybciej niż „dane” wytrzymają.
6) Kolejki i Prawo Małego (jak liczyć pracowników)
Dla kolejki z wejściem 'na' (msg/s) i średnim czasem przetwarzania 'W' (s):- Wymagana równoległość to 'N _ min, I × W'.
- Margines wierzchołka/ogona: "N", "W" × "(1. 2–1. 5)`.