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.
Neueste Kommentare
Noch keine Kommentare zu Einführung: Containervirtualisierung mit LXC
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.