Einführung: Containervirtualisierung mit LXC

Jetzt muss eine Konfigurationsdatei für einen neuen Container erstellt werden. Da es sich um ein sehr einfaches Beispiel handelt, sollte die Konfigurationsdatei folgende Inhalte aufweisen:


lxc.utsname = test
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = br0
lxc.network.hwaddr = 4a:49:43:49:79:bd
lxc.network.ipv4 = 192.168.250.150
lxc.network.ipv6 = 2003:db8:1:0:214:1234:fe0b:3596

Ist die Konfigurationsdatei erstellt, muss sie gespeichert werden, zum Beispiel als als /etc/lxc/lxc-test.conf oder ähnlich. Der nächste Befehl startet einen isolierten Shell-Prozess:


/usr/bin/lxc-execute -n test -f /etc/lxc/lxc-test.conf /bin/bash

Der Befehl ps ax führt zu folgendem Ergebnis:

PID TTY STAT TIME COMMAND
1 pts/1 S 0:00 /usr/libexec/lxc-init -- /bin/bash
2 pts/1 S 0:00 /bin/bash
20 pts/1 R+ 0:00 ps ax

Nun kann die isolierte Shell einen entfernten Host anpingen und auch von einem entfernten Host angepingt werden. Sie verwendet dasselbe Host-Dateisystem, weshalb /etc in diesem Container dem /etc des Hosts entspricht, allerdings ist der Prozess, wie aus der Ausgabe ps ersichtlich, von der Host-Prozesstabelle völlig isoliert. Auf dem Host kann man mithilfe der LXC-Tools den Status des Containers anzeigen:

Der Befehl lxc-info -n test zeigt mit der Ausgabe ‚test‘ is RUNNING, dass der Container korrekt gestartet wurde. lxc-ps zeigt alle Prozesse mit ihrem dazugehörigen Container an.

Der Container test weist eine vollständig separate Netzwerk-Unterstützung auf. Man kann aber auch eine einzelne Anwendung isolieren, die das bestehende Host-Netzwerk verwendet (und somit keine Konfigurationsdatei benötigt), indem man Folgendes eingibt:


lxc-execute -n test /bin/bash

Um das Verhalten von OpenVZ-Containern zu erreichen, müssen LXC-Systemcontainer verwendet werden. Sie imitieren ein komplettes Betriebssystem mit eigenem Dateisystem und eigener Netzwerkadresse, das vom Host-Betriebssystem vollkommen isoliert ist. Die einfachste Möglichkeit, solche Container zu erstellen, ist die Verwendung von OpenVZ-Vorlagen.

LXC ist sehr leistungsfähig, und endlich haben Linux-Benutzer eine ähnliche Funktion zur Verfügung, wie sie die BSD-Jails seit Jahren bieten. Obgleich OpenVZ sehr gut funktioniert, ist die Systempflege mit einer direkt bei einem Linux-Anbieter erhältlichen Lösung doch einfacher, weil alle erforderlichen Elemente bereits vorhanden sind. LXC ist zwar nicht so ausgereift wie OpenVZ, aber dennoch eine leistungsfähige Lösung, die aktiv weiterentwickelt wird.

Themenseiten: Linux, Open Source, Plattform, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Einführung: Containervirtualisierung mit LXC

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *