Premium

Získejte všechny články
jen za 89 Kč/měsíc

Zakázali přístup sami sobě. Google ukázal, jak proběhl obrovský výpadek

  14:44
Celosvětový výpadek byl způsoben relativně malou chybou. Přestože měli síťaři společnosti Google celý měsíc na její odhalení, proklouzla testovacím procesem a překvapila je v nejméně vhodnou dobu. Práci na obnově komplikoval fakt, že výpadek postihl i nástroje pro komunikaci uvnitř firmy Google.

Výpadek služeb Google byl způsoben špatným přechodem na nový systém kvót a verifikace. | foto: montáž: Pavel Kasík, Technet.cz

K výpadkům různých služeb dochází dnes a denně. Proto firmy obvykle garantují nikoli 100% dostupnost, ale třeba 99,99% dostupnost, nechávají si tak rezervu pro pár desítek minut ročně. 

Google takovéto garance nedává, spoléhá místo toho na svou pověst. „Na naší infrastruktuře Google Cloud běží osm aplikací s více než miliardou uživatelů,“ uvádí nápověda Google . „Vyřizujeme 100 miliard vyhledávání měsíčně a 100 hodin videa nahraných na YouTube každou minutu. Služby jako Gmail mají 99,978 % dostupnost a žádné plánované odstávky.“

Výpadek na 47 minut uprostřed kalifornské noci

Minulý týden – 14. prosince – však Google zažil nebývale rozsáhlý výpadek svých služeb po celém světě. Na více než 45 minut nebyly dostupné jeho služby: Gmail, Dokumenty Google, YouTube a prakticky cokoli, k čemu je potřeba se přihlásit. Bez přerušení tak nejspíš fungovalo jen vyhledávání.

Mapa oblastí, ze kterých lidé hlásili výpadek (13:05, 14. prosince 2020)

Google Dashboard hlásí výpadek všech služeb (13:18, 14. prosince 2020)

Protože k výpadku došlo krátce před jednou hodinou odpoledne středoevropského času, bylo to opravdu nepříjemné načasování pro kalifornské inženýry v centrále Google, kteří tou dobou měli 3:46 ráno. Přestože zafungovaly automatické alarmy, trvalo více než 45 minut, než se jim podařilo závadu opravit tak, aby se cloudové služby Google po celém světě znovu rozběhly. 

Pokud vaše firma závisí na službách Google, mohla se vám třičtvrtěhodina zdát dlouhá jako věčnost. Síťařům, kteří se horečně snažili vystopovat, proč jsou výpadky, když všechen hardware normálně běží, to tak určitě přišlo také.

Datová centra po celém světě

Firma Google je pověstná svým důrazem na architekturu. Ať už je to škálovatelný Google File System, nebo o jeho slavná obří datová centra, kterých má po světě už přes dvacet a skladuje na nich řádově miliardy gigabajtů (exabajty) dat. To vše mnohonásobně jištěné a zálohováno, vše musí být koordinováno mezi jednotlivými datacentry.

Takto paradoxně vypadala stránka o „Spolehlivosti Google Cloud“ v době psaní tohoto článku

Aby Google zvládal provoz na takovéto škále, používá řadu interních nástrojů pro optimalizaci. Když máte miliardy uživatelů, tak i desetina sekundy navíc při nějaké operaci může znamenat velké náklady a nepříjemné prodlevy. Google se proto řídí principy automatizace, testování a postupného nasazování.

A právě nástroj, který měl zvýšit robustnost a spolehlivost platformy Google, stál za jejím masivním výpadkem 14. prosince. V závěrečné zprávě o vyšetřování výpadku (tzv. post-mortem, tedy „pitevní zpráva“), jsou podrobně popsány důvody, které vedly k nedostupnosti prakticky všech služeb Google, které vyžadují přihlášení uživatele.

„V pondělí 14. prosince 2020 byly po dobu 47 minut nedostupné služby Google, které využívají technologie Google OAuth.“

zpráva Google

Už z toho je zřejmé, že byl zřejmě nějaký problém s autentizací.  To byl také prvotní instinkt síťařů Google, kteří dostali upozornění ve 3:48 ráno kalifornského času, dvě minuty od první zaznamenané chyby.

Zabezpečení, které se obrátilo proti sobě

Každý proces a služba, která na serverech Google běží, musí mít svého „původce“, aby bylo možné ověřit, že je daný proces spuštěn oprávněnou osobou. K tomu slouží autentifikace uživatele pomocí OAuth. Google následně používá distribuovanou databázi pro ukládání uživatelských dat (Paxos). „Tento systém je navržen tak, aby odmítl jakékoli požadavky, které pracují se zastaralými daty,“ vysvětluje Google.

