Wie soll ich meine VM-Vorlagen zwischen vSphere-Rechenzentren kopieren?


9

Hintergrund- / Umgebungsarchitektur:

Meine aktuelle Umgebung für $corp_overlords$ist in einem Hub-and-Spoke-Modell mit einem technologisch gut ausgestatteten Home-Office-Hub (SAN, Bladecenter / Bladesystem-ESXi-Cluster, Glasfaser-Internetverbindung usw.) eingerichtet, der mit einer Reihe von Speichen an entfernten Standorten verbunden ist nicht so gut dran und enthalten normalerweise einen einzelnen ESXi-Hostserver und stellen über einen T1 eine Verbindung zum Home-Office-Hub her. Der gesamte Datenverkehr, der von einem Remote-Standort stammt, wird über ein "MPLS-Netzwerk" (das eigentlich nur ein T1 ist, der den Remote-Standort mit dem Home Office verbindet) zum Home Office zurückgeleitet.

Im Home Office im SAN haben wir eine Reihe von VM-Vorlagen, die ich zum Bereitstellen von VMs erstellt habe. Sie werden in einem NFS-Volume gespeichert, dh einem vSphere-Datenspeicher, der an das Home-Office-Datencenterobjekt in vSphere angehängt ist.

Jeder Remotestandort verfügt über ein entsprechendes vSphere-Datencenterobjekt, das ein Datenspeicherobjekt enthält, das mit dem lokal angeschlossenen Speicher auf dem ESXi-Hostserver verbunden ist, der sich physisch am Remotestandort befindet.

Da diese VM-Vorlagen auf dem NFS-Volume vorhanden sind, belegen sie ~ 40 GiB (Thin Provisioning). Als Dateien unter NTFS (oder einem Linux FS) belegen sie ~ 100 GiB.

Frage:

Wie soll ich diese 40 GiB Thin-Provisioned-Daten (die 100 GiB Dateisystemspeicher belegen) zwischen meine Sites kopieren?

Ich habe die Einschränkung, dass ich ungefähr 5 Tage Zeit habe, um dies zu tun, und kann den "normalen Netzwerkverkehr" nicht (merklich) stören.


Sie haben ein Klingenzentrum zu Hause?!
Tom O'Connor

@ TomO'Connor Heh. Nicht mein Home Office, sondern die "Home Office" -Site des Unternehmens . Obwohl ich mir sicher bin, dass ich das alte EVA SAN und HP Bladesystem für meinen persönlichen Gebrauch mitnehmen könnte, wenn ich nett gefragt hätte ... erwarte, dass ich nicht die ~ 25.000 US-Dollar habe, die es mich kosten würde, die Dinge zu Hause zu betreiben.
HopelessN00b

Oh. Das macht mehr Sinn .. nur
Tom O'Connor

Antworten:


13

Wie wäre es mit ovftool, um die Vorlagen direkt zwischen Hosts zu kopieren?

Ich habe dies schon einmal für VMs verwendet und es funktioniert ziemlich gut. Sie sind sich nicht sicher, ob dies auch für Vorlagen funktioniert. Wenn nicht, können Sie die Vorlagen nur vorübergehend auf VMs übertragen, um sie zu kopieren.

Eine Anleitung mit einem Beispiel finden Sie hier .

Sie können ovftool auch verwenden, um Ihre Vorlagen in .ovfPakete zu konvertieren , die sehr kompakt sein sollten, und dann die Pakete zwischen Rechenzentren mit BITS oder FTP oder SCP oder einem beliebigen Protokoll zu übertragen.


Schöne Option !! Ich vergesse oft die Cli-Tools.
ewwhite

Ich habe Ihre Antwort bearbeitet und dort den letzten Satz hinzugefügt, so wie ich es letztendlich getan habe. Durch das Konvertieren der Vorlagen in .ovfPakete wurden jeweils mehrere GB erstellt, die ich problemlos mit BITS zwischen Websites übertragen konnte.
HopelessN00b

8

Optionen:

