VM Cloning mit vmkfstools und scp

0
(0)

Virtuelle Maschinen benötigen Wartung und Updates, oft auch müssen sie früher oder später migriert werden. Das klonen eignet sich dort wo produktive Maschinen ein möglichst reibungslosen Betrieb gewährleisten sollen, und um bei Änderungen keine Risiken eingehen zu müssen. Besteht die Gefahr das bei der Konfiguration oder bei einem Upgrade eines neuen Datenbankmodels etwas schief laufen könnte, oder möchte man einfach eine Kopie des aktuellen Produktivsystem erstellen, dann ist Cloning ein probates Mittel.

Dieser Post beschriebt das Cloning einer VM auf einem VMware ESXi-Host, sowie das übertragen des Klones auf einen zweiten ESXi-Host um diesen dort einzubinden.

1. Als erstes wird die VM heruntergefahren.
2. Dann den Snapshot Konsolidieren.

3. Einschalten des SSH Dienst auf ESXi-Host.
4. Login auf Hosts als root mit PuTTY.
5. Neues Verzeichnis für den Klone anlegen.

mkdir /vmfs/volumes/datastore1/ADCU12

6. VM klonen mit thin provisioning.

vmkfstools -i "/vmfs/volumes/datastore1/CUSDOM12/CUSDOM12.vmdk" -d thin "/vmfs/volumes/datastore1/ADCU12/ADCU12.vmdk"

7. Verzeichnis auf zweitem ESXi-Host anlegen.

mkdir /vmfs/volumes/datastore2/ADCU12

8. vSphere Firewall unter Konfiguration, Sicherheitsprofil, Firewall Eigenschaften, SSH-Client aktivieren.

vSphere Firewall SSH-Client aktivieren

9. Kopieren der Dateien des Klones auf den remote ESXi-Host.

find "/vmfs/volumes/datastore1/CUSDOM12" -maxdepth 1 -type f -print | grep -v ".vmdk" | while read file; do scp "$file" "root@10.127.0.103:/vmfs/volumes/datastore2/ADCU12"; done

10. Kopieren der geklonten  .vmdk-Dateien auf den remote ESXi-Host.

scp /vmfs/volumes/datastore1/ADCU12/*.vmdk root@10.127.0.103:/vmfs/volumes/datastore2/ADCU12

11. Klone in Bestandsliste aufnehmen mit durchsuchen des Datastore zur .vmx Datei.

12. Einstellungen der Klone VM bearbeiten, Festplatte entfernen, und vorhandene Festplatte hinzufügen.

Die geklonte Virtuelle Maschine kann nun auf dem zweiten ESXi-Host gebootet werden.

Weitere Script Beispiele:

# transfer mit mount NFS
src="/vmfs/volumes/datastore1/virtual_machine" ; dst="/vmfs/volumes/synology/virtual_machine" ; find $src -maxdepth 1 -type f -print | grep -v ".vmdk" | while read file; do cp "$file" "$dst$file"; done


# transfer mit scp
src="/vmfs/volumes/datastore1/virtual_machine" ; dst="/vmfs/volumes/synology/virtual_machine" ; find $src -maxdepth 1 -type f -print | grep -v ".vmdk" | while read f; do scp "$f" "root@10.127.0.103:$dst"; done

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 0 / 5. Anzahl Bewertungen: 0

Bisher keine Bewertungen! Sei der Erste, der diesen Beitrag bewertet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert