Obsah

Container (Kontejnerizace)

Kontejner je lehká, samostatná a spustitelná balíková jednotka softwaru. Na rozdíl od tradiční virtualizace kontejnery nesimulují celý hardware, ale sdílejí jádro (kernel) hostitelského operačního systému. To z nich dělá extrémně efektivní nástroj pro moderní vývoj softwaru a architekturu mikroslužeb.


Jak kontejner funguje?

Kontejnerizace využívá funkce Linuxového jádra (jako jsou namespaces a cgroups) k izolaci procesů.


Hlavní výhody kontejnerů


Srovnání: Kontejnery vs. Virtuální stroje (VM)

Vlastnost Kontejnery Virtuální stroje (VM)
Operační systém Sdílejí jádro hostitele. Každý má vlastní plnohodnotný OS (Guest OS).
Velikost MB (velmi lehké). GB (těžké).
Rychlost startu Sekundy / Milisekundy. Minuty.
Izolace Na úrovni procesů (vysoká). Na úrovni hardwaru (velmi vysoká).

Ekosystém a nástroje

1. Docker

Nejpopulárnější nástroj pro tvorbu a správu kontejnerů. Definice kontejneru se provádí pomocí textového souboru Dockerfile, ze kterého se sestaví „Image“ (obraz).

2. Kubernetes (K8s)

Nástroj pro tzv. orchestraci. Když máte tisíce kontejnerů, potřebujete systém, který je bude automaticky spouštět, restartovat při chybě a rozdělovat mezi ně zátěž.


Praktické využití


Související pojmy: Docker, Kubernetes, Virtualizace, Cloud Computing, Mikroslužby, Linux Kernel.