En el següent article anem a fer una ullada als contenidors LXD. Sobre ells ja va parlar en aquest bloc un company fa algun temps. en aquell article ja deixava clar que aquests contenidors són útils per diferents raons. Aïllen aplicacions de la resta de sistema, són portàtils, fàcils de clonar i / o moure a altres sistemes operatius. En el cas de GNU / Linux, funcionen de la mateixa manera en qualsevol distribució, Sense necessitat d'adaptacions.
estibador és una solució popular dissenyada per contenir una sola aplicació com podria ser un servidor de bases de dades MySQL. LXD és similar en alguns aspectes, però està dissenyat per contenir un sistema operatiu complet. LXD no va a virtualitzar maquinari com QEMU o VirtualBox. Això vol dir que és molt ràpid i ofereix una velocitat d'execució gairebé nativa.
Com a exemple d'ús, podríem crear un contenidor LXD, instal·lar un servidor de bases de dades i un servidor http. Aquí tindrem la possibilitat de crear un lloc web amb WordPress i arribat el cas podem canviar de núvol a núvol simplement movent aquest contenidor LXD on sigui necessari. Com resulta senzill clonar un contenidor, fins i tot es podria carregar el teu lloc web a múltiples proveïdors del núvol per crear una configuració redundant i d'alta disponibilitat.
Instal·lar i configurar LXD
Per instal·lar LXD només cal obrir una terminal (Ctrl + Alt + T) i instal·lar. A més també podem instal·lar les utilitats ZFS. Aquestes ens ajudaran a accelerar algunes operacions i estalviar espai en el disc quan treballem amb contenidors.
sudo apt install zfsutils-linux lxd
Per a la iniciar la configuració de LXD, A la mateixa terminal escrivim:
sudo lxd init
Aquí podem prémer Retorn per seleccionar els valors per defecte.
Busca i inicia una imatge de distribució LXD
Per a la veure un llistat de les imatges d'Ubuntu, A la terminal escrivim:
lxc image list ubuntu: arch=amd64|head
Es pot ometre fitxers = amd64 si necessites imatges per a altres arquitectures. A la imatge anterior, els resultats s'han limitat (amb | head) Perquè sigui més fàcil de llegir.
Com es va poder veure a la captura anterior, l'empremta digital d'Ubuntu 18.04 (dcbc8e3e5c2e) La vaig deixar ressaltada. Si t'interessa iniciar un contenidor amb aquesta distribució caldria utilitzar aquesta empremta. La comanda a executar seria:
lxc launch ubuntu:dcbc8e3e5c2e
Gestionar contenidors LXD
Per a la llistar tots els contenidors creats, Només cal escriure:
lxc list
La columna 'IPV4'És especialment important si té algun servei en execució en aquesta instància. Per exemple, si s'estigués executant un servidor http Apache, a l'escriure la IP "10.191.112.88"En el navegador es mostraria el lloc web allotjat en el contenidor.
Per a la aturar un contenidor, Només cal escriure:
lxc stop nombre-contenedor
Això pot portar molt de temps, o fallar amb distribucions que no siguin d'Ubuntu. Si això passa, sempre pots utilitzar apagat systemctl per aturar-lo.
Si tota la resta falla, pots forçar la parada amb:
lxc stop nombre-contenedor --force
Per a la començar amb un contenidor caldria escriure:
lxc start nombre-contenedor
Si vols moure't dins de l'contenidor, Executa:
lxc shell nombre-contenedor
Dins el contenidor es pot instal·lar programes amb 'suo apt install'I fer qualsevol altra cosa que faries en una distribució de GNU / Linux normal, Per exemple, configurar un servidor Apache.
quan vulguis sortir de l'contenidor, Simplement escriu:
exit
Transferir arxius a / des de Contenidors LXD
Per a la carregar un arxiu al teu contenidor, Utilitza la següent sintaxi:
lxc file push /ruta/al/archivo/local/nombre-archivo nombre-contenedor/ruta/al/archivo/subido/nombre-archivo
Inclou el nom de l'arxiu que es crearà, no només directori on vols deixar-ho.
Per a la carregar un directori en lloc d'un arxiu:
lxc file push /ruta/al/directorio nombre-contenedor/ruta/al/directorio/remoto --recursive --verbose
Per a la descarregar un directori des del contenidor al teu sistema operatiu major:
lxc file pull nombre-contenedor/ruta/al/directorio/remoto ruta/al/directorio --recursive --verbose
Això cobreix el ús bàsic dels contenidors LXD. Hi ha funcions més avançades, com instantànies, límits als recursos com CPU i RAM, contenidors de clonació, etc. Tot això i més es pot consultar a la documentació oficial, a la pàgina web de el projecte o en la pàgina de GitHub.