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
- Škálovatelnost a orchestrace aplikací – umožňuje dynamickou rozšiřitelnost a snazší orchestraci jednotlivých aplikací.
- Bezpečnost – díky izolaci jednotlivých vrstev se eliminovalo riziko napadení částí, které nejsou součástí napadeného celku.
- Efektivita – zefektivnění práce vývojářů i IT Pro.
- Jednoduchost – po kontejnerizaci jsou jednotlivé aplikace v kontejnerech přehlednější a snadněji spravované.
- Aktualizace – jednodušší aktualizace.
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
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
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