Im nächsten Artikel werden wir uns LXD-Container ansehen. Ein Kollege hat bereits vor einiger Zeit in diesem Blog darüber gesprochen. Im dieser Artikel Das habe ich schon klar gemacht Diese Behälter sind aus verschiedenen Gründen nützlich. Sie isolieren Anwendungen vom Rest des Systems, sind portabel, einfach zu klonen und / oder auf andere Betriebssysteme zu verschieben. Im Fall von Gnu / Linux, Sie funktionieren in jeder Distribution gleichohne Anpassungsbedarf.
Docker ist eine beliebte Lösung, die eine einzelne Anwendung wie einen MySQL-Datenbankserver enthält. LXD ist in mancher Hinsicht ähnlich, ist es aber Entwickelt, um ein vollständiges Betriebssystem zu enthalten. LXD wird Hardware wie nicht virtualisieren QEMU o VirtualBox. Dies bedeutet, dass es sehr schnell ist und eine nahezu native Ausführungsgeschwindigkeit bietet.
Als Beispiel für die Verwendung könnten wir einen LXD-Container erstellen, einen Datenbankserver und einen http-Server installieren. Dort haben wir die Möglichkeit, eine Website mit WordPress zu erstellen und bei Bedarf von Cloud zu Cloud zu wechseln, indem wir diesen LXD-Container einfach dorthin verschieben, wo es erforderlich ist. Da ein Container einfach zu klonen ist, kann Ihre Website sogar auf mehrere Cloud-Anbieter hochgeladen werden, um ein redundantes und hochverfügbares Setup zu erstellen.
Installieren und konfigurieren Sie LXD
Um LXD zu installieren, müssen Sie nur ein Terminal öffnen (Strg + Alt + T) und installieren. Was ist mehr Wir können auch die ZFS-Dienstprogramme installieren. Dies hilft uns, einige Vorgänge zu beschleunigen und Speicherplatz zu sparen, wenn wir mit Containern arbeiten.
sudo apt install zfsutils-linux lxd
zu Starten Sie die LXD-Konfiguration, im selben Terminal schreiben wir:
sudo lxd init
Hier können wir drücken Einleitung / Intro um die Standardwerte auszuwählen.
Suchen und starten Sie ein LXD-Verteilungsbild
zu Eine Liste der Ubuntu-Bilder finden Sie hier, im Terminal schreiben wir:
lxc image list ubuntu: arch=amd64|head
Es kann Lassen Sie arch = amd64 weg, wenn Sie Bilder für andere Architekturen benötigen. Im obigen Bild waren die Ergebnisse begrenzt (mit | Kopf), um das Lesen zu erleichtern.
Wie Sie im obigen Screenshot sehen konnten, ist der Fingerabdruck von Ubuntu 18.04 (dcbc8e3e5c2e) Ich habe es hervorgehoben gelassen. Wenn Sie interessiert sind Starten Sie einen Container mit dieser Verteilung. Sie sollten diesen Footprint verwenden. Der auszuführende Befehl wäre:
lxc launch ubuntu:dcbc8e3e5c2e
LXD-Container verwalten
zu Listen Sie alle erstellten Container auf, du musst nur schreiben:
lxc list
Die Wirbelsäule 'IPV4'ist besonders wichtig, wenn auf dieser Instanz Dienste ausgeführt werden. Wenn Sie beispielsweise einen Apache-HTTP-Server ausgeführt haben, beim Schreiben der IP "10.191.112.88"Die im Container gehostete Website wird im Browser angezeigt.
zu Stoppen Sie einen Container, du musst nur schreiben:
lxc stop nombre-contenedor
Dies kann zeitaufwändig sein oder bei Nicht-Ubuntu-Distributionen fehlschlagen. In diesem Fall können Sie immer verwenden systemctl Ausschalten um es zu stoppen.
Wenn alles andere fehlschlägt, können Sie Kraftstopp mit:
lxc stop nombre-contenedor --force
zu Beginnen Sie mit einem Container du solltest schreiben:
lxc start nombre-contenedor
Wenn Sie eine Bewegen Sie sich in den Behälter, Lauf:
lxc shell nombre-contenedor
Im Behälter Sie können Programme mit 'installierensudo apt installieren'und machen Sie alles, was Sie sonst noch mit einer normalen Gnu / Linux-Distribution machen würdenBeispiel: Einrichten eines Apache-Servers.
Jederzeit raus aus dem Container, Tipp einfach:
exit
Übertragen Sie Dateien zu / von LXD-Containern
zu Laden Sie eine Datei in Ihren Container hochVerwenden Sie die folgende Syntax:
lxc file push /ruta/al/archivo/local/nombre-archivo nombre-contenedor/ruta/al/archivo/subido/nombre-archivo
Geben Sie den Namen der zu erstellenden Datei an, nicht nur das Verzeichnis, in dem Sie sie belassen möchten.
zu Laden Sie ein Verzeichnis anstelle einer Datei:
lxc file push /ruta/al/directorio nombre-contenedor/ruta/al/directorio/remoto --recursive --verbose
zu Laden Sie ein Verzeichnis aus dem Container auf Ihr Betriebssystem herunter Schulleiter:
lxc file pull nombre-contenedor/ruta/al/directorio/remoto ruta/al/directorio --recursive --verbose
Dies umfasst die Grundlegende Verwendung von LXD-Containern. Es gibt erweiterte Funktionen wie Snapshots, Ressourcenbeschränkungen wie CPU und RAM, Kloncontainer usw. All dies und mehr kann in der konsultiert werden offizielle Dokumentation, In der Projektwebsite oder auf Ihrer Seite GitHub.