Neděle 28. února 2021, svátek má Lumír
  • schránka
  • Přihlásit Můj účet
  • Neděle 28. února 2021 Lumír

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)

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)

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í...

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.

google chyba

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ší

ANALÝZA: Lidé nejsou méně ukáznění. Proč rostou počty případů a co dál

Ze současné situace neexistuje žádné jednoduché a levné východisko. Ale jedna cesta nabízí naději na relativně rychlé...

Česko bude raketová velmoc. Ale jen v tom špatném smyslu

Česká armáda se chystá na nákup nové generace protiletadlových raketových systémů. Ale je poněkud nepochopitelné, že si...

Otevřel se padák a sonda dosedla. NASA zveřejnila záběry přistání na Marsu

NASA zveřejnila tříminutový videozáznam čtvrtečního přistání robotické sondy Perseverance na povrchu Marsu. Jde o...

Nadějná data. Stále přibývá dokladů toho, že vakcíny brání šíření viru

Nadějné výsledky z posledních dní naznačují, že minimálně některé vakcíny proti viru SARS-CoV-2 výrazně zpomalují jeho...

{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...}

Sahá se do rezerv. Kolik volných lůžek zbývá na českých JIPkách?

Údaje z českých nemocnic ukazují, že problém s nedostatkem lůžek intenzivní péče je nejhorší za celou dobu pandemie....

Dvaadvacet znaků, že s tímhle mužem vás místo pohádky čeká jen utrpení

Premium Některé ženy jako by se zhlédly v popelce. Věří, že oříšky přinášejí prince. Jenže nakonec jsou z nich spíš veverky –...

Inflace požírá uložené peníze. Kam s nimi, aby jich zmizelo co nejméně?

Premium Naspořili jste 200 000 korun, uložili je na účet, těšili se na úroky a po roce zjistili, že jste zbohatli o celých 340...

Biolog Zrzavý: Covid se postará, abychom umírali i na něco jiného než rakovinu

Premium Podle amerického psychologa a genetika Roberta Plomina mají zděděné geny daleko větší význam při utváření naší...

  • Další z rubriky

Zablokovat Trumpa bylo správné, ale je to naše selhání, říká šéf Twitteru

Sociální síť Twitter trvale zablokovala americkému prezidentovi Donaldu Trumpovi účet. Jako důvod uvedla porušování...

Wikipedie slaví 20 let. Podívejte se na 20 faktů, které vás možná překvapí

Wikipedie je největším bezplatným světovým zdrojem informací téměř o všem. Dvacet let po svém založení má měsíčně více...

Válka o soukromí na internetu probíhá i v segmentu vyhledávání

Počet položených dotazů prostřednictvím internetových prohlížečů každým rokem roste. S tím rostou i požadavky na větší...

Chraňte si soukromí a nenechte se vystopovat webovými stránkami

Internet není soukromé a už vůbec ne anonymní místo. Nejen webové stránky, na kterých surfujete, mohou získat jasnou...

Gabriela Koukalová: Exmanžel mě podváděl a myslím, že utrácel mé peníze

Bývalá světová šampionka v biatlonu, dnes moderátorka televizního pořadu Showtime, Gabriela Koukalová přiznává v...

Bondgirl Rosamund Pike žije v Česku. Překvapili ji opilí rafťáci v Krumlově

Britská herečka Rosamund Pike (42), známá například z bondovky Dnes neumírej, se kvůli natáčení s celou rodinou...

VIDEO: 5 triků, jak v obchodě otevřete mikrotenový sáček. Rychle a bez nervů

Suché ruce a mikrotenové sáčky - často náš největší nepřítel v obchodech. Někdy je to v oddělení pečiva či ovoce a...

Zemřel český DJ Thomas Coastline. Bylo mu 35 let

Zemřel známý český DJ Thomas Coastline, vlastním jménem Tomáš Malina. V minulosti prodělal rakovinu tlustého střeva. O...

Chci kratší pracovní týden a pět týdnů dovolené, říká Maláčová

Válka o kurzarbeit dospěla do fáze podepisování podmínek mírové dohody. Alespoň to tak působí z úst ministryně práce a...