GNU/Linux >> Znalost Linux >  >> Linux

Odlehčené izolované linuxové prostředí

Chroot je nejlehčí prostředí, které by vám mohlo vyhovovat. Umožňuje vám nainstalovat jinou distribuci (nebo jinou instalaci stejné distribuce) se stejnými uživateli, se stejnou konfigurací sítě atd. Chroot poskytuje pouze určitou hrubou izolaci na úrovni souborového systému. Pokud si stále nejste jisti, co chroot umí a co ne, může vám pomoci procházení tohoto webu pro chroot.

Pokud hledáte další krok nahoru, LXC je nyní součástí hlavní řady jádra. LXC host (nazývaný kontejner) má svůj vlastní souborový systém, proces a síťový prostor. Root v kontejneru je také root na hostiteli; LXC chrání před mnoha náhodnými akcemi kořenového adresáře hosta, ale ne před škodlivým kořenem hosta (toto je plánovaná funkce, sledujte tento prostor).

Další technologie, které jsou trochu podobné LXC, jsou VServer a OpenVZ. Důležitou funkcí, kterou OpenVZ poskytuje, ale ne VServer nebo LXC, jsou kontrolní body:můžete pořídit snímek běžícího stroje a později jej obnovit. Dalším kandidátem je Linux v uživatelském režimu, který provozuje kompletní linuxový systém v procesu, který běží jako běžný uživatel v hostiteli.

Pro účely experimentování s jinou instalací OS je chroot v pořádku. Pokud chcete spouštět služby v experimentální instalaci nebo si hrát se sítí, jděte na LXC. Pokud chcete snímky, použijte OpenVZ. Pokud chcete zcela samostatné jádro, ale s malou pamětí, použijte Linux v uživatelském režimu. Pokud chcete snímky a samostatné jádro, použijte VirtualBox.


Docker usnadňuje používání LXC:

Významné funkce

Izolace systému souborů :každý procesní kontejner běží ve zcela samostatném kořenovém souborovém systému.

Izolace zdrojů :systémové prostředky, jako je procesor a paměť, lze pomocí skupin cgroups alokovat odlišně pro každý procesní kontejner.

Izolace sítě :každý procesní kontejner běží ve svém vlastním síťovém jmenném prostoru s virtuálním rozhraním a vlastní IP adresou.

Kopírování při zápisu :kořenové souborové systémy jsou vytvářeny pomocí kopírování při zápisu, díky čemuž je nasazení extrémně rychlé, levné v paměti a levné na disku.

Protokolování :standardní proudy (stdout/stderr/stdin) každého procesního kontejneru se shromažďují a zaznamenávají pro načtení v reálném čase nebo v dávce.

Správa změn :změny v souborovém systému kontejneru lze uložit do nového obrazu a znovu použít k vytvoření dalších kontejnerů. Nevyžaduje se žádné šablonování ani ruční konfigurace.

Interaktivní shell :docker může alokovat pseudo-tty a připojit ke standardnímu vstupu libovolného kontejneru, například ke spuštění athrowaway interaktivního shellu.

Pod pokličkou

Pod kapotou je Docker postaven na následujících komponentách:

  • Možnosti cgroup a jmenného prostoru linuxového jádra

  • AUFS, výkonný sjednocovací souborový systém s možností kopírování při zápisu

  • Programovací jazyk Go

  • lxc, sada praktických skriptů pro zjednodušení vytváření linuxových kontejnerů.


Podívejte se na OpenVZ nebo Linux Containers, které oba implementují odlehčené pseudovirtualizované prostředí s jedinečnými uživatelskými plochami na společném jádře.

OpenVZ je v této fázi vyspělejší.


Linux
  1. Mých 5 oblíbených obrázků kontejneru Linuxu

  2. C# v prostředí linuxu

  3. Nastavení proměnných prostředí Linuxu

  1. Sestavte si svůj vlastní kontejner na Linuxu

  2. Historie nízkoúrovňových runtime kontejnerů Linuxu

  3. Nastavte Linux Container s LXC na Ubuntu 16.04

  1. Linux – Lxc; Nasazení obrázků pomocí nejmenšího možného X11?

  2. Jak vytvořit a spustit kontejnery LXC Linux pomocí příkazů LXC

  3. Může docker běžet uvnitř linuxového kontejneru?