Kubernetes: Spása pro podnikové IT?

Může vyřešit problematiku běhu kritických aplikací na produkční úrovni. Ale co vlastně Kubernetes dělá, že je tak důležitý pro kontejnerové platformy?

227
0
SDÍLET

Znovu a znovu se objevují podnikové technologie, které vypadají jako elegantní a jednoduché řešení pro komplikovaný problém. Vezměme si Kubernetes, platformu postavenou na technologii open source, která automatizuje správu linuxových kontejnerů a zároveň eliminuje mnoho manuálních procesů nutných pro nasazení a škálování kontejnerizovaných aplikací. Může však Kubernetes sám o sobě vyřešit problematiku běhu kritických aplikací na produkční úrovni?

Používání kontejnerů je stále na vzestupu. Nedávná studie společnosti RedHat zjistila, že 62 % organizací dnes využívá kontejnery minimálně (pro méně než 10 % aplikací), ale pouze 20 % z nich říká, že tento stav za následujících 24 měsíců nezmění. Na druhou stranu procento organizací, které nasazují více než polovinu svých aplikací pomocí kontejnerů, by se mělo během stejného období téměř ztrojnásobit na 28 %. Pryč jsou dny, kdy se na kontejnery pohlíželo jen jako na nový způsob balíčkování aplikací pro infrastrukturní architekty, od kterých se očekávalo nalezení lepších způsobů, jak provozovat aplikace a snížit náklady na virtuální stroje. Dnešní kontejnerové platformy jsou vnímány tak, že umožňují organizacím prioritizovat inovaci a až pak se zabývat infrastrukturou. To znamená, že funkční a spolehlivá kontejnerová platforma a její provoz je aktuálně důležitým bodem programu každého CIO.

Co je platforma Kubernetes

Je to jen pár let, kdy vypukl boj mezi různými orchestračními kontejnerovými platformami. Pak se na trhu objevily kontejnery Kubernetes. Jakmile se uvolnil jejich zdrojový kód, kontejnery Kubernetes se staly jedním z nejrychleji rostoucích open source projektů. Akci KubeCon 2019 v Barceloně navštívilo téměř 8 000 vývojářů, čímž se událost zařadila mezi největší open sourcové konference v Evropě. Můžeme bezpečně konstatovat, že kontejnery Kubernetes v oblasti kontejnerové orchestrace vyhrály a staly se pro celé odvětví de facto standardem.

Ale co vlastně Kubernetes dělá, že je tak důležitý pro kontejnerové platformy? Jako nástroj pro správu kontejnerů a clusterů, který není závislý na jednom dodavateli, nabízí Kubernetes platformu pro automatizaci nasazení, škálování a správy aplikačních kontejnerů napříč clustery tvořenými mnoha stroji. V době, kdy hlavní cloudovou strategií je ta hybridní, mohou Kubernetes clustery fungovat napříč veřejnými, privátními a hybridními cloudovými prostředími. Z toho důvodu jsou kontejnery Kubernetes ideální platformou pro běh aplikací navržených pro cloud, které vyžadují rychlé škálování a zpracování dat v reálném čase.

Nicméně Kubernetes se i přes svou obsáhlost spoléhají na další open sourcové projekty.

Co platforma Kubernetes není

Graham Berry ze společnosoti Red Hat

Podniková produkční kontejnerová platforma by se měla skládat z několika důležitých nástrojů mimo orchestrátor Kubernetes. Mezi ty patří nástroje jako registr pro ukládání kontejnerových obrazů, síťování, úložiště, telemetrie, automatizace a služby. Služby pak zahrnují metriky, správu logů, monitorování, řízení síťového přístupu, autentizaci a autorizaci, podporu jazyků, frameworků, middlewaru a databází. V neposlední řadě sem patří také bezpečnost. Organizace musí promyslet bezpečnost napříč všemi vrstvami infrastruktury ještě před tím, než spustí první kontejner, a musí zajistit kontinuální integraci bezpečnosti se zohledněním toho, kde končí bezpečnost Kubernetes a kde již musí zasáhnout.

