Ein LVM-Snapshot ist eine exakte Spiegelkopie einer LVM-Partition, die alle Daten des LVM-Volumes seit der Erstellung des Snapshots enthält. Der Hauptvorteil von LVM-Snapshots besteht darin, dass sie die Zeit reduzieren können, in der Ihre Dienste/Anwendungen während Backups ausfallen, da ein Snapshot normalerweise in Sekundenbruchteilen erstellt wird. Nachdem der Snapshot erstellt wurde, können wir den Snapshot sichern, während unsere Dienste und Anwendungen im normalen Betrieb sind.
LVM-Snapshot ist die Funktion, die von LVM (Logical Volume Manager) in Linux bereitgestellt wird. Beim Erstellen eines lvm-Snapshots stellt sich uns häufig die Frage, wie groß der Snapshot sein sollte?
„Die Snapshot-Größe kann je nach Ihren Anforderungen variieren, aber eine empfohlene Mindestgröße beträgt 30 % des logischen Volumes, für das Sie den Snapshot erstellen dasselbe wie logisches Volume“.
Szenario :Wir machen einen Snapshot von /home, das eine LVM-basierte Partition ist.
# df -h /home/ Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_home 5.0G 139M 4.6G 3% /home
Schnappschuss der /dev/mapper/VolGroup-lv_home-Partition erstellen
Der LVM-Snapshot wird mit dem Befehl lvcreate erstellt, man muss genügend freien Speicherplatz in der Volume-Gruppe haben, sonst können wir den Snapshot nicht erstellen, die genaue Syntax ist unten angegeben:
# lvcreate -s -n [Snapshot Name] -L [Size of snapshot] [lvm volume for which to take snapshot]
Zum Beispiel:
# lvcreate -s -n home_snap -L1G /dev/mapper/VolGroup-lv_home Logical volume "home_snap" created
Überprüfen Sie nun den neu erstellten LVM „home_snap“ mit dem Befehl lvdisplay:
# lvdisplay /dev/mapper/VolGroup-lv_home
Erstellen Sie nun den Einhängepunkt (Verzeichnis ) und hängen Sie ihn ein:
# mkdir /mnt/home-backup # mount /dev/mapper/VolGroup-home_snap /mnt/home-backup/ # ls -l /mnt/home-backup/
Der obige Befehl zeigt alle Verzeichnisse und Dateien, die wir von unserer /home-Partition kennen.
Nehmen Sie jetzt die Sicherung des Snapshots des /opt-Verzeichnisses
# tar zcpvf /opt/home-backup.tgz /mnt/home-backup/
Wenn Sie die bitweise Sicherung wünschen, verwenden Sie den folgenden Befehl:
# dd if=/dev/mapper/VolGroup-home_snap of=/opt/bitwise-home-backup 10485760+0 records in 10485760+0 records out 5368709120 bytes (5.4 GB) copied, 79.5741 s, 67.5 MB/s
Snapshot-Sicherung wiederherstellen
Wenn mit Ihrem /home-Dateisystem etwas schief geht, können Sie die Sicherung wiederherstellen, die wir in den obigen Schritten erstellt haben. Sie können den lvm-Snapshot auch im /home-Ordner einhängen.
LVM-Snapshot entfernen
Sobald Sie mit der lvm-Snapshot-Sicherung und -Wiederherstellung fertig sind, sollten Sie die lvm-Snapshot-Partition mit den folgenden Befehlen aushängen und entfernen, da der Snapshot Systemressourcen wie Speicherplatz der jeweiligen Volume-Gruppe verbraucht.
# umount /mnt/home-backup/ # lvremove /dev/mapper/VolGroup-home_snap Do you really want to remove active logical volume home_snap? [y/n]: y Logical volume "home_snap" successfully removed