Když někomu řeknu, že jedno z nejzajímavějších cloudových témat je pro mě návrh landing zón, obvykle následuje zdvořilá pauza.
Docela to chápu, protože landing zóna rozhodně nemá nic z toho, co dělá cloud atraktivním. Nic totiž nepočítá, nic neukládá a na konferenci s ní nikdo v dnešní době neoslní. Pro mě je to ale místo, kde se potkávají dva světy, ve kterých jsem strávil většinu kariéry — celopodniková architektura a cloud. Je to místo, kde ten první svět konečně dostává něco, co mu dlouho chybělo.
(Český ekvivalent angl. termínu „landing zone“ jsem nenašel. Doslovný překlad „přistávací zóna“ mi ale pomohl pochopit paralelu s letištěm – viz dále.)
Cloud jako stavebnice bez stavebního povolení
Cloudové řešení je velmi zjednodušeně sada služeb (virtuální stroje, úložiště, databáze, sítě), které je potřeba spustit, nastavit a propojit. Proti světu vlastních datových center je to velmi snadné, protože nemusíte řešit žádné objednávky hardwaru, ani čekat na místo v serverovně.
A právě v tom je ten háček. Když je totiž spuštění služby otázkou několika kliknutí, spustí si ji každý, kdo má oprávnění. Nikdo se nemusí ptát, jestli to zapadá do celku. V textu o Winchesterově domě (viz) jsem psal o stavbě, která rostla desítky let bez představy o tom, jak má vypadat hotová. V cloudu se takový dům dá postavit za jedno odpoledne (a faktura za něj přijde na konci měsíce).
Letiště a letadla
Landing zóna je odpověď na tenhle problém. Je to základní struktura cloudového prostředí, připravená dřív, než do něj přistane první aplikace: jak je rozdělená síť a co s čím smí komunikovat, jak je prostředí propojené s vlastním datovým centrem a s internetem, kdo smí co nasazovat a kam, co se loguje a jak se hlídají náklady.
Nejlepší přirovnání, jaké znám, jsem poznal v Oracle. Landing zóna je letiště a jednotlivé cloudové služby jsou letadla. Na tom přirovnání se mi líbí hlavně to, jak přesně odděluje to, co se dá změnit později, od toho, co ne. Gate se dá přistavět. Nový terminál také, i když to bolí. Ranvej už ale neposunete. A když špatně navrhnete, kde bude v letištní budově umístěna hranice Schengenu, bude pasová kontrola komplikovat provoz letiště po celou dobu jeho existence.

Zdroj: Wikimedia Commons
V cloudu je ranvejí adresní plán sítě. Schengenem je rozdělení prostředí na bezpečnostně oddělené celky — v každém cloudu se jmenují jinak, v OCI jsou to compartments. Pasovou kontrolou je správa identit a oprávnění. A gaty jsou jednotlivé projekty, které přicházejí a odcházejí.
Celopodniková architektura, která dostala zuby
Celopodniková architektura pracuje s principy a architektonickými vzory — osvědčenými řešeními problémů, které se opakují. Jejich slabinou ale vždycky bylo, že většinou žily jen na papíře. Architektonický vzor je popsaný v dokumentu, princip je na slidu, a jestli se jimi projekt řídí, záleží na disciplíně lidí a na tom, jestli architekt zrovna sedí na správné poradě. Kdo dělal architekturu déle, ví, jak často tahle kontrola selže.
Landing zóna dělá s těmi samými principy něco zásadně jiného: přepisuje je do kódu. Pravidlo „produkční a testovací prostředí se navzájem nevidí“ není odstavec ve směrnici, ale nastavení sítě. Pravidlo „vývojář nezakládá databáze v produkci“ není apel, ale politika oprávnění. Platforma je vynucuje sama, pokaždé, bez ohledu na to, kdo zrovna sedí na poradě.
Po letech, kdy jsem architektonické principy častěji obhajoval, než viděl prosazené, mě tohle opravdu těší.
A je tu druhá podobnost: modularita. Architekt nenavrhuje každé řešení od nuly, ale skládá ho z ověřených vzorů. Dobrá landing zóna vzniká stejně.
Framework, o kterém se málo ví
Oracle zveřejnil na GitHubu celý framework OCI Landing Zones. Je veřejný, zdarma a k volnému použití. A nejsou to jen doporučení na papíře — obsahuje i hotové šablony v Terraformu, kterými lze landing zónu rovnou nasadit.
Na metodice mě zaujaly dvě věci:
První je škálovatelnost. Nemusíte začínat velkým projektem. Pro jednoduché řešení stačí jednoduchá landing zóna, nasazená jako jeden celek. Když prostředí poroste, dá se rozšiřovat, aniž byste začínali znovu.
Druhá je modularita. Landing zónu stavíte jako lego. Základem jsou hotové blueprinty — od základní Core Landing Zone až po varianty pro velké organizace s více samostatnými jednotkami. Na ně připojujete rozšíření, třeba síť typu hub-and-spoke nebo propojení s jinými cloudy. A podle typu workloadu přidáváte komponenty pro Kubernetes, VMware nebo Exadata. Pod tím vším leží sada znovupoužitelných modulů pro identity, síť, bezpečnost, monitoring a governance. Šablony jsou navíc testované proti bezpečnostnímu benchmarku CIS pro OCI.
Kdo někdy skládal architekturu z patternů, pozná tu logiku okamžitě. Jen tady vzor není obrázek v dokumentu, ale kus kódu, který se dá spustit.
Pro úplnost: vlastní metodiku pro landing zóny mají všichni velcí hráči — AWS, Microsoft Azure i Google Cloud — a principy jsou všude podobné. Pokud s OCI nepracujete, poslouží vám framework i jako dobře zpracovaná učebnice. Oracle se jím chlubí překvapivě málo a podle mě neprávem.
A ještě: pozor na paralýzu z analýzy
Landing zóna může sama sklouznout do problému, před kterým má chránit. Říkám tomu paralýza z analýzy, do které jsem se v kariéře zapletl víckrát, než bych býval chtěl.
Typický scénář vypadá takto: tým měsíce ladí dokonalou landing zónu, první aplikace pořád nemá kam přistát a byznys si mezitím založí vlastní cloudový účet na firemní kartu. Výsledkem jsou dvě prostředí: jedno pečlivě navržené a prázdné, druhé živé a bez pravidel.
A to je důvod, proč mi škálovatelnost připadá důležitější než dokonalost návrhu. Letiště nemusí mít v den otevření všechny terminály. Musí ale mít správně položenou ranvej.
Celopodnikovou architekturu jsem většinu kariéry musel vysvětlovat. V landing zóně jsem ji ale poprvé viděl fungovat bez vysvětlování — protože tam platí sama.
Landing zóna je totiž celopodniková architektura, která konečně dostala zuby. A kdo postaví letiště dřív, než začnou přilétat letadla, nemusí později obývat Winchesterův dům.
Další zdroje: OCI Landing Zones na GitHubu, New standardized OCI Landing Zones framework (Oracle Cloud Infrastructure Blog, září 2024).
