Containerizarea ( virtualizare la nivel de sistem de operare , virtualizare container , virtualizare zone [1] ) este o metodă de virtualizare în care nucleul sistemului de operare menține mai multe instanțe izolate în spațiul utilizatorului în loc de una. Aceste instanțe (denumite în mod obișnuit containere sau zone ) sunt identice în ceea ce privește procesele care rulează în ele cu o singură instanță a sistemului de operare. Pentru sistemele bazate pe Unix , această tehnologie este similară cu o implementare îmbunătățită a mecanismului chroot . Nucleul asigură izolarea completă a containerelor, astfel încât programele din containere diferite nu se pot afecta reciproc.
Spre deosebire de virtualizarea hardware , care emulează un mediu hardware și poate rula o gamă largă de sisteme de operare invitați , un container poate rula doar o instanță de sistem de operare cu același nucleu ca și sistemul de operare gazdă (toate containerele gazdă au un nucleu comun). În același timp, în timpul containerizării, nu există costuri suplimentare de resurse pentru emularea hardware-ului virtual și lansarea unei instanțe cu drepturi depline a sistemului de operare, care sunt tipice pentru virtualizarea hardware.
Există implementări axate pe crearea de instanțe aproape complete de sisteme de operare ( Containers Solaris , containere Virtuozzo , OpenVZ ) și opțiuni care se concentrează pe izolarea serviciilor individuale cu un mediu de operare minim ( închisoare , Docker ).
Mecanism | Sistem de operare | Licență | Data de lansare | Particularități | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Izolarea sistemului de fișiere | Cote de spațiu de stocare | Limite I/O | Limitele memoriei | Cote CPU | Izolarea rețelei | Migrație în direct | ||||
chroot | integrat în majoritatea sistemelor de operare asemănătoare Unix | în funcție de licența sistemului de operare | 1982 | Parţial | Nu | Nu | Nu | Nu | Nu | Nu |
Docher | Linux , FreeBSD , Windows , macOS | Apache 2.0 | 2013 | da | da | da | da | da | da | Nu |
Containere Solaris | Solaris , OpenSolaris | CDDL | 01/2005 | da | da | Nu | da | da | Da [2] | Nu [3] |
freevps | linux | GNU GPL | - | da | da | Nu | da | da | da | Nu |
Conturi virtuale iCore | Windows XP | proprietate | 06/2008 | da | da | Nu | Nu | Nu | da | Nu |
Linux-VServer |
linux | GNU GPL v.2 | - | da | da | da | da | da | Da [4] | Nu |
LXC |
linux | GNU GPL v.2 | 2008 | da | Nu | da | da | da | da | Nu |
OpenVZ | linux | GNU GPL v.2 | 2005 | da | da | Da [5] | da | da | Da [6] | da |
Containere Virtuozzo | Linux , Microsoft Windows | proprietate | - | da | da | Da [7] | da | da | Da [6] | da |
Închisoare FreeBSD | FreeBSD | BSD | 03/2000 | da | da | Nu | da | Parţial | da | Nu |
sysjail | OpenBSD , NetBSD | BSD | - | da | Nu | Nu | Nu | Nu | da | Nu |
WPAR | AIX | proprietate | 10/2007 | da | da | da | da | da | Da [8] | Da [9] |