Il concetto di containerizzazione non è nuovo, tuttavia, i metodi per implementarlo e gestirlo potrebbero esserlo in una certa misura. Conosciamo già una popolare piattaforma di virtualizzazione dei container chiamata Docker. Tuttavia, lo sai? Possiamo convertire il nostro server Ubuntu nativo o i sistemi operativi desktop per eseguire contenitori con l'aiuto della tecnologia LXC (Linux Container).
Linux -vServer e OpenVZ sono ottimi esempi di sistemi operativi di virtualizzazione containerizzati Linux indipendenti che eseguono LXC. A differenza di VirtualBox o Qemu, i contenitori sono isolati e non eseguono alcun tipo di emulazione hardware poiché funzionano direttamente sullo stesso core o kernel del sistema operativo host, quindi una perdita di prestazioni molto ridotta e anche un peso leggero.
Ora, perché abbiamo configurato LXC su distribuzioni Linux di tipo Ubuntu, Debian, RedHat, beh semplice, tutti noi non abbiamo bisogno di piattaforme dedicate come OpenVZ LXC se sei uno sviluppatore o uno studente che sta imparando Linux, lui o lei vuole anche accedere ad altre applicazioni, quindi, piuttosto che installare una piattaforma di virtualizzazione bare metal dedicata, possiamo usare Docker o LXC (Docker è consigliato per i nuovi utenti). Inoltre, possiamo anche gestire il contenitore LXC utilizzando l'interfaccia libvirt o strumenti di gestione come Virt-Manager. Ma rispetto a Docker, i modelli LXC precompilati o le immagini del sistema operativo sono limitati, mentreha una vasta gamma di opzioni.
Vediamo come installare LXC su Ubuntu per eseguire diverse macchine virtuali in forma container.
Passaggio per installare LXC su Ubuntu
Qui utilizziamo Ubuntu 18.04, tuttavia, i passaggi saranno gli stessi per Ubuntu 19.10, 19,04,18.10,17.04, 16.04... o Linux Mint.
Passaggio 1:Apri il terminale di comando, puoi utilizzare i tasti di scelta rapida CTRL+Alt+T o semplicemente accedere alle applicazioni e cercare Terminale.
Passaggio 2:Aggiorna il sistema, in modo che tutti i pacchetti installati possano raggiungere il loro stato più recente.
sudo apt update
Passaggio 3:LXC è disponibile per impostazione predefinita nel repository ufficiale di Ubuntu, quindi non è necessario installare materiale di terze parti. Inoltre, se hai installato SNAP sul tuo sistema, puoi utilizzare anche quello. Entrambi i comandi sono riportati di seguito.
sudo apt install lxc
O
sudo snap install lxc
Nota: Il comando SNAP funzionerà per CentOS, Debian, Redhat e su qualsiasi altro Linux che supporti il repository SNAPD. Ecco il tutorial per.
Passaggio 4:Per testare l'LXC, eseguire il seguente comando di controllo della configurazione:
sudo lxc-checkconfig
Passaggio 5:Ora vediamo se la rete bridge dell'LXC funziona o meno. Per questo, il comando è
sudo ifconfig lxcbr0
Se ricevi un errore:lxcbr0: errore durante il recupero delle informazioni sull'interfaccia: dispositivo non trovato,quindi abilitarlo.
Per abilitare il tipo di rete bridge:
sudo nano /etc/default/lxc
Sostituisci valorefalsoconVERO, dato davanti a "USE_LXC_BRIDGE=”
Dopodiché premiCTRL+Xe poi digitareYe ilEntrapulsante per salvare il file.
Passaggio 6:Riavviare il servizio LXC-net: per questo utilizzare systemctl, il comando di gestione del sistema e dei servizi insieme a lxc-net. Sarà così:
sudo systemctl restart lxc-net
sudo systemctl status lxc-net
L'output dello stato di LXC-net sarebbe simile a quello mostrato nello screenshot seguente.
Ora controlliamo i dettagli dell'interfaccia di rete collegata e utilizzata per LXC:
ifconfig lxcbr0
Nello screenshot sopra, puoi vedere che finalmente abbiamo ottenuto l'indirizzo IP per i nostri contenitori LXC-Linux di installazione di Ubuntu.
Passaggio 7: Crea un contenitore LXC:Tutto è pronto, è ora di installare alcuni modelli LXC, che sono fondamentalmente uno script per recuperare e installare le immagini del sistema operativo disponibili sul sito Web ufficiale LXC come CentOS, Ubuntu, Alpine e altro.
Per poter creare un contenitore LXC per un ambiente di destinazione specifico (come Debian a 64 bit), è necessario un modello LXC corrispondente. Fortunatamente, lo strumento userspace LXC su Ubuntu viene fornito con una serie di modelli LXC pre-preparati. Puoi trovare i modelli LXC disponibili nella directory /usr/share/lxc/templates.
ls /usr/share/lxc/templates/
Quindi, come accennato in precedenza, il modello LXC è in realtà uno script utilizzato per creare contenitori per un particolare ambiente Linux. È necessario utilizzare uno di questi modelli durante la creazione di un contenitore LXC. Pertanto, qui stiamo installando Ubuntu e Fedora, tuttavia, se utilizzi uno qualsiasi dei modelli LXC disponibili, il comando per l'installazione sarà lo stesso, l'unico nome o valore per il modello dovrà essere modificato.
Per Ubuntu:
lxc-create -n new -t ubuntu
Nota:nuovoè il nome che abbiamo dato al nostro contenitore Ubuntu LXC appena creato in modo da poterlo ricordare facilmente. Puoi dare quello che vuoi.
Per installare l'ultima versione del modello Fedora 31 su LXC (contenitore Linux):
lxc-create -n fedlatest -t download -- -d fedora -r 31 -a amd64
Nel comando precedente fedlatest è il nome del nostro contenitore.
Vedi tutti i contenitori creati:
lxc-ls
Per utilizzarne uno qualsiasi, utilizzeremo il comando indicato di seguito insieme al nome del contenitore LXC creato.
lxc-inizio -nnome del contenitore-D
Sostituisci ilnome del contenitoretesto con il nome che hai dato al tuo contenitore. Ad esempio, abbiamo creato il contenitore Fedora sopra con il nome -fedlatest, quindi il comando sarà:
lxc-start -n fedlatest -d
Per ottenere la console del contenitore Linux avviato, utilizzare questo comando insieme al nome del contenitore.
lxc-console -n fedlatest
Per modificare o impostare la password di root:
lxc-attach -n fedlatest passwd
Per arrestare la console:
lxc-stop -nnome-contenitore
Esempio:
lxc-stop-n fedlatest -d
Per accedere a LXC utilizzando l'interfaccia utente grafica, installare il pannello web LXC:
wget https://lxc-webpanel.github.io/tools/install.sh -O - | bash
Una volta installato, nel tuo browser digita l'URL https://your-server-ip:5000.
Accedi utilizzando nome utente: admin e password: admin










