Vyjádření sledovanitv.cz:
V poslední době nás potrápily výpadky naší služby v míře vyšší, než je u nás obvyklé. V lednu po více než roce stabilního provozu nás postihl 4,5hodinový výpadek, v březnu se jednalo o asi hodinovou nedostupnost služby a minulý pátek v podvečer jste možná zaznamenali krátký asi 30minutový výpadek. Tyto události byly o to nepříjemnější, že proběhly během večerní špičky.
V lednu za nedostupnost mohla technická závada na webových serverech, která způsobila vyšší zátěž na naše databázové servery. V březnu se pak jednalo o hardwarovou poruchu na našem hlavním routeru, páteční výpadek má kořeny v obou předchozích.
Abychom posílili stabilitu naší služby a předešli podobným výpadkům, začali jsme 1. dubna 2021 provádět postupný upgrade našich klíčových serverů na nové řešení od firmy Supermicro s procesory AMD. Tím zajistíme dostatečné výkonové rezervy pro běh naší služby bez výpadků.
První část upgradu v HW vybavení se stihla ještě před Velikonocemi, kdy došlo k výraznému navýšení naší odbavovací kapacity až na hranici 350 Gbit/s. Upgrade proběhl bez jakýchkoliv výpadků a na základě velmi dobrých výsledků bylo přistoupeno k dalšímu kroku, tedy k updatu některých dalších částí naší služby. Plán migrace byl nastaven tak, abychom vše stihli do víkendové špičky, tedy nejpozději během pátku 9. dubna 2021.
V průběhu týdne migrace postupovala dle plánu, na pátek zbyla její poslední část – update databázových a webových serverů. V 8 ráno jsme s migrací začali odstavením starších webových serverů (⅔ serverů zůstaly aktivní, což je pro běh naší služby mimo špičku obrovská rezerva).
Bohužel, v průběhu celého dne jsme naráželi na nejrůznější komplikace, které způsobily zpoždění vůči našemu plánu. Většina serverů byla spuštěna v 17:10, nám zbývalo dořešit poslední server. A zde se zrodil zásadní problém, který způsobil zhruba o hodinu později výpadek celé služby. Aneb jak tvrdil americký letecký inženýr Edward A. Murphy: „Může-li se něco pokazit, pak se to určitě pokazí.“ A z více věcí, které se mohou pokazit, se pokazí právě ta, jejíž porucha způsobí nejvíce problémů.
Na posledním ze serverů běžely finální testy před jeho spuštěním, ty v pořádku skončily v 18:00. Tento čas už je problematický z hlediska vyšší zátěže, proto jsme se rozhodovali, jestli je ještě bezpečné tento server zpátky připojit do clusteru, nebo je bezpečnější v době od 18:00 do 24:00 přečkat bez něj a připojit jej zpět až po půlnoci.
Zde došlo k lidské chybě, kdy jsme správně neodhadli kombinaci zátěže generované klienty a zátěže, kterou vyvolá připojení posledního serveru zpátky do clusteru. Riskantní krok – tedy zapojení serveru zpět ihned – nevyšel, při připojování tohoto serveru došlo k tomu, že se sečetla krátkodobá vyšší zátěž klientů a vysoká zátěž nového, výrazně rychlejšího serveru na celý databázový cluster, který se v tu chvíli rozpadl..
Obnovu jsem provedli v maximální možné rychlosti, bohužel v době špičky je nutné při obnově všechny klienty dočasně odpojit, aby bylo sestavení clusteru co nejrychlejší a aby nedošlo k jeho opětovnému přetížení, proto jsme museli úmyslně odstavit naše webové služby po nezbytně nutnou dobu, která nepřesáhla 30 minut. Zbytek večera služba fungovala naprosto v pořádku.
V průběhu dubna a května proběhne upgrade zbylých ⅔ našich serverů. Věříme, že tentokrát již zcela bez výpadků, a doufáme, že po dokončení celého procesu migrace budete potěšeni zrychlením naší služby.
V reakci na výpadek jsme upravili nastavení našich vnitřních procesů ohledně migrací a servisních zásahů, dále jsme provedli SW úpravy, které by měly podobné problémy do budoucna eliminovat.
Za způsobené nepříjemnosti se upřímně omlouváme.