Konvertieren einer VM in einen physischen Server

Konvertieren einer VM in einen physischen Server

Ich versuche, eine VM in einen physischen dedizierten Server zu konvertieren.

Ich habe nur Zugriff auf das VM-Betriebssystem (CentOS 6.7). Ich habe keinen Zugriff auf den Hypervisor.

Ich möchte den ddBefehl verwenden, um die VM-Festplatte zu sichern und dieses Image dann ddauf die Festplatte des dedizierten Servers zu schreiben. Dazu muss ich den Server wahrscheinlich von einer Live-CD booten.

Meine Frage ist: Wird das funktionieren? Wäre es besser, alle Dateien und Verzeichnisse in/von einem Server auf einen anderen mit zu kopieren rsync?

Antwort1

Sie sollten diese Migration auf Anwendungsebene durchführen, damit Sie mit dem neuen Server einen sauberen Start haben und kein Migrationsmüll (wie Hypervisor-Tools und -Treiber) herumliegt.

Beginnen Sie mit einer Liste aller Dinge, die der Server derzeit hostet, und migrieren Sie diese Rollen einzeln auf den neuen Server. Verwenden Sie dazu Migrationsverfahren, die für jede Anwendung spezifisch sind, und legen Sie für jede Anwendung einen Rollback-Plan und ein Testverfahren fest. Schalten Sie dann den alten Server außer Betrieb.

Antwort2

Ich würde Cent OS auf der physischen Maschine installieren. Das verkürzt die Rsync-Zeit und ermöglicht Ihnen, Berechtigungen und Grub für die physische Maschine einzurichten. Dann Rsync von der VM. Ich sehe in diesem Szenario keinen Grund für Live-Boot. Sie möchten wahrscheinlich nicht das gesamte Root per Rsync synchronisieren, daher benötigen Sie einige Ausschlüsse. Was Sie ausschließen, hängt etwas von Ihrer Umgebung ab. Diese Site bietet eine schöne Beispielliste mit Ausschlüssen.

http://www.rackspace.com/knowledge_center/article/migrating-a-linux-server-from-the-command-line-0

Abhängig von Ihrem Netzwerk und der Größe des Servers können Sie möglicherweise auch eine Drosselung von Rsync in Betracht ziehen.

Also vom VM-Lauf

sudo rsync -a --bwlimit=5000 --delete -exclude-from Excludefile.txt / root@physicalserver:/

Mit -a bleiben Berechtigungen und Zeitstempel erhalten. Mit --delete werden alle Dateien gelöscht, die sich auf dem physischen Server, aber nicht auf der VM befinden. Mit --bwlimit wird rsync gedrosselt. Mit Exclude-from werden Muster ausgeschlossen, die in Ihrer Ausschlussdatei gefunden wurden.

Mögliche Probleme

Wenn Sie ACLs verwenden, werden diese während eines Rsync nicht übertragen. Sie können jedoch bei Bedarf einen Export und Import durchführen.

Wenn Sie die Disk-ID in Ihrer fstab-Datei verwenden und die neue fstab-Datei überschreiben, werden Ihre Partitionen nicht gemountet. Wenn Sie sich nicht sicher sind, schließen Sie die fstab-Datei einfach aus dem rsync aus und fügen Sie der Datei anschließend alle erforderlichen Zeilen hinzu.

Genau wie bei fstab müssen Ihre Netzwerkkonfigurationsskripte ausgeschlossen oder auf potenzielle Probleme untersucht werden.

Es gibt andere Optionen, die hierfür genauso gut funktionieren, aber diese Methode hat bei mir gut funktioniert.

Antwort3

Da der physische Server eine andere Hardware hat, würde ich nicht empfehlen, die Festplatte zu klonen. Ich würde empfehlen, dieselbe Version von CentOS auf dem physischen Server zu installieren und dann die relevanten Ordner/Verzeichnisse zu kopieren. Seien Sie beim Kopieren von /etc und anderen Systemordnern einfach selektiv.

Antwort4

einfaches dd würde nicht funktionieren – Gäste haben keine korrekten Bootpartitionen. Und dd ist langsam. Manuelle Methode – installieren Sie ein minimales CentOS 6.7 auf einem System – stellen Sie sicher, dass Sie eine separate /boot-Partition verwenden, und erstellen Sie alle anderen Partitionen vorab (einschließlich fs, aber nicht unbedingt Mountpoints).

Erstellen Sie jetzt eine Live-CD Ihres minimalen CentOS und überschreiben Sie mit NC und TAR alles außer der /boot-Partition, jeweils eine Partition auf einmal. Dies geht auch viel schneller als DD.

ein Beispiel für einen NC/TAR-Aufruf auf einer physischen Maschine:

nc -l 1234 | tar xvf -

auf der virtuellen Seite:

tar cvjf - . | nc <physical ip> 1234

Wiederholen Sie den Vorgang für jede Partition außer der Boot-Partition.

Erics VorbehalteHalten Sie auch hier die Anweisungen bereit – Sie müssen möglicherweise hardwarespezifische Dateien ändern, einschließlich Netzwerk-, Fstab- und Udev-Regeln. Sie müssen auf Modprobe achten, da sich Paravirt-Netzwerktreiber von ihren echten Gegenstücken unterscheiden.

Andere Möglichkeit: Suchen Sie im Internet nach V2P-Lösungen.

verwandte Informationen