Wie auf unserer Webseite beschrieben, werben wir damit, dass wir von jeder virtuellen Maschine welche bei uns gemietet wird auf Wunsch ein kostenloses tägliches Backup erstellen. Bei Kundenkonten mit einer erweiterten Backupfunktion kann der Livecycle der Backups auf bis zu 7 Tage erhöht werden.
Um ein rotierendes Backup einer jeden virtuellen Maschine anzufertigen, haben unsere vServer Hostsysteme bislang fast einen ganzen Tag benötigt. Daraus ergab sich eine sehr hohe I/O Last zum Nachteil der Kunden, welche auf eine schnelle Storageperformance angewiesen sind.
Bei unseren vServern arbeiten wir aktuell mit getrennten LVM Volumen. Jede virtuelle Maschine bildet daher ein eigenes LVM Volumen ab, worin sich die Daten der jeweiligen HVM / Para virtualisierten Maschine befinden. Bislang hatte unser Backupkonzept vorgesehen von jedem dieser LVM Volumen einen Snapshot zu erstellen und diesen Snapshot mit Hilfe von fsarchiver auf ein schnelles SAS Array zu kopieren um dort das Archiv anschließend komprimiert auf eine zentrale Backupstorage zu verschieben. Bei diesem Backupverfahren wird das gesamte Volumen der virtuellen Maschine immer vollständig kopiert, unabhängig davon, wieviel Speicherplatz der Kunde wirklich nutzt. Wenn also ein LVM Volumen mit 500 GB angelegt wurde, wurden 500 GB kopiert und anschließend komprimiert.
Unser neues Backupkonzept sieht vor, dass in einem ersten Schritt alle Daten des LVM Volumens auf das Backupstorage kopiert werden. Das heißt, aus dem LVM Snapshot werden nur die tatsächlich vorhandenen Daten kopiert und nicht das gesamte Volumen. Diese Daten werden in einer Art „Full-Ordner“ auf dem Backupstorage als Referenzdaten gespeichert. Alle weiteren Backupläufe werden dann nur noch inkrementell durchgeführt. Daher werden nur noch die Daten kopiert, die sich im Vergleich zum letzten Backuplauf verändert haben. Diese Vorgehensweise funktioniert natürlich nur bei Para virtualisierten Maschinen, da es hier kein spezielles Partitionierungslayout der einzelnen virtuellen Maschine gibt. Bei HVM virtualisierten Maschinen müssen wir leider die bisherige Backupstrategie verfolgen. Im Vergleich zu Para virtualisierten Maschinen ist der Anteil an HVM virtuellen Maschinen aber deutlich geringer. Durch die Trennung der Backupverfahren konnten wir zudem eine Parallelisierung des Backuplaufs durchführen so dass HVM virtualisierte Maschinen jetzt parallel zu Para virtualisierten Maschinen gesichert werden können.
Als Referenz dazu ein Beispiel:
Der vServer Host v10.ip-projects.de beherbergt aktuell folgende virtuelle Maschinen:
HVM virtualisierte Maschinen: 10
Para virtualisierte Maschinen: 47
Gesamt genutzter Festplattenspeicher: 4.370 GB
Mit dem bisherigen Backupverfahren hat der Backuplauf aller virtuellen Maschinen bis 21:21 Uhr täglich gedauert. Er war daher den ganzen Tag nebenbei mit Backups beschäftigt.
Beim ersten Backuplauf der Referenzdaten für die Para virtualisierten Maschinen konnten alle Backups bis 19:12 Uhr abgeschlossen werden.
Der anschließende parallele Backuplauf mit den neuen Skripten mit lediglich den Deltadaten der Para virtualisierten Maschinen war bereits um 6:15 Uhr abgeschlossen. Alle HVM virtualisierten Maschinen um 5:13 Uhr.
Dank der umfangreichen Neuentwicklung bei der Erstellung unserer Backups, haben unsere Hostsysteme jetzt tagsüber Zeit sich um die wirklich wichtigen I/O Anfragen unserer Kunden zu kümmern, was sich deutlich an der Performance unserer virtuellen Maschinen wiederspiegeln sollte. Das Ganze ohne, dass wir auf ein für uns sehr wichtiges Feature zu Gunsten der Performance verzichten mussten.