Späť na blog

Čo je uptime a prečo na ňom záleží

· 5 min čítania

Uptime je percento času, keď je web dostupný. 99 % znamená vyše troch dní výpadku ročne; realistický cieľ je 99,9 % a vedieť o probléme do minúty.

Čo je uptime a prečo na ňom záleží

Definícia: čo presne meriame

Uptime je pomer času, kedy služba odpovedá očakávane (typicky HTTP 200, obsah obsahuje kľúčové slovo), k celkovému času merania. Vyjadruje sa v percentách, najčastejšie za obdobie 30 alebo 365 dní.

Opakom je downtime - čas, kedy služba nereaguje, vracia 5xx alebo trvá nad nastavený timeout. Patrí sem aj plánovaná údržba, pokiaľ ju explicitne nevylúčite z výpočtu (čo by ste mali komunikovať v SLA).

Tabuľka "nines": koľko času znamená každé desatinné miesto

Uptime Povolený downtime / rok Mesiac Deň
99 % 3 dni 15 h 7 h 18 min 14 min
99,5 % 1 deň 19 h 3 h 39 min 7 min
99,9 % (tri deviatky (three nines)) 8 h 45 min 43 min 1 min 26 s
99,95 % 4 h 22 min 21 min 43 s
99,99 % (štyri deviatky (four nines)) 52 min 4 min 22 s 8,6 s
99,999 % (päť deviatok (five nines)) 5 min 15 s 26 s 0,86 s

Každá ďalšia deviatka násobí náklady na infraštruktúru. Five nines (99,999 %) je doménou globálnych providerov s aktívnou redundanciou naprieč kontinentmi - pre väčšinu biznis aplikácií je správnym cieľom 99,9 %.

Aký uptime reálne potrebujete

  • Marketingový web (firma, portfólio): 99 % stačí. Návštevník, ktorý príde počas výpadku, to skúsi neskôr.
  • SaaS aplikácia s desktopovým klientom: 99,9 % je minimum. Zákazníci platia za prácu, ktorú počas downtime nemôžu robiť.
  • E-shop, platobná brána, real-time služba: 99,95 % a vyššie. Každá minúta = priame straty.
  • Infraštruktúra (API, ktoré používajú iní): Aspoň 99,99 %. Vaše SLA limituje SLA vašich klientov.

Ako sa uptime meria

Monitorovacia služba periodicky volá váš endpoint (typicky HTTP GET, ale aj TCP socket, ICMP ping či DNS resolution). Každá kontrola má binárny výsledok: up alebo down.

Bežný interval je 1-5 minút. Čím kratší, tým rýchlejšie zachytíte výpadok, ale tým viac falošných upozornení (false-positive alertov) dostanete - lokálne sieťové výkyvy, krátky reštart pri nasadzovaní. Riešením je multi-region kontrola: výpadok sa potvrdí až vtedy, keď ho hlási N regiónov, nie iba jeden.

Najčastejšie zdroje stratených deviatok (nines)

  1. Expirovaný SSL/TLS certifikát. Prehliadač zablokuje stránku. Bez monitoringu sa o tom dozviete v pondelok ráno, keď zazvoní telefón.
  2. Vypršanie domény. Prestane fungovať celé DNS. Email, web aj status page padajú zároveň.
  3. Padnutý databázový proces (worker). Web vracia 500 alebo timeout pre časť requestov. Klasický ICMP ping problém nezachytí - server odpovedá, ale aplikácia je rozbitá.
  4. DDoS alebo flooding. Server je zaťažený, doba odozvy stúpa nad limit a monitoring oznámi výpadok.
  5. Pokazený deploy (nasadenie). Nová verzia má chybu (bug), ktorá zlomí niektorú cestu. Bez integračných testov to zistíte až vtedy, keď sa začnú sťažovať zákazníci.

Záver

Uptime nie je marketingové číslo - je to mierka toho, ako veľmi sa môžete spoľahnúť na vlastnú infraštruktúru. 99,9 % uptime nie je luxus, ale štandardná požiadavka pre akúkoľvek službu, ktorá generuje obrat alebo má platiacich zákazníkov.

Krok jeden je merať. Ak nemáte externé monitorovanie, technicky neviete, aký uptime máte - len ho odhadujete.

Ako si uptime vypočítate sami

Vzorec je jednoduchý:

uptime % = (celkový čas - downtime) / celkový čas × 100

