Impariamo i passaggi e i comandi per installare LXD/LXC su AlmaLinux o Rocky per iniziare a creare contenitori utilizzando la riga di comando LXC o l'interfaccia utente grafica.
LXD, il "Linux Container Daemon", è uno strumento di gestione per i container del sistema operativo Linux creati utilizzando LXC. LXC è una tecnologia di virtualizzazione basata su container a livello di sistema operativo. Entrambi sono stati sviluppati da Canonical, la società dietro Ubuntu Linux.
Per capire LXD, prima di tutto sappiamo cos'è esattamente l'LXC?
LXC è una forma abbreviata o acronimo che sta per "contenitori Linux". Significava virtualizzare le applicazioni a livello di sistema operativo all'interno del kernel Linux. Tecnicamente, LXC combina spazi dei nomi isolati e i "cgroup" del kernel Linux per implementare ambienti isolati per l'esecuzione del codice. Storicamente, LXC è stata anche la base per la diffusa tecnologia di virtualizzazione Docker. Non è come le tradizionali piattaforme di virtualizzazione come Hyper-V, Vmware e KVM, invece, oltre a virtualizzare il sistema operativo completo all'interno di container, consente anche di eseguire singoli software o applicazioni in ambienti virtuali.
Considerando che, per semplificare l'amministrazione dei contenitori LXC, gli sviluppatori hanno creato LXD, un'estensione di LXC. Con l'aiuto di LXD, i container possono essere configurati e controllati utilizzando insiemi di comandi per-definiti. Usa libxlc
per collegare la libreria del software LXC. È scritto nelle lingue GO e crea un demone di sistema a cui le app possono accedere localmente utilizzando un socket Unix o tramite la rete tramite HTTPS. Pertanto, è utile per automatizzare la gestione dei container di massa e viene utilizzato nel cloud computing e nei data center.
Passaggi per installare LXD/LXC su AlmaLinux o Rocky 8
Questo tutorial è applicabile anche per Fedora, CentOS 7/8 e RHEL 8.x.
1. Aggiungi repository EPEL
Che si tratti di installare LXC o LXD, per entrambi è necessario disporre di EPEL sul nostro sistema operativo Linux basato su RPM anche per CentOS o RHEL 8. Pertanto, utilizzare il comando fornito e prima abilitare i pacchetti extra per il repository Enterprise Linux.
sudo dnf install epel-release
2. Sistema di aggiornamento
Per aggiornare i pacchetti installati dal sistema in modo che possano raggiungere lo stato più recente, eseguire il comando di aggiornamento del sistema. Questo aggiornerà anche la cache del repository.
sudo dnf update
3. Installa SNAPD su AlmaLinux
Se dobbiamo installare LXC solo su AlmaLinux o Rocky, non è necessario utilizzare SNAP perché i suoi pacchetti sono disponibili per l'installazione tramite EPEL. Tuttavia, LXD è disponibile nel repository Snapcraft, quindi dobbiamo prima installare e abilitare il demone SNAP sul nostro sistema Linux.
sudo dnf install snapd -y sudo systemctl enable --now snapd.socket sudo ln -s /var/lib/snapd/snap /snap
4. Installa LXD/LXC su AlmaLinux o Rocky 8
Ora possiamo eseguire il normale comando snap per ottenere e installare i pacchetti per LXD sul nostro sistema Linux RPM. Ecco il comando-
sudo snap install lxd
5. Riavvia il sistema
Una volta completata l'installazione, riavvia il sistema del server per integrare e applicare correttamente le modifiche apportate a causa dell'installazione di LXD.
sudo reboot
6. Aggiungi il tuo utente o gruppo LXD
Dopo che l'installazione è stata completata e hai riavviato con successo il tuo server o desktop, è ora di aggiungere il nostro utente corrente al gruppo LXD altrimenti per eseguire ogni suo comando dobbiamo usare sudo
.
sudo usermod -aG lxd $USER newgrp lxd
7. Inizializzazione
Eseguiamo la configurazione iniziale con l'ausilio delle opzioni guidate fornite dall'LXD. Corri:
lxd init
Qui per lo storage pool seleziona LVM se lo storage del tuo sistema non è nel brtfs predefinito.
Inoltre, consenti la connessione bridge di rete tramite il firewall:
sudo firewall-cmd --add-interface=lxdbr0 --zone=trusted --permanent sudo firewall-cmd --reload
8. Creiamo un contenitore
Ora abbiamo già tutto ciò di cui abbiamo bisogno per iniziare a creare contenitori utilizzando diverse immagini LXC disponibili su – images.linuxcontainers.org.
La sintassi è-
LXC launch images:distro/version/Architecture container-name
distro
– Il tipo di distribuzione che vuoi installare come Ubuntu, CentOS, Mint, Arch, Amazon Linux, ecc.version
– Versione della distribuzioneArchitecture
– Architettura CPU per distro-amd4, armhf, i386, ppc64el e altri.container-name
– Il nome che vuoi dare al tuo contenitore per gestirlo facilmente in un secondo momento.
Ad esempio, vogliamo installare ARCH e Ubuntu Containers utilizzando l'immagine disponibile per amd64 nella libreria LXC. Il comando sarà:
Per Arch Linux
LXC launch images:arch/current/amd4 myarch
Per Ubuntu Focal
LXC launch images:ubuntu/20.04/amd4 ubuntu-20
9. Per elencare tutti i contenitori
Dopo aver installato più Immagini per creare contenitori, possiamo elencarle tutte per verificare quali sono quelle disponibili nel nostro ambiente virtuale.
lxc list
10. Arresta, riavvia, elimina i contenitori LXC
Quando avviamo un container, questo verrà avviato automaticamente, tuttavia, se desideri interromperlo, riavviarlo o addirittura eliminarlo, ecco i comandi da seguire:
lxc start container-name lxc stop container-name lxc restart container-name lxc delete container-name
Esempio :Qui abbiamo installato Arch, quindi per fermarlo, il comando sarà così:
lxc stop arch
11. Accedi a Container bash
Ora, per accedere all'utente root e alla shell di qualsiasi contenitore installato, in modo che possiamo inviargli vari comandi. Ecco la strada-
lxc exec conatiner-name-- /bin/bash
Ad esempio , abbiamo installato Ubuntu 20.04, quindi per accedere al suo utente root e al suo bash- eseguiamo:
lxc exec Ubuntu-20 -- /bin/bash
12. GUI LXD per gestire i contenitori LXC
Se non vuoi usare la riga di comando, possiamo installare un'interfaccia grafica web per gestire i container LXC usando lxdmosaic
disponibile come script e in SNAP.
Dato che abbiamo già snap-on nel nostro sistema, lo utilizziamo.
sudo snap install lxdmosaic
Assegna porte all'interfaccia web di lxdmosaic
sudo snap set lxdmosaic ports.http=81 ports.https=444
Consenti porte nel firewall:
sudo firewall-cmd --zone=public --add-port=81/tcp --permanent sudo firewall-cmd --zone=public --add-port=444/tcp --permanent sudo firewall-cmd reload
Abilita l'accesso agli host LXD sulla rete e imposta una password per lo stesso.
lxc config set core.https_address [::] lxc config set core.trust_password your-password
Nota :sostituisci la tua password nel comando sopra con quello che vuoi impostare per esso.
Riavvia SNAP:
sudo systemctl restart snapd
13. Accedi all'interfaccia della GUI Web
Apri il browser di sistema in locale sul tuo AlmaLinux o Rocky, se stai usando la versione del server CLI allora qualsiasi altro computer che può accedere all'indirizzo IP del tuo Server.
Digita- https://server-ip-address:444
Se ricevi un errore SSL, fai clic su Avanzate pulsante visualizzato lì e fai clic su Continua Indirizzo IP non sicuro .
Ottieni l'interfaccia web:
- Sotto l'host- Digita l'indirizzo IP del tuo server LXD e nella password quella che hai impostato sopra nel Passaggio 11 di questo articolo.
- Crea amministratore utente per LXD Mosaic. Per impostazione predefinita, il nome utente verrà impostato su admin (puoi cambiarlo), devi solo impostare una password per la stessa che hai scelto.
- Dopodiché, fai clic su Avvia LXC Mosiac pulsante verde in alto a destra.
Inserisci il nome utente e password che hai creato sopra e Accedi .
Infine, hai l'interfaccia utente grafica per gestire tutti i tuoi container LXC in esecuzione su AlmaLinux o Rocky Linux 8.
Pensieri conclusivi:
Quindi, questo è stato un breve tutorial sull'installazione, la creazione e l'eliminazione di container LXD/LXC su AlmaLinux o Rocky Linux incluso CentOS/RHEL 8. Inoltre, per gestire facilmente le cose, possiamo utilizzare l'interfaccia utente grafica di Mosiac. In caso di problemi, facci sapere che la sezione commenti è tutta tua...