So wie ich das sehe, habe ich drei mögliche Ansätze, obwohl ich sehr hoffe, dass mir ein besserer fehlt, auf den mich hier jemand hinweisen kann. (Idealerweise eine, bei der ich nur die 40 GiB der tatsächlichen Daten verschiebe und dies in einer wiederaufnehmbaren "Hintergrund" - oder Geschwindigkeits-gedrosselten Methode.)

  1. Kopieren Sie die Dateien zwischen Datenspeichern über den vSphere-Client.
    • Vorteil: Nur ~ 40 GiB bewegen, nicht ~ 100 GiB.
    • Nachteil: Alles andere - nicht wiederaufnehmbar, nicht Hintergrund / Geschwindigkeit gedrosselt, Schnittstelle saugt .

  2. Kopieren Sie die Datei zwischen Windows-Gästen mit BITS
    • Vorteil: Wiederaufnahme der Hintergrundübertragung.
    • Nachteil: Verschieben von ~ 60 GiB Daten, die nicht wirklich vorhanden sind.
    • Bonus: Verwendet PowerShell. <3
    • Double Secret Probation Bonus: PowerShell Remoting ermöglicht dies in einem einzigen Befehl.

  3. Kopieren Sie die Datei zwischen ESXi-Hosts über SCP
    • Vorteil: Geschwindigkeit gedrosselt und möglicherweise wiederaufnehmbar.
    • Nachteil: Verschieben von ~ 60 GiB Daten, die nicht wirklich vorhanden sind. Keine Hintergrundübertragung.
    • Bonus: Nackenbart. Zusätzlicher Nackenbart für Wiederaufnahmefähigkeit.

  4. Bessere Option für Serverfehler vorgeschlagen.
    • Vorteil: Wiederaufnahme der Hintergrundübertragung mit Geschwindigkeitsbegrenzung, bei der nur ~ 40 GiB der vorhandenen Daten verschoben werden.
    • Nachteil: Die Vergabe eines Kopfgeldes kostet rep.
    • Bonus: Lernen Sie etwas Neues und rechtfertigen Sie das Spielen von ServerFault bei der Arbeit.

Wie wäre es, wenn Sie den Datenspeicher mit powerCLI verkleinern und dann die Datei mit BITS verschieben? Versuchen Sie dies natürlich zuerst mit einem Klon.
Nathan C

@NathanC Kein schlechter Gedanke, aber die Datenspeicher im Home-Office-SAN sind tatsächlich 2 TB NFS-Volumes, die mehr als nur die fraglichen Vorlagen enthalten. Wir haben auch keinen freien Speicherplatz im SAN, daher können wir kein zusätzliches NFS-Volume zuweisen, um einen neuen Datenspeicher für diesen Zweck zu erstellen (oder Dinge zu übertragen, um einen Datenspeicher zu erhalten, der nur das enthält, was wir kopieren müssen).
HopelessN00b

Äh, hoppla ... falscher Begriff. Das Verkleinern erfolgt auf dem Volume , nicht auf dem Datenspeicher. Ich brauche natürlich etwas zu trinken.
Nathan C

1
Option 5. Kopieren Sie die Vorlagen in einen Wechselspeicher und senden Sie sie an die Remotestandorte.
Joeqwerty

@ Joeqwerty Ja, Sneakernet ist immer eine Option. Vielleicht nicht aus technischen Gründen, aber das bedeutet nicht, dass es keine gute Antwort für den allgemeinen Fall ist. (Ich habe erwartet, dass jemand irgendwann FedEx / UPS / USPS als Antwort darauf aufstellt.)
HopelessN00b

5

Hier ist eine etwas interessante Idee für Sie. Es wird bei Ihrer ersten Aussaat nicht helfen, aber ich frage mich, ob die Verwendung von Crashplans kostenlosem Produkt Ihnen bei Ihren Vorlagen helfen würde.

https://www.code42.com/store/

Es werden Deduplizierungs- und Block-Level-Differentiale ausgeführt, sodass Sie es auf einem lokalen Server in der Zentrale als "Seeder" und auf jedem Spoke-Server (in einer VM, denke ich) als "Empfänger" installieren können. Richten Sie die Sicherungen so ein, dass sie nur den Ordner enthalten, in dem die Vorlagen auf dem HQ-Server gespeichert werden. Es kann auch auf mehrere Ziele (z. B. jede "Speiche") gesichert werden. Https://support.code42.com/CrashPlan/Latest/Getting_Started/Choosing_Destinations

Die Schritte (nach dem Einrichten der Crashplan-App auf jeder Seite) funktionieren ungefähr so:

  1. Kopieren Sie die Vorlagen von den Datenspeichern auf den "Seed" -Server in das Verzeichnis, das Crashplan überwacht. In einem Gigabit-Netzwerk kann dies etwas dauern, sollte aber nicht so schlimm sein.
  2. Crashplan sollte die Dateien überwachen und mit dem Sichern auf den Speichen / Empfängern beginnen. Dies wird offensichtlich eine ganze Weile dauern.
  3. Wenn zukünftige Vorlagen nach dem ersten Seeding / Backups geändert werden, kopieren Sie sie von den tatsächlichen Datenspeichern in das Verzeichnis des "Seed" -Servers, das Crashplan überwacht, und überschreiben Sie die ursprüngliche Vorlagenkopie. Dann wird Crashplan die Änderungen der Blockebene deduplizieren und nur auf die Speichen übertragen.

