Ich verstehe, dass die VMWare-KB bei langen Snapshots hauptsächlich aus zwei Gründen die Stirn runzelt (meiner Meinung nach)
Das Aufnehmen von tonnenweise Schnappschüssen kann den Datenspeicher füllen. Schnappschüsse sind einfach Delta-Dateien. Nehmen wir an, Sie haben ein fast volles VMDK mit 50 Gig und machen einen Schnappschuss. In deinem Schnappschuss drehst du jedes einzelne Bit um. Ihre Delta-Datei wird auch etwa 50 GB groß sein. Snapshot nochmal, flip the bits, eine weitere 50 Gig Delta Datei. Diese können schnell außer Kontrolle geraten.
Das Festlegen großer Schnappschüsse birgt Risiken. Bei der Konsolidierung von Snapshots werden die Delta-Änderungen in das ursprüngliche VMDK geschrieben. Dies nimmt Zeit in Anspruch und birgt das Risiko, dass Sie Ihre VMDK im Falle eines Ereignisses aufgerieben haben.
Ihre Warnungen scheinen logisch zu sein.
Ist es angesichts dessen von Natur aus schlecht, meinen Computer permanent von einem Snapshot-VMDK aus zu betreiben? Ich möchte aus meinem Baum folgendes machen:
- Base
- Snap1
- Fang 2
- Du bist da
- Snap1
Die Snaps 1 und 2 werden sofort nach der Installation und Bereitstellung des Basissystems ausgeführt. Dies sind Maschinen, die ich regelmäßig aktualisieren möchte, damit mein Baum einfach wie folgt aussieht:
- Base
- Snap1
- Du bist da
- Fang 2
- Snap1
Löschen Sie Snap2 und erstellen Sie Snap2 neu.
Ich kann nicht sehen, wie sich dies aus den folgenden Gründen auswirken könnte:
Da ich einfach ein Basis-Image installiert habe und meine Deltas sofort nach dem letzten Versuch aufgenommen habe, konnte ich möglicherweise den Datenspeicher füllen. Angenommen, mein Basis-Image hat nur 10 GB (auf einer Thin Provisioning-Festplatte mit 50 GB), und selbst wenn mein Delta jedes einzelne Bit umgedreht hat, beträgt meine maximale Gesamtnutzung 60 GB (10 GB Basis-VMDK, die gesperrt ist, + 50 GB Delta-In) die Snapshot-VMDK-Datei). Dies setzt voraus, dass ich keine weiteren Schnappschüsse erstelle.
Da mein Anwendungsfall keine Konsolidierung der Snapshots erfordert, riskiere ich keine Fehler bei der Konsolidierung meiner Deltas. Wenn ich zurück zu Snap1 gehe und Snap2 lösche, wird das gesamte Delta, das sich in Snap2 befand, einfach gelöscht.
Die Speicherlast ist genau gleich, daher sollte ich die gleichen IOPS erhalten. Ich verstehe, dass einige Dateien (hauptsächlich Systemdateien) auf dem ursprünglichen VMDK vorhanden sein werden und andere (alles nach der Basis) im Delta gespeichert sein werden, aber ich sehe nicht, wie ESXI sich dafür interessieren würde. Alle Dateien befinden sich im selben physischen Datenspeicher, sodass die Leistung der Referenzierung aller Elemente im ursprünglichen VMDK ohne Snapshots entsprechen sollte.
Irgendwelche Gedanken? ESXI 5.5 mit dem Datenspeicher als RAID-DAS.
Ich besitze keine vCenter-Lizenz, sodass das Vorlagen- und Klonenproblem nicht mehr besteht.
Testergebnisse
Ich bin heute früh angereist, um ein paar Tests durchzuführen. Hier sind die Ergebnisse. Es gibt eine Leistungsstrafe, aber ich weiß nicht warum.
Vor dem Schnappschuss:
Nach dem Schnappschuss:
quelle
Antworten:
Ja, es gibt Auswirkungen auf die Leistung von Snapshots mit langer Laufzeit. Es gibt noch größere Auswirkungen auf die Konsolidierung von Delta-VMDKs auf die ursprüngliche Festplattendatei. Dies kann dazu führen, dass das Betriebssystem Ihrer VM nicht mehr reagiert oder ein anderes unerwünschtes Verhalten auftritt.
In VMware sind Vorlagen- und Klonfunktionen in vCenter integriert. Sie benötigen eine vSphere Essentials-Lizenz im Wert von 600 USD, um dies zu ermöglichen.
Sie können eine VM nach Ihrem Geschmack erstellen und sie dann in eine Vorlage klonen. Diese Vorlage kann dann verwendet werden, um neue virtuelle Maschinen aus einem "Golden Master" -Image zu generieren .
Auf diese Weise können Sie einen "bereinigten Status" haben, aber auch dauerhafte oder permanente VMs aus diesem Master-Image erstellen. Schnappschüsse sind nicht erforderlich.
quelle
Die Antwort von ewwhite ist richtig, aber nur um die Leistung ein wenig zu verbessern, betrachten Sie das folgende Szenario:
Sie erstellen eine VM. Ein virtueller Lesevorgang vom VMDK erfordert einen physischen Lesevorgang mit derselben Größe. Ziemliech direkt.
Stellen Sie sich nun vor, Sie machen einen Schnappschuss der VM. Jetzt müssen Sie für jeden virtuellen Lesevorgang zwei physische Lesevorgänge ausführen, einen vom Basis-VMDK und einen vom Delta-VMDK, da Sie Informationen von beiden benötigen, um den aktuellen Status abzurufen. Sie haben jetzt die doppelte Anzahl an Lesevorgängen für die physische Festplatte.
Bei zwei Schnappschüssen führen Sie drei Lesevorgänge durch und so weiter. Wenn Sie viele Schnappschüsse haben, können Sie sehen, dass dies eine ziemlich erhebliche Leistungseinbuße sein kann. Dies bedeutet nicht unbedingt eine um das n-fache schlechtere Leistung (aufgrund von Caching, nicht geänderten Abschnitten usw.), ist jedoch keine gute Vorgehensweise.
quelle
VMware ESX-Snapshots sind für die kurzfristige Verwendung gedacht.
Eine lange Nutzung und hohe E / A-Belastung können zum Einfrieren der VM führen. Wenn Sie den Fall haben, dass die Schreib-E / A größer / schneller als die Snapshot-Konsolidierung ist, wird ESX die VM zum Schutz der Daten einfrieren. Wenn Zeitschnappschüsse fragmentiert werden und ESX die interne Konsolidierung durchführt, kann es zu regelmäßigen Einfrierungen kommen.
Sie können das VM-Template manuell über ssh erstellen. Kopieren Sie den VM-Ordner mit vmdk, vmx usw. in einen neuen Ordner. In der VMX-Datei der neu kopierten VM ändern Sie UID und MAC-Adresse.
VMware hat das Produkt Linked Clone, das Sie auch versuchen. Und sie sagen, dass es potenzielle Leistungsprobleme hat. In der Praxis werden Sie nach einer Weile VMs remastern. https://www.vmware.com/support/ws5/doc/ws_clone_typeofclone.html
quelle