GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verwenden von LVM-Snapshots für KVM-Klone virtueller Maschinen

Obwohl ich LVM nicht als KVM-Speicher ausprobiert habe, habe ich es für die Shadow-Volume-Funktion von Samba verwendet, und ich kann Ihnen eines sagen:Die Leistung war miserabel.

Jeder einzelne Snapshot erfordert einen zusätzlichen Schreibvorgang. Wenn Sie ein Basis-Snapshot-Volume und 4 Snapshots haben, wird die Anzahl der Schreibvorgänge, die auf die Laufwerke gehen, mit 5 multipliziert, wenn Sie auf das Basis-Volume schreiben.

Zu Ihren konkreten Fragen:

  • LVM friert ein Dateisystem ein, während der Snapshot stattfindet (schreibt, leert den Cache, erstellt den Snapshot, setzt den Schreibvorgang fort)
  • wie gesagt, es ist sehr langsam
  • Ja, ein beschädigtes Basisvolume macht alle Snapshots unbrauchbar, was mehr ist, wenn Ihnen der für die Snapshot-Deltas zugewiesene Speicherplatz ausgeht, wird der Snapshot ebenfalls abgespritzt
  • Ja, Sie können einen Schnappschuss erstellen

Leider kenne ich nur 3 Systeme, die gut mit Snapshots funktionieren:NetApp WAFL, ZFS und btrfs. Wenn das System nicht kritisch ist, könnte btrfs einen Versuch wert sein.


Es ist völlig in Ordnung, dies zu tun. Was Sie nicht tun möchten, ist, dass der Elternteil des Snapshots (das Original oder die Quelle oder wie auch immer Sie es nennen möchten) gleichzeitig verwendet wird, da dies zu einer IO-Multiplikation führt (Hubert hatte damit Recht, es ist nur leicht zu verhindern, indem Sie nicht ständig die Quelllautstärke verwenden).

Wenn Sie ein Master-Betriebssystem auf einem LVM installiert haben und davon viermal einen Snapshot erstellen, haben Sie keine große E/A-Einbuße, da Sie nur auf die einzelnen Snapshot-Volumes schreiben. Natürlich ist es nicht kostenlos, aber andere Formen des Snapshots auf anderen Dateisystemen oder virtuellen Laufwerken auch nicht. Irgendwo gibt es immer Kosten.

Eine andere Sache, in der Hubert Recht hat, ist, dass Sie über die Größe Ihrer Schnappschüsse nachdenken müssen. Sie sollten sicherstellen, dass die Snapshot-Volumes weiter schreiben können. Ein volles Snapshot-Volume wird die Dinge stark beschädigen. Eine ausfallsichere Möglichkeit, dies zu verhindern, besteht darin, das Snapshot-Volume gleich groß (oder größer) als das Quell-Volume zu machen. Sie verlieren jedoch den Vorteil, auf diese Weise weniger Speicherplatz zu verbrauchen.

Sie wissen, dass qemu-Images auch Snapshot-fähig sind?


LVM mit Thin Provisioning sollte hier im Jahr 2019 als erstklassige Option für dieses Szenario betrachtet werden.

Die Leistung von Thin LV ist gut, und sie funktionieren wie separate Volumes, sodass Sie sich nach dem Erstellen eines Snapshots keine Gedanken mehr über die Pflege und Integrität des Originals machen müssen (es kann beschädigt, gelöscht usw. werden, ohne dass der Snapshot beeinträchtigt wird).

Die Sorge des OP um "der Snapshot nimmt wenig Platz ein" ist mit traditionellem LVM nicht wirklich zufrieden, da der Speicherplatz für jeden Snapshot monolithisch vorab zugewiesen werden muss. Aber Thin LVs werden wie Sparse-Dateien zugewiesen und nehmen tatsächlich wenig Platz ein.

Der Kompromiss für Thin Provisioning besteht darin, dass der verfügbare Speicherplatz im Thinpool genau wie ein Dateisystem überwacht werden muss, um eine Überfüllung zu vermeiden. Linux-Distributionen verfügen normalerweise über Daemons, die dies überwachen und Warnungen senden oder Maßnahmen ergreifen, wenn ein Thinpool fast voll ist.


Linux
  1. So erstellen Sie ein physisches Volume unter Linux mit LVM

  2. So erstellen Sie Snapshots von LVM-Thin-Volumes mit dem Snapper-Befehl

  3. So stellen Sie gelöschte logische Volumes (LV) in LVM mit vgcfgrestore wieder her

  4. Cygwin vs. virtuelle Linux-Maschine für die Entwicklung?

  5. Funktionieren LVM-Snapshots so?

So finden Sie die IP-Adresse einer virtuellen KVM-Maschine

Erstellen einer Sicherung von Daten, die in einer virtuellen Linux-Maschine gespeichert sind

Erstellen Sie ein Virtual HardDisk (VHD)-Volume mit einer Datei in Linux

So erstellen Sie virtuelle Maschinen in KVM mit Virt-Manager

Sicherung und Wiederherstellung von LVM-Snapshots unter Linux

Logisches Lvm-Volume auf virtueller Maschine erweitern?