Z toho vyplývá, že i když jsou kontejnery Kubernetes dostupné mnohým, vytvoření jednotné platformy pro běh kritických aplikací vyžaduje mnohem více. Kdokoliv, kdo se rozhodne vybudovat vlastní kontejnerovou platformu, bude muset spravovat, testovat a verifikovat jednotlivé technologie napříč všemi komponentami. Také bude nutné držet krok se životním cyklem každé komponenty a zajistit, že budou stále fungovat dohromady. Pokud v rámci tohoto procesu narazíte na problém, jeho řešení je čistě na vás, jelikož Kubernetes jako upstreamový open sourcový projekt postrádá oficiální podporu.

Frankensteinovy kontejnery Kubernetes

Mnoho organizací začíná s malou instalací platformy Kubernetes, a jakmile se dostane do bodu, kdy chtějí škálovat a nasadit kritické aplikace, zjistí, že podcenily komplexitu a náročnost integrace, testování, aktualizace a správy různých cloudových komponent. V této chvíli pak mantra  „nic jako obyčejné Kubernetes neexistuje“ začne dávat smysl a organizace si uvědomí, že kousek po kousku poskládala Frankensteinovo monstrum. Údržba a správa tohoto výtvoru se pak může stát s jeho růstem velmi nákladnou – obzvláště s tím, jak roste poptávka po těchto dovednostech.

Směrování a využívání inovace

Ve světě, kde jsou inovace a rychlost, s jakými se dostanete na trh, hlavními prioritami, je třeba, aby vývojáři začínající s novým projektem byli schopni efektivně nasadit infrastrukturu a začít programovat. Využitím spravované platformy, která poskytuje okamžitý přístup ke všem potřebným prostředkům pro běh kontejnerů a platformy Kubernetes napříč hybridním prostředím (včetně podpory a bezpečnosti) znamená, že vývojáři mohou strávit více času řešením problémů důležitých pro byznys.

Mnoho organizací bude vyžadovat, aby jejich hybridní prostředí zahrnovalo více veřejných cloudů. To znamená, že si musejí být vědomy, kolik flexibility a svobody požadují vzhledem k technologiím, které plánují využívat. To může zahrnovat nastupující inovace jako Quarkus, který umožňuje vytvářet aplikace navržené pro cloud, nebo operátory, které představují způsob distribuce aplikací navržených pro Kubernetes nabízející jednodušší správu. V konečném důsledku to znamená pochopit rozdíl mezi otevřenou a proprietární platformou.

Jako příklad nám zde může posloužit Deutsche Bank, která vytvořila platformu jako službu založenou na open sourcových technologiích, aby podpořila standardizaci a jednoduchost přístupu vývojářů k výpočetní kapacitě a aplikačním zdrojům napříč organizací. Tato kontejnerizovaná aplikační vývojová platforma založená na mikroslužbách s názvem Fabric poskytuje rychlý přístup ke zdrojům a pomáhá vývojářům pracovat efektivněji. V praxi to znamená, že aplikace se nyní mohou dostat z fáze experimentu do produkce za dva až tři týdny místo původních šesti až devíti měsíců.

Společnost Cathay Pacific Airways Limited, která obsluhuje 200 destinací v 52 zemích, pak nasadila podnikovou Kubernetes platformu v prostředí otevřeného hybridního cloudu. Nejenže tím získala škálovatelnost na vyžádání a přenositelnost mezi privátní a veřejnou infrastrukturou, ale také tím vylepšila spolupráci mezi týmy, čímž vznikly mnohem efektivnější a levnější pracovní procesy. Letecká společnost je nyní schopna provádět 200 nasazení za den, ve srovnání s jedním nasazením za měsíc v minulosti. Také není nutné přepisovat aplikace, když je třeba je přesunout.

Kroťte své nadšení

Když vykročíte na svou cestu ke kontejnerům, vezměte do úvahy širší pohled na věc a zvažte, jak budete v budoucnu kontejnery spravovat v produkci. V konečném důsledku otázkou je „Na co by se měly vaše týmy soustředit?“. Pokud odpověď zní, že by měly budovat zákaznické služby na světové úrovni a dostat je na trh rychleji než kdy dříve, pak si pamatujte, že kontejnery Kubernetes jsou mocná zbraň ve vašem arzenálu, ale samy o sobě vás nespasí.