Wenn ich ein modernes VMware ESXi-System verwende, kann ich statisch verknüpfte Rsync-Binär- und Rsync-Dateien über SSH an jeden beliebigen Zielort senden.
Ich versuche zu verstehen, warum die meisten (alle?) Backups von VMware-Gästen nicht auf diese Weise durchgeführt werden.
Wenn die VM ausgeführt wird, können Sie einfach 'vim-cmd vmsvc / snapshot.create' verwenden, um einen Snapshot zu erstellen und diesen Snapshot dann mit dem Remote-Host zu synchronisieren. (Es gibt sogar eine Option, um den Schnappschuss "stillzulegen")
ODER, wenn Sie ein robusteres Backup wünschen, können Sie die VM ordnungsgemäß anhalten und über die vmdk-Datei (en) synchronisieren.
Also ... es scheint, als wäre ich ein einfaches Shell-Skript, das sich von allen Sicherungen, die ich jemals machen wollte, einfach und problemlos mit einfachem altem rsync entfernt.
Was vermisse ich hier?
quelle
Antworten:
Siehe auch: Installieren von rsync auf einem VMware ESX 4.1-Server
quelle
Ich habe das vor ein paar Jahren gemacht. (Bearbeiten: mit VMWare auf CentOS-Hosts, zugegebenermaßen nicht ESXi)
Jede Nacht hatte ich ein Skript, das eine VM anhielt, die Dateien von der Festplatte auf den Sicherungsserver synchronisierte und die VMs dann erneut startete. Es hat ganz gut funktioniert, außer ...
Rsync funktioniert mit einer 2-GB-Datei nicht sehr gut.
Es liegt nicht daran, dass rsync nicht brillant ist, sondern dass sich jede 2 GB große vmdk-Datei auf eine Weise ändert, die für rsync sehr undurchsichtig ist. Selbst kleine Änderungen am beiliegenden Dateisystem führen zu Änderungen in der vmdk (oder allen vmdks aus irgendeinem Grund), die ich beschuldigt habe Windows, das entweder automatisch defragmentiert oder auf andere Weise alle anderen Aktionen ausführt, spielt keine Rolle, wenn Sie ein reales System ausführen, sondern wenn Sie versuchen, eine VM zu synchronisieren!
Ich denke, der rsync-Mechanismus zum Erkennen von Änderungen funktioniert bei einer 2-GB-Datei nicht besonders gut, obwohl er häufig Teile des Starts von vmdk übersprungen hat. Sobald er einen Unterschied festgestellt hat, kopiert er einfach den Rest der Datei. Ich weiß nicht, ob dies ein Problem damit ist, dass rsync einen verschobenen Teil der Binärdaten nicht erkennen kann, der Quellcode nicht über genügend Speicher verfügt oder ob der VMDK gerade vollständig aktualisiert wurde. Es spielt keine Rolle, da das Ergebnis dasselbe war - die Mehrheit der vmdk wurde kopiert.
Am Ende habe ich einfach alle geänderten Dateien kopiert und überschrieben, immer noch mit rsync. Ich hatte auch eine bessere Leistung, indem ich einfach die Sicherungsdatei überschrieb, anstatt rsync kopieren und ersetzen zu lassen, was da war.
Unser Backup-Server war auch nicht der schnellste und es war nicht mehr lange genug, um über Nacht alle laufenden VMs zu sichern.
Als wir jedoch eine VM wiederherstellen mussten, war es wirklich einfach und hat wunderbar funktioniert.
quelle
Das Synchronisieren einer einzelnen Datei ist keine Sicherungslösung.
Was machst du, wenn etwas mit der VM passiert ist und Dateien gelöscht wurden? Sie haben jetzt das gute 'Backup' Ihrer Dateien mit dem schlechten Image überschrieben.
Wenn Sie ein Backup wünschen, müssen Sie die alten Versionen oder die Diffs irgendwo aufbewahren. Rsync kopiert nur die Diffs für Sie, speichert jedoch nicht nur die Diffs, sondern überschreibt die vorherige Datei.
Möglicherweise gibt es hier Optionen für Sie mit rsync und einem schreibgeschützten Dateisystem mit Versionsinformationen, in dem die Unterschiede bei jeder Ausführung Ihres rsync-Skripts gespeichert werden. Diese Lösung wird schon etwas komplizierter, deshalb greifen die Leute imho auf bekannte funktionierende Lösungen zurück.
quelle
Es gibt keinen Grund, warum Sie Rsync nicht auf einem ESXi-Server verwenden können. Wir bieten hier eine statisch kompilierte Version an: https://33hops.com/rsync-for-vmware-vsphere-esxi.html , die sehr gut funktioniert. Es gibt auch Informationen, wie Sie Ihre eigenen kompilieren können.
Trotzdem muss jeder, der es verwenden möchte, berücksichtigen, dass Rsync und sein Delta-Algorithmus nicht dazu gedacht waren, große Dateien mit fester Länge wie VM-Festplatten zu sichern, sondern kleinere Dateien mit variabler Länge zu synchronisieren. Es funktioniert also, aber es braucht viel Zeit und CPU, um die Diff-Daten zu berechnen. Tatsächlich ist dies nur eine Möglichkeit, die Bandbreite über die CPU auszutauschen. Auf jeden Fall funktioniert es immer noch recht gut, besonders wenn Ihre virtuellen Festplatten in der Größenordnung von einigen zehn Gigabyte liegen.
Ich habe hier einen vollständigen Beitrag zum Thema veröffentlicht, in dem alle Vor- und Nachteile aufgeführt sind: https://33hops.com/blog_xsibackup-rsync-considerations.html
quelle