GNU/Linux >> Linux Esercitazione >  >> Linux

Ambiente Linux isolato leggero

Chroot è l'ambiente più leggero che potrebbe adattarsi a te. Ti consente di installare un'altra distribuzione (o un'altra installazione della stessa distribuzione), con gli stessi utenti, con la stessa configurazione di rete, ecc. Chroot fornisce solo un isolamento grezzo a livello di filesystem. Navigare in questo sito per chroot potrebbe essere d'aiuto, se non sei ancora sicuro di cosa può e non può fare chroot.

Se stai cercando il passo successivo, LXC è ora incluso nella linea principale del kernel. Un guest LXC (chiamato contenitore) ha il proprio file system, processo e spazio di rete. Root nel contenitore è anche root nell'host; LXC protegge da molte azioni accidentali da parte di una root guest ma non da una root guest dannosa (questa è una funzionalità pianificata, guarda questo spazio).

Altre tecnologie in qualche modo simili a LXC sono VServer e OpenVZ. Una caratteristica importante fornita da OpenVZ ma non da VServer o LXC sono i checkpoint:è possibile acquisire un'istantanea di una macchina in esecuzione e ripristinarla in un secondo momento. Ancora un altro candidato è Linux in modalità utente, che esegue un sistema Linux completo all'interno di un processo che viene eseguito come un normale utente nell'host.

Ai fini della sperimentazione con un'altra installazione del sistema operativo, chroot va bene. Se vuoi eseguire servizi nell'installazione sperimentale o giocare con il networking, scegli LXC. Se vuoi istantanee, usa OpenVZ. Se vuoi un kernel completamente separato ma poco sovraccarico di memoria, usa User-mode Linux. Se vuoi istantanee e un kernel separato, usa VirtualBox.


Docker rende LXC più facile da usare:

Caratteristiche degne di nota

Isolamento del file system :ogni contenitore di processo viene eseguito in un filesystem root completamente separato.

Isolamento delle risorse :risorse di sistema come cpu e memoria possono essere allocate in modo diverso a ciascun contenitore di processo, utilizzando i cgroup.

Isolamento della rete :ogni contenitore di processo viene eseguito nel proprio spazio dei nomi di rete, con un'interfaccia virtuale e un proprio indirizzo IP.

Copia su scrittura :i filesystem di root vengono creati utilizzando il copy-on-write, il che rende il deployment estremamente veloce, a basso costo di memoria e disco.

Registrazione :i flussi standard (stdout/stderr/stdin) di ciascun contenitore di processo vengono raccolti e registrati per il recupero in tempo reale o in batch.

Gestione dei cambiamenti :le modifiche al filesystem di un contenitore possono essere salvate in una nuova immagine e riutilizzate per creare più contenitori. Nessun modello o configurazione manuale richiesta.

Guscio interattivo :la finestra mobile può allocare uno pseudo-tty e collegarlo all'input standard di qualsiasi contenitore, ad esempio per eseguire una shell interattiva usa e getta.

Sotto il cofano

Sotto il cofano, Docker si basa sui seguenti componenti:

  • Le capacità di cgroup e namespace del kernel Linux

  • AUFS, un potente filesystem di unione con capacità di copia su scrittura

  • Il linguaggio di programmazione Go

  • lxc, un insieme di comodi script per semplificare la creazione di contenitori linux.


Dai un'occhiata a OpenVZ o Linux Containers, che implementano entrambi un ambiente pseudo-virtualizzato leggero con userland univoche su un kernel comune.

OpenVZ è più maturo in questa fase.


Linux
  1. Costruisci il tuo container su Linux

  2. Una cronologia dei runtime di container Linux di basso livello

  3. Le mie 5 immagini di container Linux preferite

  4. La finestra mobile può essere eseguita all'interno di un contenitore Linux?

  5. accessibilità delle variabili d'ambiente in Linux

Pekwm:un desktop Linux leggero

Scopri Endless OS, una distribuzione Linux leggera

Configura il contenitore Linux con LXC su CentOS 7 / RHEL 7

Introduzione alla gestione dei container Linux

5 Ambienti desktop Linux leggeri

Variabili d'ambiente Linux