Rilascio del sistema di gestione dei contenitori LXC 5.0

Canonical ha pubblicato una versione del toolkit per contenitori isolati LXC 5.0, che fornisce un runtime adatto sia per l'esecuzione di contenitori con un ambiente di sistema completo, vicino alle macchine virtuali, sia per l'esecuzione di contenitori di applicazioni individuali (OCI) senza privilegi. LXC è un toolkit di basso livello che opera a livello di singoli contenitori. Per la gestione centralizzata dei container distribuiti in un cluster di più server, il sistema LXD viene sviluppato sulla base di LXC. Il ramo LXC 5.0 è classificato come una versione con supporto a lungo termine, i cui aggiornamenti vengono generati in un periodo di 5 anni. Il codice LXC è scritto in C ed è concesso in licenza sotto GPLv2.

LXC include la libreria liblxc, una serie di utilità (lxc-create, lxc-start, lxc-stop, lxc-ls, ecc.), modelli per la creazione di contenitori e una serie di collegamenti per vari linguaggi di programmazione. L'isolamento viene effettuato utilizzando i meccanismi standard del kernel Linux. Per isolare i processi, lo stack di rete ipc, uts, ID utente e punti di montaggio, viene utilizzato il meccanismo dei namespace. i cgroup vengono utilizzati per limitare le risorse. Per ridurre i privilegi e limitare l'accesso, vengono utilizzate funzionalità del kernel come profili Apparmor e SELinux, policy Seccomp, Chroots (pivot_root) e funzionalità.

Principali modifiche:

  • Siamo passati dagli autotools al sistema di build Meson, che viene utilizzato anche per creare progetti come X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME e GTK.
  • Aggiunte nuove opzioni per la configurazione di cgroup - lxc.cgroup.dir.container, lxc.cgroup.dir.monitor, lxc.cgroup.dir.monitor.pivot e lxc.cgroup.dir.container.inner, che consentono di definire esplicitamente cgroup percorsi per contenitori, processi di monitoraggio e gerarchie di cgroup nidificate.
  • Aggiunto il supporto per gli spazi dei nomi temporali per associare uno stato separato dell'orologio di sistema al contenitore, consentendo di utilizzare il proprio tempo nel contenitore, diverso da quello del sistema. Per la configurazione vengono proposte le opzioni lxc.time.offset.boot e lxc.time.offset.monotonic che permettono di determinare l'offset del contenitore rispetto all'orologio principale del sistema.
  • Il supporto VLAN è implementato per gli adattatori Ethernet virtuali (Veth). Sono offerte opzioni per la gestione della VLAN: veth.vlan.id per impostare la VLAN principale e veth.vlan.tagged.id per associare ulteriori VLAN contrassegnate.
  • Per gli adattatori Ethernet virtuali, è stata aggiunta la possibilità di configurare la dimensione delle code di ricezione e trasmissione utilizzando le nuove opzioni veth.n_rxqueues e veth.n_txqueues.

Fonte: opennet.ru

Aggiungi un commento