Erste Schritte mit LXD öffnen die Tür zu einer effizienten und leichtgewichtigen Container- und VM-Verwaltung unter Linux. LXD ist ein leistungsstarker Systemcontainer- und VM-Manager, der die Bereitstellung und Verwaltung von Linux-Containern vereinfacht und sich daher ideal für das Hosting von Webanwendungen, Testumgebungen und die Bereitstellung von Microservices eignet. Er schlägt eine Brücke zwischen traditioneller Virtualisierung und Containerisierung und bietet Flexibilität und Leistung für moderne Infrastrukturanforderungen.
In diesem Artikel führen wir Sie durch eine Schritt-für-Schritt-Demo zur Installation und Verwaltung eines Containers mit LXD anhand eines praktischen Szenarios. Darüber hinaus stellen wir Ihnen einen zusammengefassten Spickzettel im Tabellenformat zur Verfügung, mit dem Sie wichtige LXD-Befehle schnell nachschlagen können, damit Sie über die Werkzeuge verfügen, die Sie zur Optimierung Ihrer Containerverwaltungs-Workflows benötigen.
Frühere Artikel:
01. Einführung in Ubuntu Server – SysOSX: AI & Cloud
02. So richten Sie Ihren ersten Ubuntu Server ein: Ein Leitfaden für Anfänger – SysOSX: AI & Cloud
03.Die Linux-Befehlszeile für Ubuntu Server beherrschen – SysOSX: AI & Cloud
05. Netzwerkgrundlagen für Ubuntu Server: Ein umfassender Leitfaden – SysOSX: AI & Cloud
07.Patchen und Aktualisieren von Ubuntu Server: Ein umfassender Leitfaden – SysOSX: AI & Cloud
08. Ihren Ubuntu Server sichern: Praktische Schritte zur Härtung und zum Schutz – SysOSX: AI & Cloud
09. Überwachung und Protokollierung von Ubuntu Server
10. Tools zur Systemüberwachung für Ubuntu Server: Ein umfassender Leitfaden – SysOSX: AI & Cloud
12. Audit und Compliance für Ubuntu Server: Bewährte Verfahren – SysOSX: AI & Cloud
14. Mehrere Websites auf einem einzigen Ubuntu Server hosten: Nützliche Tipps – SysOSX: AI & Cloud
15. Speicher- und Datenträgerverwaltung auf Ubuntu Server: Einfacher Leitfaden – SysOSX: AI & Cloud
17. Einrichten eines sicheren Datenbankservers unter Ubuntu: MySQL vs. MariaDB – SysOSX: AI & Cloud
Inhaltsverzeichnis
Was ist LXD?
LXD ist ein Open-Source-Tool zur Containerverwaltung, das auf Linux Containers (LXC) aufbaut. Es bietet Systemcontainer, die sich wie virtuelle Maschinen verhalten, aber schneller und leichtgewichtiger sind. Mit LXD können Sie:
- Vollständige Linux-Distributionen in Containern ausführen.
- Erweiterte Netzwerk- und Speicherfunktionen nutzen.
- Container per REST-API remote verwalten.
- Container mit minimaler Ausfallzeit zwischen Hosts migrieren.
LXD mit Snap installieren
Die empfohlene Methode zur Installation von LXD auf modernen Ubuntu-Systemen ist Snap. Befolgen Sie diese Schritte:
1. Snapd installieren
Stellen Sie sicher, dass Snap auf Ihrem System installiert ist. Falls Snap nicht installiert ist, führen Sie Folgendes aus:
sudo apt update
sudo apt install snapd
2. LXD installieren
Installieren Sie LXD mit Snap:
sudo snap install lxd

3. Installation überprüfen
Überprüfen Sie die installierte LXD-Version:
lxd --version

Demo: Mit LXD einen Container installieren
Sehen wir uns ein gängiges Szenario an, in dem wir mit LXD einen Container erstellen und verwalten, auf dem Ubuntu 22.04 läuft.
Schritt 1: LXD initialisieren
Führen Sie den folgenden Befehl aus, um LXD zu initialisieren:
sudo lxd init

