Kontejnerizace

13. 10. 2020 Azure, IT Pro

Věděli jste, že díky kontejnerizaci dokážete zrychlit své aplikace pro vaše uživatele a zároveň zjednodušit jejich správu a distribuci? Chcete objevit svět kontejnerizace? Objevte jej v našem článku!

Obecně

Kontejnerizace označuje vylepšenou virtualizaci. Umožňuje nám jednodušší a viditelnější vydávání aplikací, s čímž právě souvisí i spolehlivost, která se razantně zvýšila. Zjednodušila se také správa těchto aplikací, z čehož může profitovat jak vývojář, tak správce IT, ale i samotný uživatel. Kontejnerizace sdílí více prostředků než standardní virtuální stroj. Tím se stává tato technologie velmi účinnou, jelikož se zde sdílí velká řada souborů, procesů operačního systému, adresářů či běžících služeb mezi kontejnery. Díky izolaci se zajistí mnohem vyšší bezpečnost a vyšší efektivita při nasazení aplikace.

Výhody kontejnerizace

Vysvětlení kontejnerů

Jedná se o technologii pro umístění a spouštění aplikací systému Windows, Linux a dalších v různých prostředích, on-premise i v cloudu.
Kontejner obsahuje sdílený operační systém s kontrolovanými zdroji. To znamená, že kontejner je vlastně oddělený prostor, kde běžící aplikace nemůže zasahovat do zbytku běžícího systému a běžící systém nemůže ovlivňovat aplikaci. Má vlastní síťově prostředí, jeho aplikace nevidí souborový systém ostatních a nemůže neomezeně využívat procesor a operační paměť. Aplikace také nevidí procesy aplikací ostatních kontejnerů.

Interní logika

Kontejner

Diagram kontejneru | docs.microsoft.com

Kontejnery staví na jádru hostitelského operačního systému a obsahují pouze aplikace, některá lehká rozhraní API a služby operačního systému, které běží v uživatelském režimu.

Virtuální stroj

Diagram virtuálního stroje | docs.microsoft.com

Na rozdíl od kontejnerů provozují VM kompletní operační systém – včetně vlastního jádra.

Vysvětlení Docker API

Docker je open-source projekt, který vznikl v roce 2013. Docker je úschovna, ve které jsou uchovávany a doručovány obrazy kontejnerů. Umí automatizovat vydávání aplikací (jako portable), kontejnerů, které fungují v cloudu. Docker spravuje kontejnery na všech vrstvách cloudu.

Využití v Azure

Hyper-V – kombinace virtuálního stroje a kontejnerů
Azure Kubernetes Service (AKS) – škálování a orchestrace linuxových kontejnerů pomocí Kubernetes
Azure App Service – nasazení webových aplikací nebo rozhraní API s využitím kontejnerů Linuxu v prostředí PaaS
Azure Container Instances – elastické rozšiřování z clusteru
Azure Batch – spouštění opakujících se výpočetních úloh pomocí kontejnerů
Azure Service Fabric – migrace aplikací .NET metodou „lift and shift“ a jejich modernizace na mikroslužby s využitím kontejnerů Windows Serveru
Azure Container Registry – uložení a správa imagí kontejnerů napříč všemi typy nasazení Azure

Využití mimo Azure

Technologie Hyper-V je také implementována do Windows Server 2016 a novějších, ale také do Windows 10, společně s Docker API.

Příklad nasazení u vývojáře

Vývojář může pomocí kontejnerů tvořit aplikace v jakémkoliv programovacím jazyce a provozovat je kdekoliv – na notebooku, desktopu, serveru v privátním či veřejném cloudu bez nutnosti měnit kód. Kontejnery tak vývojářům usnadňují a zrychlují vytváření a distribuci kvalitních aplikací.

Příklad nasazení u správce IT

Správce IT má možnost vytvořit krásné, standardizované prostředí, které bude moci velmi jednoduše udržovat v chodu (spravovat, aktualizovat). Správce se tak už nemusí starat o komplexní instalační nebo konfigurační kroky.

Naše budoucnost

Technologie, která zajišťuje lepší přehlednost, jednodušší deployment aplikací, spolehlivost a především efektivnější správu aplikací (rychlost, stabilita, optimalizace), což se promítne ve všech sférách – až do té, která zajistí spokojenější uživatele.

Doporučené studijní materiály

https://docs.microsoft.com/cs-cz/virtualization/windowscontainers/about/ – Naleznete zde detailní popis kontejnerů
https://azure.microsoft.com/cs-cz/product-categories/containers/ – Naleznete zde seznam služeb a jejich účel, všechny služby lze využít s kontejnery