Nur eine Idee ... könnte ein interessanter Weg sein, um herauszufinden, ob sie als Deduplizierungs- / Block-Level-Replikation eines armen Mannes nur für diese Dateien funktioniert.


5

Ich habe diese Art von Bewegung auf verschiedene Arten ausgeführt, aber angesichts dessen, was Sie beschrieben haben ...

FedEx oder UPS , mit einem Twist ...

Ich weiß, dass die verwendeten Server HP ProLiant- und Dell PowerEdge-Server sind. VMware bietet keine gute Unterstützung für Wechselmedien (z. B. USB) als Datenspeicherziele. Die Verwendung eines einzelnen RAID 0-Laufwerks mit einem Laufwerk (in HP-Sprache) am Hauptstandort kann jedoch funktionieren. Sie können lokal angeschlossene Festplatten auf HP- und Dell-Systemen hinzufügen und entfernen und diese als Transportmittel für Datenspeicher verwenden.

Als Vorlagen können Sie sie über vCenter auf Ihre lokale Festplatte verschieben / kopieren. Versenden Sie die Festplatten. In den empfangenden Standalone-Server einfügen. Das Array und der Datenspeicher werden über einen erneuten Scan des Speichersystems erkannt. Daten kopieren. Profitieren.

Ich habe dies auch verwendet, um Kopien für die vSphere-Replikation zu erstellen, da 24 Stunden Deltas viel einfacher zu verwalten sind als mehrere vollständige Synchronisierungen.


3

Dies ist eine Methode, die ich ziemlich oft für diese Art von Szenario verwende. Dies scheint nicht intuitiv zu sein, da Sie Dateien aus einer im Datenspeicher gespeicherten VM in den Datenspeicher selbst hochladen. Dies gibt Ihnen jedoch viel mehr Kontrolle darüber, wie die Übertragung durchgeführt wird.

  • Verwenden Sie WinRAR oder 7Zip, um Ihre Vorlage in Blöcke von 1 GB bis 2 GB aufzuteilen.
  • Erstellen Sie an jedem Remotestandort eine VM auf dem ESXi-Server. Es werden nur minimale Ressourcen benötigt, dies ist nur ein Bereitstellungsbereich.
  • Fügen Sie jeder dieser VMs ein VMDK hinzu, das groß genug ist, um die von Ihnen übertragenen Daten aufzunehmen.
  • Installieren Sie ein Betriebssystem und ein Übertragungstool Ihrer Wahl (ich verwende hierfür einen SFTP-Server).
  • Laden Sie die RAR-Vorlage auf die Staging-VM hoch.
  • Dekomprimieren Sie die RAR-Vorlage.
  • Verwenden Sie vSphere oder die Web-Benutzeroberfläche, um die Vorlage von der Staging-VM in den ESXI-Datenspeicher hochzuladen. (Dies wird eine schnelle Übertragung sein).

Vorteile:

Indem Sie die Vorlage in kleinere Teile zerlegen, verringern Sie das Risiko einer Datenbeschädigung während der Übertragung. (Wenn eine Datei beschädigt wird, müssen Sie nur diesen Teil der RAR erneut hochladen und nicht die gesamte 40-GB-Datei.)

Sie übertragen nur 40 GB (wahrscheinlich weniger, da RAR'ing weiter komprimiert).

Sie erhalten eine Auswahl an Übertragungsdienstprogrammen, wenn Sie die Übertragung innerhalb eines Betriebssystems Ihrer Wahl durchführen.

Nachteile:

Sie müssen eine Staging-VM erstellen. Ich mache dies einfacher, indem ich eine vorgefertigte Vorlage mit <1 GB habe, die nur eine reine Betriebssysteminstallation + einen SFTP-Server hat.

Das Komprimieren / Dekomprimieren einer 40-GB-Vorlage dauert je nach CPU-Ressourcen ca. 4-6 Stunden.


1

Ich habe mich einige Male mit demselben Problem befasst, und ungefähr die Hälfte der Zeit finde ich, dass ich weitaus besser dran bin, nur neue Maschinen am entfernten Standort zu bauen. Dies gilt insbesondere für sogenannte "Vorlagen" -Maschinen. Meine Version davon ist eine ziemlich einfache Maschine. Ihre Version kann etwas anderes sein.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.