Co je SRE a proč je důležité?
Nejlepší je začít od začátku. Začněme tím, že položíme základní otázku "Co je Site Reliability Engineering?" Existuje mnoho odpovědí na tuto otázku, která se pohybuje kolem, včetně toho, kdo často citoval člověka, který vytvořil termín (Ben Treynor Sloss at Google), ale nejpraktičtější odpověď, kterou můžeme nabídnout, je:
Site Reliability Engineering (SRE) je technická disciplína, která pomáhá organizaci udržitelně dosahovat odpovídající úrovně spolehlivosti jejích systémů, služeb a produktů.
Později můžeme rozebrat další definice, ale teď pojďme začít s touto. V této definici jsou tři zásadní části, které nás musí rozbalit, které nás vedou přímo k "Proč to záleží?" .
Spolehlivost
Klíčové je slovo „spolehlivost“ („Reliability“ uprostřed zkratky SRE). Definice nehovoří o „odpovídající úrovni výkonu“, „odpovídající úrovni efektivity“, „odpovídající úrovni stability“ nebo dokonce „dosažení odpovídající úrovně příjmu“. Mluví o „odpovídající úrovni spolehlivosti“. Proč?
Pojďme si něco předvést. Tady je snímek obrazovky. Co si myslíte, že to ukazuje? Zkuste nepokračovat, dokud vás něco nenapadne, nebo dokud to nevzdáte. Poznámka: Pokud je těžké v tomto obrázku rozpoznat hodně podrobností, je to v prohlížeči dokonale vykreslené.
Tento obrázek ukazuje, jak vypadá obrazovka, když selže aplikace v jazyce PHP (bez další přidané podpory ladění). U aplikace v jazyce Java můžete vidět něco podobného:
Proč se díváme na tyto příklady? Každý z nich představuje aplikaci, na jejíž vytvoření mohlo být spotřebováno obrovské množství času, energie a zdrojů. Pokud ale aplikace není v provozu, pokud není funkční, když zákazník potřebuje přístup k ní, pokud není spolehlivý, nedělá ji nikdo, zejména firma. Naopak může nespolehlivosti způsobit firmě újmu (ztrátu reputace, zisku, smluvní škody, pokles morálky atd.).
Proto se SRE rozhodne zaměřit se na spolehlivost jako základní vlastnost, například základní vlastnost služby, systému nebo produktu. Spolehlivost může zahrnovat mnoho věcí (jak si probereme později), ale pojďme přejít na druhou zásadní část definice.
Odpovídající úrovně spolehlivosti
Možná jste ho při prvním čtení této definice nepostřehli, ale pojďme zdůraznit další důležité slovo:
Site Reliability Engineering (SRE) je technická disciplína, která pomáhá organizaci udržitelně dosahovat odpovídající úrovně spolehlivosti jejích systémů, služeb a produktů.
Proč je tohle slovo tak důležité?
Důležitým pozorováním ve světě SRE je, že existuje několik systémů a služeb, které musí být 100% spolehlivé. Podstatnou výjimkou jsou samozřejmě situace, kdy se rozhoduje mezi životem a smrtí, například v letectví nebo medicíně.
Ve skutečnosti existuje několik situací, kdy je dokonce žádoucí. Čím vyšší je požadovaná spolehlivost, tím více úsilí a zdrojů je nutné investovat. A s přibližováním 100 % ty nároky rostou velmi strmě. Jinak řečeno, honění po spolehlivosti, kterou nepotřebujete, je plýtvání časem a penězi. Chcete dosáhnout odpovídající úrovně spolehlivosti systému, služeb a produktů.
Tato úroveň musí být účelná a odpovídat reálným obchodním potřebám. Naši zákazníci se k vám například můžou připojit přes síť, která není 100% spolehlivá (řekněme, že je to až 90 % času). Vynaložení úsilí a peněz, aby se zajistilo, že vaše služba je 95% spolehlivá, je podle definice plýtvání časem a penězi. Chcete dosáhnout odpovídající úrovně spolehlivosti systému, služeb a produktů.
SRE posouvá tuto účelnost ještě o krok dál. Pokud bychom teď mohli uvažovat o žádoucí úrovni spolehlivosti, měli bychom udělat něco, co bychom měli udělat, pokud budeme úspěšní na schůzce nebo překročíme tuto úroveň? A podobně - co dělat, když jí nedosahujeme? Na tyto otázky odpovíme později v modulu.
Udržitelně dosahovat
Poslední slovo z naší definice, které musíme zdůraznit, než budeme pokračovat, je udržitelně. Udržitelně se týká role lidí. Je nezbytné vytvořit udržitelný provozní postup. Lidé vytvářejí spolehlivé systémy, služby a produkty. Pokud neděláme věci, abychom se ujistili, že naše práce je udržitelná. Když vzbudíme naše lidi v 3:00 každou noc se stránkou a nedávejte jim čas se svou rodinou. Pokud nemají příležitost věnovat se sami sobě. Pak neexistuje způsob, jak budou moct vytvářet spolehlivé systémy. SRE si myslí, že je to klíčové, že implementujeme provozní praxi, která je v průběhu času udržitelná, takže naši lidé můžou do práce přenést to nejlepší.