Další systém, který vstupuje do hry, je systém kvót. Každá služba může mít shora omezený počet či rozsah požadavků, aby nemohlo dojít k zahlcení výkonu na úkor jiných procesů. „V říjnu jsme náš systém pro ověření uživatelských identit převedli na tento nový systém kvót,“ popisuje Google. Při tomto převodu však došlo k chybě: „Část původního systému, který chybně hlásil nulové vytížení, byl omylem ponechán.“

V říjnu se chyba neprojevila, protože při takovém velkém převodu se obvykle nechává rezerva, přechodné období (tvz. „grace period“), během kterého nově nasazené pravidlo ještě nemůže „zastavit“ požadavky, ale pouze generuje hlášení. To správcům umožní na reálném provozu ověřit, že nasazené řešení funguje správně, nechová se nesmyslně a nerozbije něco, co už funguje.

„Když vypršelo přechodné období, automatický systém kvót snížil povolený počet požadavků na nulu, čímž nastal tento výpadek.“

zpráva Google

Toto přechodné období 14. prosince brzy ráno kalifornského času vypršelo. Tím pádem se limit pro autentizační službu Google OAuth skokově snížil na nulu a veškeré požadavky na autentifikaci jakéhokoli uživatele byly odmítnuty. Důsledkem bylo, že všechny žádosti byly odmítnuty jako neoprávněné, ať už to bylo přehrání nového videa na YouTube, otevření inboxu na Gmailu nebo stažení dokumentu z Google Drive. Nikdo neměl oprávnění udělat cokoli. Jako kdyby z minuty na minutu přestaly fungovat všechny klíče.

Dokonce ani zaměstnanci Google se nemohli dostat ke svým nástrojům. To komplikovalo jak interní komunikaci, tak i komunikaci navenek: „Naši zaměstnanci čelili stejnému výpadku jako veřejnost, což zpozdilo naši komunikaci.“ Vysvětlují tak, proč trvalo skoro půl hodiny, než se Google vůbec k výpadku vyjádřil.

Náprava a vyšetřování

Prakticky veškerý provoz, který vyžaduje přihlášení, byl ochromen a házel chyby 5xx (různé typy chyb na serveru). Podle záznamů trvalo dvacet minut, než se síťařům podařilo rozkrýt příčiny problému, za 14 minut se jim podařilo zprovoznit opravu v jednom z datových center. Implementace této opravy do datacenter na celém světě si vyžádala dalších 11 minut.

Následně se služby Google postupně vrátily do normálu, až na „ojedinělé výjimky“, které si vyžádaly další kroky k nápravě. Zůstala otázka, jak k výpadku vůbec mohlo dojít? Zvláště u firmy, která si dává tolik záležet na systematické práci s vnitřní infrastrukturou?

Google to vysvětluje nešťastnou souhrou okolností. Základní chyba, jak již bylo řečeno, nastala při chybné implementaci interního systému kvót. Tato změna navíc proklouzla sérií interních testů:

  • nebyla označena jako „změna pro velké množství skupin“, protože šlo jen o jednu skupinu (skupinu všech uživatelů)
  • nebyla označena jako „snížení kvóty pod hranici obvyklého užívání“, neboť chyba označila užívanost jako minimální (nulovou)
  • během testování tato chyba nevygenerovala žádné chybové hlášky (z popisu nám nebylo jasné, proč tomu tak mělo být)
  • kvóta nebyla označena jako příliš nízká, protože se porovnávala dvě malá čísla a jejich rozdíl nespustil výstražná opatření

Ve chvíli, kdy se kvóty začaly aplikovat, měl řídicí systém nařízeno odmítnout všechny požadavky jako neoprávněné. Tím pádem Google neměl právo zapisovat na své vlastní servery, nemohl tedy aktualizovat záznamy o přihlášení a brzy byly všechny požadavky vyžadující autentifikaci zastaralé.

Do budoucna Google slibuje, že se této a podobným chybám vyhne. Především tak, že znovu prověří, jak funguje automatizace pro implementaci globálních změn. Chce také vylepšit nástroje na monitoring a upozorňování na problémy, což má zamezit pozdní reakci. 

Google hodlá implementovat nezávislý systém interní komunikace pro případy, kdy nelze kvůli chybě použít obvyklé firemní nástroje. A konečně chce zamezit tomu, aby se nějaká chyba mohla dotknout tak velkého množství uživatelů jako tento výpadek.

