Containerizarea

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 ).

Implementări

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]

Note

  1. În Solaris
  2. Containerele Solaris 10 au o rețea izolată în care containerului îi este atribuită o anumită NIC („IP exclusiv”). Rețeaua nu este izolată, ci virtualizată, adică fiecare mediu virtual are propria sa adresă IP, firewall și așa mai departe. Izolarea rețelei trebuie realizată la nivel hardware. OpenSolaris implementează izolarea rețelei, consultați OpenSolaris Network Virtualization and Resource Control and Archived (downlink) . Consultat la 1 iunie 2010. Arhivat din original la 1 iunie 2008.   .
  3. Migrare la rece implementată.
  4. Rețeaua este izolată.
  5. Disponibil în nucleul 2.6.18-028stable021.
  6. 1 2 Rețeaua nu este izolată, ci virtualizată, adică fiecare mediu virtual are propria sa adresă IP, firewall și așa mai departe. Izolarea rețelei nu este acceptată și trebuie implementată în hardware.
  7. Din versiunea 4.0, ianuarie 2008.
  8. Din TL 02. Vezi [1] Arhivat la 1 martie 2012 la Wayback Machine .
  9. Vezi [2] Arhivat 8 iulie 2017 la Wayback Machine

Link -uri