Kleiner Einblick in Snapshots mit LXC
Mit LXC lassen sich Snapshots von Containers erstellen. Auf diese Weise wird ein gewissen Zustand von dem System abgespeichert. Diesen kann man später nutzen, um damit einen neuen Container zu schaffen, ohne die mühselige Arbeit von Anfang an. In diesem Post will ich zeigen, wie man das mit wenigen LXC-Kommandos erreicht.
In diesem Beispiel habe ich schon einen Container namens container1 erstellt und werde ihn nun auch weiterhin verwenden. D.h. überall, wo bei mir container1 steht, solltet ihr euren Containernamen hinschreiben.
Um herauszufinden, ob ein gewählter Container schon Snapshots besitzt, findet man durch das Kommando
sudo lxc-snapshot -n container1 --list
heraus. Falls noch keine Snapshots existieren, wird hier die Meldung No snapshots auftauchen.
Bevor wir ein Snapshot erstellen, müssen wir sichergehen, dass der Container gestoppt ist, was wir mittels folgendem Kommando sehen:
sudo lxc-ls --fancy
Nur noch mal kurz zur Erinnerung: Einen LXC Container stoppt man mittels
sudo lxc-stop -n container1
Nun erstellen wir ein Snapshot von dem gewünschten Container:
sudo lxc-snapshot -n container1
Wenn alles erfolgreich gelaufen ist, müssten wir nun einen Snapshot sehen, wenn wir das Kommando
sudo lxc-snapshot -n container1 --list
aufrufen.
Um jetzt einen neuen Container aus einem bestehenden Snapshot zu schaffen, muss man folgendes Kommando aufrufen (in meinem Fall war es der Snapshot mit dem Namen snap0):
sudo lxc-snapshot -n container1 --restore snap0 --newname container2
Nun müsstet ihr einen weiteren Container sehen wenn ihr wieder alle Container auflistet. Mehr Informationen zum Thema Snapshots von LXC Containern findet man in der Dokumentation.