Izdavanje alata za upravljanje kontejnerima LXC i LXD 4.0

Canonical Company objavljeno oslobađanje alata za organiziranje rada izoliranih kontejnera LXC 4.0, upravitelj kontejnera LXD 4.0 i virtuelni FS LXCFS 4.0 za simulaciju u /proc, /sys kontejnerima i virtueliziranu cgroupfs reprezentaciju za distribucije bez podrške za prostore imena cgroup. Grana 4.0 je klasifikovana kao izdanje za dugoročnu podršku, za koje se ažuriranja generišu u periodu od 5 godina

LXC je runtime za pokretanje i sistemskih i OCI kontejnera. LXC uključuje biblioteku liblxc, skup uslužnih programa (lxc-create, lxc-start, lxc-stop, lxc-ls, itd.), šablone za pravljenje kontejnera i skup veza za različite programske jezike. Izolacija se vrši korištenjem standardnih mehanizama Linux kernela. Da bi se izolovali procesi, ipc mrežni stog, uts, korisnički ID-ovi i tačke montiranja, koristi se mehanizam imenskih prostora. cgroups se koriste za ograničavanje resursa. Da bi se smanjile privilegije i ograničio pristup, koriste se karakteristike kernela kao što su Apparmor i SELinux profili, Seccomp politike, Chroots (pivot_root) i mogućnosti. Kod LXC napisao na C jeziku i distribuira se pod GPLv2 licencom.

LXD je dodatak za LXC, CRIU i QEMU koji se koristi za centralno upravljanje kontejnerima i virtuelnim mašinama na jednom ili više servera. Ako je LXC alat niskog nivoa za manipulaciju na nivou pojedinačnih kontejnera, onda se LXD implementira kao pozadinski proces koji prihvata zahteve preko mreže preko REST API-ja i omogućava vam da kreirate skalabilne konfiguracije postavljene na klaster od nekoliko servera.
Podržani su različiti backendovi za skladištenje (stablo direktorija, ZFS, Btrfs, LVM), snimci sa stanjem, živa migracija pokrenutih kontejnera sa jedne mašine na drugu i alati za organizovanje skladištenja slika. Kod LXD napisao u Go i distribuira se pod licencom Apache 2.0.

Ključ poboljšanja u LXC 4.0:

  • Drajver je potpuno prepisan za rad sa cgroup-om. Dodata podrška za jedinstvenu hijerarhiju cgroup (cgroup2). Dodata funkcionalnost kontrolera zamrzivača, s kojom možete zaustaviti rad u cgroup-u i privremeno osloboditi neke resurse (CPU, I/O, a potencijalno čak i memoriju) za obavljanje drugih zadataka;
  • Implementirana infrastruktura za presretanje sistemskih poziva;
  • Dodata podrška za podsistem "pidfd" kernela, dizajniran za rješavanje situacije ponovnog korištenja PID-a (pidfd je povezan sa određenim procesom i ne mijenja se, dok se PID može povezati s drugim procesom nakon što se trenutni proces povezan s tim PID-om okonča) ;
  • Poboljšano kreiranje i brisanje mrežnih uređaja, kao i njihovo kretanje između imenskih prostora mrežnog podsistema;
  • Implementirana je mogućnost premještanja bežičnih mrežnih uređaja (nl80211) u kontejnere.

Ključ poboljšanja u LXD 4.0:

  • Dodata podrška za pokretanje ne samo kontejnera, već i virtuelnih mašina;
  • Za segmentiranje LXD servera, predložen je koncept projekta koji pojednostavljuje upravljanje grupama kontejnera i virtuelnih mašina. Svaki projekat može uključivati ​​vlastiti skup kontejnera, virtuelnih mašina, slika, profila i particija za skladištenje. U vezi s projektima, možete postaviti vlastita ograničenja i promijeniti postavke;
  • Dodata podrška za presretanje sistemskih poziva za kontejnere;
  • Implementirano kreiranje rezervnih kopija okruženja i restauracija iz njih;
  • Automatsko kreiranje snimaka okruženja i particija za skladištenje je obezbeđeno sa mogućnošću podešavanja životnog veka snimka;
  • Dodan API za praćenje statusa mreže (lxc mrežne informacije);
  • Dodata podrška shiftfs, virtuelni FS za mapiranje tačaka montiranja na korisničke prostore imena;
  • Predloženi su novi tipovi mrežnih adaptera “ipvlan” i “routed”;
  • Dodan backend za korištenje memorije zasnovane na CephFS;
  • Implementirana je podrška za replikaciju slike i multi-arhitekturne konfiguracije za klastere;
  • Dodata kontrola pristupa zasnovana na ulogama (RBAC);
  • Dodata podrška za CGroup2;
  • Dodata mogućnost konfigurisanja MAC adrese i određivanja izvorne adrese za NAT;
  • Dodat API za upravljanje DHCP vezama (zakupima);
  • Dodata podrška za Nftables.

izvor: opennet.ru

Dodajte komentar