Monitoring SLA: jak mierzyć i udowadniać uptime wobec SLA
Monitoring SLA to praktyka niezależnego sprawdzania dostępności usługi, dzięki czemu masz opatrzony znacznikiem czasu dowód na to, czy usługa spełniła procent dostępności obiecany w umowie o poziomie usług. Ten dowód liczy się najbardziej w sporze, bo własny panel dostawcy nie jest bezstronnym świadkiem własnych przestojów.
Czym jest monitoring SLA?
SLA (service level agreement, umowa o poziomie usług) to kontrakt nazywający konkretny cel dostępności, zwykle miesięczny procent uptime taki jak 99,9%, oraz określający, co się stanie, jeśli dostawca go nie spełni: zazwyczaj kredyt na usługę, czasem prawo do rozwiązania umowy. Monitoring SLA to ciągła praca pomiarowa pod tym kontraktem: sprawdzanie obiecanego punktu końcowego spoza sieci dostawcy, logowanie każdego przestoju ze znacznikiem czasu i zsumowanie wyniku do procentu, o który chodzi w kontrakcie. Bez tego niezależnego zapisu to, czy SLA zostało spełnione, sprowadza się do tego, czyim liczbom ufasz.
Obie strony mają powód, żeby to prowadzić. Klient chce dowodu, zanim złoży roszczenie o kredyt. Dostawca chce mieć własną, uczciwą liczbę, zanim monitoring klienta pierwszy wyłapie problem.
SLA kontra SLO kontra SLI
Te trzy terminy są używane dość swobodnie, ale opisują trzy różne rzeczy, w kolejności: pomiar, cel, obietnica.
| Termin | Czym jest | Przykład |
|---|---|---|
| SLI (Service Level Indicator, wskaźnik poziomu usługi) | Rzeczywisty pomiar, liczba wyliczona z prawdziwych sprawdzeń | Uptime zmierzony z zewnętrznych punktów kontrolnych w ostatnich 30 dniach |
| SLO (Service Level Objective, cel poziomu usługi) | Wewnętrzny cel dla tego wskaźnika, bez żadnej konsekwencji zapisanej w umowie | "Celujemy w 99,95% uptime w tym kwartale" |
| SLA (Service Level Agreement, umowa o poziomie usług) | Kontraktowa obietnica zbudowana na jednym lub kilku SLO, z podaną konsekwencją w razie niespełnienia | "99,9% uptime miesięcznie, albo proporcjonalny kredyt na usługę" |
Praktyczny test: jeśli niespełnienie liczby nie ma nigdzie zapisanej konsekwencji, to jest to SLO, nie SLA.
Co naprawdę dopuszcza SLA na uptime
Każda dziesiąta część procenta znaczy więcej, niż mogłoby się wydawać. Oto, ile dopuszcza każdy popularny poziom SLA, zanim zostanie naruszony, dla ciągłego 30-dniowego miesiąca i 365-dniowego roku:
| Cel SLA | Dopuszczalny przestój na 30-dniowy miesiąc | Dopuszczalny przestój na rok |
|---|---|---|
| 99% | 7 godz. 12 min | 3 dni 15 godz. 36 min |
| 99,5% | 3 godz. 36 min | 1 dzień 19 godz. 48 min |
| 99,9% | 43 min 12 sek | 8 godz. 45 min 36 sek |
| 99,95% | 21 min 36 sek | 4 godz. 22 min 48 sek |
| 99,99% | ~4 min 19 sek | ~52 min 34 sek |
Skok z 99,9% na 99,99% obcina dopuszczalny przestój o 90%, z około 43 minut miesięcznie do około 4 minut. Zobacz jak obliczyć uptime, żeby poznać wzór i uzasadnienie stojące za każdym poziomem.
Co mierzyć, żeby liczba obroniła się w sporze
- Sprawdzaj spoza sieci dostawcy i z więcej niż jednej lokalizacji. Sprawdzenie, które zaczyna się i kończy na infrastrukturze, którą testuje, nie może zobaczyć awarii na poziomie sieci, która odcina tę infrastrukturę od internetu.
- Dopasuj interwał sprawdzeń do poziomu SLA. Interwał 5-minutowy nie może wiarygodnie udowodnić ani obalić celu 99,99%, bo cała miesięczna pula jest mniejsza niż jeden cykl sprawdzenia.
- Wymagaj potwierdzenia z drugiej lokalizacji, zanim policzysz przestój. Chwilowy problem sieciowy jednej lokalizacji to nie awaria dostawcy; incydent, który otwiera się dopiero, gdy zgodzi się kilka lokalizacji, trzyma ten szum z dala od liczby.
- Wyłączaj tylko te okna serwisowe, które SLA faktycznie dokumentuje. Niezapowiedziana konserwacja wciąż liczy się jako przestój; okno, na które obie strony zgodziły się z wyprzedzeniem, już nie.
- Mierz dokładny punkt końcowy nazwany w kontrakcie, nie ścieżkę health-check, która odpowiada 200 niezależnie od tego, czy prawdziwa usługa działa.
- Stosuj próg czasu odpowiedzi SLA, jeśli taki istnieje. Niektóre umowy definiują "niedostępność" jako odpowiedź wolniejszą niż podany czas, nie tylko jako brak odpowiedzi.
- Zachowuj surowy dziennik sprawdzeń, nie tylko zsumowany procent. Spór potrzebuje znaczników czasu, kodów odpowiedzi i czasów trwania, nie jednej liczby wyciągniętej z arkusza kalkulacyjnego.
Jak skonfigurować monitoring SLA krok po kroku
- Zapisz dokładny punkt końcowy, metrykę (uptime, czas odpowiedzi, albo obie) oraz okno pomiarowe, jakie określa SLA. Sprawdzenie skierowane na zły adres URL albo w złej strefie czasowej daje liczbę, której nikt nie może użyć.
- Ustaw interwał sprawdzeń na tyle krótki, żeby udowodnić poziom, o który chodzi. W praktyce trzymaj go wyraźnie poniżej najmniejszej dopuszczalnej awarii, więc cel 99,9% potrzebuje interwału mierzonego w minutach, nie w dziesiątkach minut.
- Uruchamiaj sprawdzenia z kilku niezależnych lokalizacji spoza infrastruktury samego dostawcy, rozłożonych po regionach, w których to ma znaczenie. HostTracker sprawdza z ponad 300 punktów kontrolnych w 158 miastach, więc możesz wybrać lokalizacje blisko tego, gdzie siedzą Twoi prawdziwi użytkownicy.
- Włącz regułę ponownego sprawdzenia albo potwierdzenia, żeby awaria jednej lokalizacji musiała zostać potwierdzona przez inne, zanim policzy się jako przestój.
- Jeśli SLA ustala próg czasu odpowiedzi, skonfiguruj go jako warunek niepowodzenia, a nie tylko wolny, ale wciąż zaliczony wynik.
- Dodaj do konfiguracji monitoringu okna serwisowe, na które obie strony się zgodziły, żeby były automatycznie wyłączane z wyniku uptime, zamiast ręcznie w momencie raportowania.
- Zaplanuj cykliczny raport uptime w tym samym rytmie, w jakim mierzone jest SLA, tygodniowo albo miesięcznie, żeby liczba nigdy nie była składana po raz pierwszy w trakcie sporu.
Jak raportować SLA
Zaplanowany raport zamyka pętlę między mierzeniem a udowadnianiem. Cotygodniowy albo comiesięczny raport uptime, wysyłany automatycznie do osoby odpowiedzialnej za relację po obu stronach, zamienia surowy dziennik sprawdzeń w liczbę, wobec której SLA jest napisane, zanim ktokolwiek musi o nią zapytać. Publiczna strona statusu robi to samo dla każdego spoza tej listy dystrybucyjnej: współdzielony, opatrzony znacznikami czasu zapis uptime i incydentów, którego żadna ze stron nie musi brać na słowo od drugiej. Zobacz co właściwie pokazuje strona statusu, jeśli jeszcze jej nie skonfigurowałeś. Gdy masz już wyniki sprawdzeń z całego okresu, przepuszczenie ich przez kalkulator uptime daje Ci procent bez ręcznej arytmetyki.
Częste błędy
- Mierzenie z wewnątrz własnej sieci. Sprawdzenie, które zaczyna się i kończy na infrastrukturze, którą kontrolujesz, nie może zobaczyć awarii dotyczącej tylko tego, jak reszta świata dociera do Ciebie.
- Uśrednianie uptime dla kilku usług albo regionów naraz. Jedna zmieszana liczba może ukryć jedną usługę, która złamała swoje SLA, podczas gdy inne podciągnęły średnią z powrotem w górę.
- Liczenie tylko pełnych awarii. Jeśli SLA ma klauzulę o czasie odpowiedzi, usługa, która odpowiada, ale znacznie wolniej niż próg, też narusza umowę, mimo że nigdy nie przestała działać w pełni.
- Uruchamianie interwału 5-minutowego wobec celu 99,99%. Matematyka się nie zgadza: 99,99% dopuszcza około 4 minuty przestoju miesięcznie, mniej niż jeden cykl sprawdzenia, więc ten interwał nie potrafi rozstrzygnąć, czy cel został spełniony.
Najczęściej zadawane pytania
Jak liczy się uptime SLA?
Tak samo jak każdy procent uptime: (czas całkowity minus przestój) podzielone przez czas całkowity, razy 100. Częścią specyficzną dla SLA jest to, który przestój się liczy: tylko awarie dotyczące dokładnego punktu końcowego i okna nazwanego w kontrakcie, z wyłączeniem uzgodnionej konserwacji. Zobacz jak obliczyć uptime, żeby poznać pełny wzór i przykłady liczone krok po kroku.
Czy konserwacja liczy się przeciw SLA?
Tylko jeśli nie była uzgodniona z wyprzedzeniem. Większość SLA wyłącza zaplanowaną konserwację, którą obie strony udokumentowały wcześniej, ale przestój wynikający z niezapowiedzianej zmiany albo z awaryjnej poprawki nazwanej po fakcie "konserwacją" wciąż się liczy. Wyłączenie dotyczy zgłoszonego okna, nie samego słowa.
Co to jest dobre SLA na uptime?
99,9% to powszechny punkt wyjścia dla usługi komercyjnej, dopuszczający około 43 minuty przestoju miesięcznie. 99,95% to rozsądne zobowiązanie na poziomie średnim, a 99,99% to poważne zobowiązanie, które zostawia tylko kilka minut miesięcznie, trudne do osiągnięcia bez redundantnej infrastruktury i zdyscyplinowanej konserwacji. Traktuj każdą obietnicę 100% jako hasło marketingowe, nie inżynierskie; tabela powyżej pokazuje dlaczego.
Jak zgłosić roszczenie o kredyty SLA?
Ogólny kształt jest podobny u różnych dostawców: zbierz własny dowód z monitoringu za okres, którego dotyczy sprawa (znaczniki czasu, sprawdzany punkt końcowy, potwierdzony przestój), porównaj go z własną stroną statusu albo zapisem incydentów dostawcy i złóż roszczenie przez kanał wsparcia dostawcy w oknie, jakie ustala jego umowa, często określoną liczbę dni po incydencie. Sprawdź konkretny dokument SLA danego dostawcy pod kątem dokładnego terminu i wymaganych dowodów, bo te szczegóły się różnią i mogą szybko wygasnąć.
Czy jedna lokalizacja monitoringu może samodzielnie udowodnić zgodność z SLA?
Niewiarygodnie. Jedna lokalizacja nie potrafi odróżnić prawdziwej awarii od problemu na własnej ścieżce sieciowej do dostawcy, co jest dokładnie tym rodzajem fałszywego alarmu, którego spór o SLA nie przetrwa. To potwierdzenie z więcej niż jednej niezależnej lokalizacji, zanim policzy się awarię, sprawia, że wynikowa liczba jest obronna.