Chyba v roce 2009 označila všechny stránky na světě za nebezpečné

Svým způsobem připomínala chyba incident Googlu z roku 2009. Tehdy se vinou překlepu dostaly všechny stránky na světě na seznam „podezřelých“ stránek. Na vině tehdy byla lidská chyba: programátor omylem v seznamu nebezpečných adres nechal samostatné lomítko „/“, které označovalo libovolnou existující URL (podobně, jako * označuje libovolný řetězec textu). Také tehdy trval problém přibližně 40 minut, než se jej podařilo odhalit a vyřešit.

Autor:
  • Nejčtenější

Námořníci USA propašovali před 100 lety na palubu bitevní lodi prostitutku

v diskusi je 30 příspěvků

13. dubna 2024

V dubnu 1924 zažilo americké námořnictvo obrovský skandál, který se dostal na titulní stránky...

Znovuzrození japonských letadlových lodí. Ve výzbroji budou mít F-35B

v diskusi je 38 příspěvků

19. dubna 2024

Japonsko má ve své ústavě zakázáno vlastnit ofenzivní zbraně, jako jsou letadlové lodě. Doba...

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Uvidíme v budoucnu na obloze druhý Měsíc? Příčinou může být neobvyklá hvězda

v diskusi je 13 příspěvků

17. dubna 2024

Velmi neobvyklá hvězda éta Carinae v 19. století náhle zjasnila a stala se druhou nejjasnější...

Skvělý filmový zvuk bez velké instalace. Test nejzajímavějších soundbarů

v diskusi je 17 příspěvků

15. dubna 2024

Položíte jej na polici před televizor, propojíte kabelem, zapojíte do zásuvky a během pár chvil se...

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Dawesův plán na čas stabilizoval Německo, ale nástup Hitlera neodvrátil

v diskusi je 15 příspěvků

16. dubna 2024

Německá vláda přijala před 100 lety, v dubnu 1924, Dawesův plán. Byl to americký projekt na...

Znovuzrození japonských letadlových lodí. Ve výzbroji budou mít F-35B

v diskusi je 38 příspěvků

19. dubna 2024

Japonsko má ve své ústavě zakázáno vlastnit ofenzivní zbraně, jako jsou letadlové lodě. Doba...

Lotyšská armáda je malá, materiálem nehýří, ale Ukrajině něco ze svého poslala

v diskusi je 5 příspěvků

18. dubna 2024

V roce 2004 vstoupilo Lotyšsko do NATO, přesto nemůže nechat svou případnou obranu pouze na bedrech...

Pes na Měsíci či Marsu už nemusí být fikce. NASA trénuje průzkumného robopsa

v diskusi jsou 4 příspěvky

17. dubna 2024  15:12

Vědci z projektu Lassie, sponzorovaném americkou NASA, zdokonalují robotického psa pro použití při...

Na dům mu spadl odpad z vesmíru. Nyní NASA potvrdila, že je to kus z baterie

v diskusi je 7 příspěvků

17. dubna 2024  11:50

Před několika týdny proběhla médii informace o varování německého Spolkového úřad pro civilní...

Kdy dát dětem první kapesné a kolik?
Kdy dát dětem první kapesné a kolik?

Kdy je vhodný čas dávat dětem kapesné a v jaké výši? To jsou otázky, které řeší snad každý rodič. Univerzální odpověď však neexistuje. Je ale...

Náhle zemřel zpěvák Maxim Turbulenc Daniel Vali, bylo mu 53 let

Ve věku 53 let zemřel zpěvák skupiny Maxim Turbulenc Daniel Vali. Letos by se svou kapelou oslavil 30 let na scéně....

Sexy Sandra Nováková pózovala pro Playboy. Focení schválil manžel

Herečka Sandra Nováková už několikrát při natáčení dokázala, že s odhalováním nemá problém. V minulosti přitom tvrdila,...

Charlotte spí na Hlaváku mezi feťáky, dluží spoustě lidí, říká matka Štikové

Charlotte Štiková (27) před rokem oznámila, že zhubla šedesát kilo. Na aktuálních fotkách, které sdílela na Instagramu...

Vykrojené trikoty budí emoce. Olympijská kolekce Nike je prý sexistická

Velkou kritiku vyvolala kolekce, kterou pro olympijský tým amerických atletek navrhla značka Nike. Pozornost vzbudily...

Rohlík pro dítě, nákup do kočárku. Co v obchodě projde a kdy už hrozí právník?

V obchodech platí pravidla, která občas zákazník nedodržuje. Někdy se navoní parfémem, aniž by použil tester, nebo...