Sie werden aufgefordert, Speicher, Netzwerk und andere Einstellungen zu konfigurieren. Der Einfachheit halber können Sie die Standardoptionen wählen.
Schritt 2: Einen Ubuntu-Container starten
Erstellen und starten Sie mit dem folgenden Befehl einen Container, auf dem Ubuntu 22.04 läuft:
lxc launch ubuntu:22.04 web-server

Dieser Befehl erstellt einen Container mit dem Namen web-server unter Verwendung des Ubuntu 22.04-Images.
Schritt 3: Auf den Container zugreifen
Verschaffen Sie sich Shell-Zugriff auf den Container:
lxc exec web-server -- bash

Sie befinden sich nun im Container und können Pakete installieren oder Dienste konfigurieren. Installieren Sie zum Beispiel Apache:
apt update
apt install apache2 -y
Starten Sie den Apache-Dienst:
systemctl start apache2
Schritt 4: Container-Netzwerk überprüfen
Verlassen Sie den Container und überprüfen Sie seine IP-Adresse:
lxc list

Greifen Sie auf den Webserver des Containers zu, indem Sie seine IP-Adresse in einem Browser aufrufen oder mit curl http://ip die Verbindung prüfen.

Schritt 5: Container stoppen und löschen
Wenn Sie den Container nicht mehr benötigen, stoppen Sie ihn:
lxc stop web-server
Löschen Sie den Container:
lxc delete web-server
LXD-Befehlszeilen-Spickzettel
Nachfolgend finden Sie einen zusammengefassten Spickzettel für häufig verwendete LXD-Befehle:
| Kategorie | Befehl | Beschreibung |
|---|---|---|
| Initialisierung | lxd init | Initialisiert LXD vor der ersten Verwendung. |
| Instanzen erstellen | lxc init <image> <name> | Erstellt einen Container, ohne ihn zu starten. |
lxc launch <image> <name> | Erstellt und startet einen Container. | |
lxc launch <image> <name> --vm | Erstellt und startet eine virtuelle Maschine. | |
| Instanzen verwalten | lxc list | Listet alle Instanzen auf. |
lxc info <instance> | Zeigt Informationen zu einer Instanz an. | |
lxc start <instance> | Startet eine Instanz. | |
lxc stop <instance> [--force] | Stoppt eine Instanz. | |
| `lxc delete <instance> [–force | –interactive]` | |
| Auf Instanzen zugreifen | lxc exec <instance> -- <command> | Führt einen Befehl in einer Instanz aus. |
lxc exec <instance> -- bash | Verschafft Shell-Zugriff auf eine Instanz. | |
lxc console <instance> | Verschafft Konsolenzugriff auf eine Instanz. | |
| Dateiverwaltung | lxc file pull <instance>/<path> <local_path> | Ruft eine Datei von einer Instanz ab. |
lxc file push <local_path> <instance>/<path> | Überträgt eine Datei auf eine Instanz. | |
| Projekte | lxc project create <project> | Erstellt ein Projekt. |
lxc project set <project> <option> | Konfiguriert ein Projekt. | |
lxc project switch <project> | Wechselt zu einem Projekt. |
Offizielles Dokument:
Erste Schritte mit LXD
Fazit
LXD vereinfacht die Containerverwaltung und ist daher eine ausgezeichnete Wahl für Entwickler, Systemadministratoren und DevOps-Ingenieure. Mit seiner leichtgewichtigen Leistung und VM-ähnlichen Fähigkeiten ist LXD ideal für das Hosting von Anwendungen, Testumgebungen und mehr.
In diesem Artikel haben wir gezeigt, wie man mit LXD in einem gängigen Szenario einen Container installiert und verwaltet. Darüber hinaus bietet der Spickzettel eine Schnellreferenz für wichtige LXD-Befehle.
Nächstes Thema:
Im nächsten Artikel sprechen wir über Verwendung von Podman auf Ubuntu Server. Bleiben Sie dran.