So lassen sich separate Containerdienste mit LXC verwirklichen

Beim CentOS-Beispiel müssen die Netzwerk-Einstellungen im Container geändert werden. Da es sich um ein OpenVZ-Template handelt, sucht es möglicherweise nach dem Gerät venet0, das nicht bereitsteht (in der Konfiguration wurde es als eth0 eingestellt) oder es ist möglicherweise überhaupt keine Konfiguration für das Netzwerk vorhanden. Jedenfalls muss die Datei /srv/lxc/centos5/etc/sysconfig/network-scripts/ifcfg-eth0 erstellt werden, und sie sollte Folgendes enthalten:


DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.250.150
NETMASK=255.255.254.0
BROADCAST=192.168.251.255

Das Beispiel oben gilt für eine Konfiguration mit statischer IP-Adresse. Mit den entsprechenden Änderungen an der LXC-Konfigurationsdatei könnte auch DHCP verwendet werden.

Zum Schluss fügt man dem Container noch einen Benutzer hinzu, sodass er sich via SSH anmelden kann. Da es sich bei dem Container im Wesentlichen um ein komplettes Dateisystem handelt, kann er mittels chroot „betreten“ werden:


chroot /srv/lxc/centos5
useradd user
passwd user

In der chroot-Umgebung, lässt sich auch festlegen, welche Dienste gestartet werden sollen und welche nicht. Außerdem sollte man die Datei /etc/mtab reparieren. Standardmäßig startet sie in Runlevel 3, daher empfiehlt es sich Folgendes auszuführen:


chkconfig --list|grep '3:on'
chkconfig httpd off
chkconfig saslauthd off
rm /etc/mtab
touch /etc/mtab

Wenn gewährleistet ist, dass sshd auf Starten steht, lassen sich beliebige Dienste ab- oder anschalten. Neben chroot ist dies der einzige Zugang zum Container.

Nach dem konfigurieren des Containers kann er gestartet werden. Beim ersten Mal möchte man ihn möglicherweise direkt ausführen, da er sich aber ans Steuerterminal hängt, ist es am besten, ihn unter screen laufen zu lassen. Der folgende Befehl startet ihn losgelöst in screen:


screen -dmS lxc-centos lxc-start -n centos

Indem init im Container gestartet wird, bootet das System wie eine virtuelle Maschine. Wird es unter screen hochgefahren, kann man sich an die screen-Sitzung mit screen -x lxc-centos anhängen, um es beim „Booten“ zu beobachten. Zum Folgender Befehl stoppt den Container:


lxc-stop -n centos

Wenn der Container erst eingerichtet ist, kann man eine ganze Menge konfigurieren und natürlich ist mit LXC noch viel mehr möglich. Mit den Anleitungen aus diesem Artikel bekommt der Nutzer die Grundlagen, um sich näher mit dem Thema vertraut zu machen und mit der Lösung herumzuspielen. Sie stellt im Grunde einen vollständigen virtuellen Rechner dar, allerdings ohne den Aufwand für die Virtualisierung. Noch fehlt ihr der Schliff von OpenVZ, doch der kommt mit der Zeit. Die Tatsache, dass sie Teil des Linux-Kernels ist und einzelne Anwendungen in einer Sandbox laufen lassen kann, sind dagegen Vorteile, die OpenVZ nicht bietet.

Themenseiten: Linux, Open Source, Plattform, Software

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

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu So lassen sich separate Containerdienste mit LXC verwirklichen

Kommentar hinzufügen

Schreibe einen Kommentar

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