Povedzme, že kontrola beží každú minútu počas 30-dňového mesiaca. To je 43 200 kontrol. Ak sa 40 z nich vrátilo ako down, downtime je približne 40 minút, takže uptime je (43200 - 40) / 43200 × 100 = 99,907 %. Na desatinných miestach záleží: rozdiel medzi 99,9 % a 99,99 % za rok je 8 hodín 45 minút oproti 52 minútam povoleného downtime. To je rozdiel medzi "popoludnie mimo prevádzky" a "takmer si to nikto nevšimol". Ak nechcete počítať ručne, náš kalkulátor uptime prepočíta cieľové percento na povolený downtime za deň, mesiac a rok (a naopak).

Rolling okno vs kalendárne okno

To isté číslo sa dá vykázať dvoma spôsobmi a každý odpovedá na inú otázku: - Kalendárne okno (tento mesiac, tento rok): resetuje sa 1. dňa. Vhodné pre SLA reporting a fakturáciu, lebo obdobie SLA kreditu zvyčajne kopíruje fakturačný cyklus. - Rolling okno (posledných 24 h, 7 dní, 30 dní): vždy sa pozerá pevný úsek dozadu od "teraz". Vhodné na odhalenie nedávneho prepadu, lebo zlú hodinu nezriedia tri týždne zeleného stavu na konci mesiaca. Jeden výpadok vyzerá v každom z nich úplne inak. Výpadok 2. dňa v mesiaci do 30. dňa kalendárnym číslom takmer nepohne, no v rolling 24-hodinovom pohľade dominuje celý deň. Zrelý monitoring ukazuje oba.

Čo sa počíta ako downtime (a čo vylúčite)

Práve tu sa čísla uptime medzi poskytovateľmi potichu rozchádzajú:

Udalosť Počíta sa zvyčajne ako downtime?
HTTP 500 / 502 / 504 Áno
Timeout nad nastavený limit Áno
Jedna zlyhaná kontrola, ďalší interval OK Závisí od pravidiel konsenzu
Plánovaná údržba (maintenance window) Len ak nie je vylúčená
Zlyhanie videné jedným regiónom, nie ostatnými Nie (pri konsenze)
Zlyhanie DNS resolution Áno

Ak inzerujete SLA, definujte tieto pravidlá písomne. Zákazník, ktorý si prečíta "99,9 %" a potom zažije dvojhodinové údržbové okno, bude číslo rozporovať, pokiaľ zmluva nehovorí, že údržba je vylúčená.

MTBF a MTTR: čísla za percentom

Percento uptime je výsledok. Dve prevádzkové metriky vysvetľujú prečo končíte tam, kde končíte: - MTBF (Mean Time Between Failures) - priemerný zdravý úsek medzi výpadkami. Vyššie je lepšie. Ženie ho kvalita kódu, redundancia infraštruktúry a rezerva kapacity. - MTTR (Mean Time To Recovery) - ako dlho výpadok v priemere trvá. Nižšie je lepšie. Ženie ho takmer výlučne to, ako rýchlo sa to dozviete. Toto je páka, ktorou hýbe monitoring: výpadok, o ktorom sa dozviete za minútu a opravíte ho za desať, vás stojí 11 minút; ten istý výpadok zistený telefonátom zákazníka o hodinu neskôr vás stojí 70. Skrátiť MTTR býva lacnejšie než predĺžiť MTBF a monitoring je to najlacnejšie skrátenie MTTR, aké existuje.

Konkrétny príklad: otáčanie gombíkom

Tím bežiaci na 99,5 % (asi 3 h 39 min downtime mesačne) chce dosiahnuť 99,9 %. Nepotrebuje nové servery. Audit ukáže, že väčšinu downtime tvoril jeden týždenný deploy, ktorý na 40 minút zlomil jednu cestu, kým si to niekto všimol, plus tesný únik pri SSL. Pridanie kontroly kľúčového slova na kritickú cestu a alertov pred expiráciou SSL skrátilo čas zistenia zo 40 minút na menej než 2. Percento sa posunulo z 99,5 % na 99,92 % bez zásahu do infraštruktúry - čisto skrátením MTTR.

Začnite merať uptime svojich služieb

ePulz.io sleduje vaše endpointy v intervaloch od 1 minúty (Business), 2 minút (Profi) alebo 5 minút (Trial a Štandard) z 3 worker nodov v 2 EÚ mestách (Liptov primary + eu2, Bratislava eu1). 7 dní zadarmo.

Spustiť monitoring →

Súvisiace

Zdieľať: Odkaz skopírovaný

Vyskúšajte ePulz.io zadarmo - na 7 dní bez potreby kreditnej karty.

Vytvoriť účet