Sicherung von LXD Containern

Leider ist in den 2.xx Versionen von LXD noch keine direkte Backup-Funktion eingebaut.

Der Workaround geht über:

  • Snapshot der VM erstellen
  • Snapshot in Image wandeln
  • Image exportieren

Für diese Schritte hab ich mir mal ein Skript zusammen gebaut, das ich nicht vorenthalten will:

#!/bin/bash
datum=$(date +%Y-%m-%d)
backupdir=/mnt/data/backup/lxd
#vmliste=$(lxc list | awk '$4 == "STARTED" {print $2}')
vmliste=$(lxc list --format csv -c n)

echo "Starte Backup auf $(hostname -f)"
echo " "
date
echo " "
echo "Sicherungsliste:"
echo $vmliste
echo " "
for vm in $vmliste
do
 echo "Sichere VM: " $vm
 lxc snapshot $vm backup && echo "Snapshot erfolgreich"
 lxc publish $vm'/backup' --alias $vm'-backup' --compression none && echo "Publish erfolgreich"
 [ -d $backupdir/$datum ] || mkdir $backupdir/$datum
 lxc image export $vm-backup $backupdir/$datum/$vm.tar && echo "Export erfolgreich"
 lxc image delete $vm-backup && echo "Image Cleanup erfolgreich"
 lxc delete $vm/backup && echo "Snapshot Cleanup erfolgreich"
 [ -e /var/lib/lxd/containers/$vm/backup.yaml ] && cp /var/lib/lxd/containers/$vm/backup.yaml $backupdir/$datum/$vm.yaml && echo "Config kopiert"
 echo " "
done

date
echo " "
echo "Sicherungen abgeschlossen."

Die Formatierung und Ausgaben zielen herbei auf meine cron-Mail-Formatierung ab 😉

Am Anfang ist noch ein „Switch“, ggfs nur die laufenden VMs zu sichern.

Ich habe die gzip-Komprimierung aus Performancegründen abgeschaltet, andernfalls dauert der Publish sehr lange. Das Image ist dann zwar größer, aber auch bedeutend schneller fertig (bei meinem etwas schwachen Server…).

Umbenennung des Blog

Um den Themenschwerpunkten und Publikum zu entsprechen wurde der Blog Titel und Untertitel entsprechend geändert.

In Kürze zieht der Content noch auf einen neuen Server und die lokale IT wird ebenfalls umgestellt, aktuellere Infos wenn hier alles in trockenen Tüchern ist.

Außerdem gibt es in der Kategorie „Systeme“ mit „Systemstatus“ eine neue Seite die den aktuellen Zustand meiner Server reflektiert. Mit der Zeit werde ich das Skript noch ausbauen und natürlich auch zur Verfügung stellen, ideal für alle die eine simple Statusinfo gebrauchen können.

Neue Kategorie – Scripte

Aus aktuellem Anlass (Nein, nicht weil es Winter wird) möchte ich euch eine neue Kategorie hier auf dem Blog vorstellen:

Scripte

Hier sind aktuell ein paar von mir hinterlegt an welchen ich in der letzten Zeit gearbeitet habe, mehr kommt wenn von euch dazu Input kommt oder ich weitere zusammenschreibe 🙂

Wie immer sind Anmerkungen gerne gesehen.