Windows Server 2016 Migration von vmware esxi

  • Moin zusammen,


    kurz die Vorgeschichte:

    einer unserer Kunden hat aktuell vmware esxi als Virtualisierungsplattform im Einsatz. Die Hardware ist mittlerweile gut alt und erfüllt nicht mehr die gestiegenen Anforderungen. Aus diesem Grund ist geplant, einzelne VMs zu netcup auszulagern. Zugriff findet über einen Site-to-Site-VPN-Tunnel und die VLAN-Funktionalität bei netcup statt - die öffentlichen Netzwerkinterfaces sind komplett deaktiviert.


    Nun zum eigentlichen Problem: Wir haben erfolgreich eine bestehende Windows-VM (Windows Server 2016) exportiert und ins qcow2-Format umgewandelt. Diese ließ sich dann auch problemlos importieren, läuft aber (natürlich) nur mit dem IDE-Treiber für die Festplatte. Jegliche Versuche mit SCSI oder VIRTIO zu booten führt zu der Fehlermeldung "INACCESSIBLE_BOOT_DEVICE". Auch der Versuch die Treiber vorab manuell zu installieren (Geräte-Manager, Legacy-Hardware hinzufügen, manuell installieren, virtio-Treiber-CD auswählen, ...) führt nach dem Umstellen zu VIRTIO oder SCSI zum gleichen Fehler.


    Online liest man, dass eine zweite Platte, hinzugefügt als VIRTIO/SCSI zum korrekten Installieren der Treiber führt und nach dem entfernen der Platte auch das Bootlaufwerk umgestellt werden kann - leider ist es aber bei netcup nicht möglich eine zweite HDD hinzuzufügen...


    Hat jemand von euch eine solche Migration erfolgreich hinter sich? Wie bekommt man Windows Server 2016 nachträglich mit dem SCSI-Treiber zum laufen?


    Eine Möglichkeit hätte ich natürlich noch - ich könnte jedes Image erst in mein Proxmox-Cluster einbinden, dort den Treiber installieren und es anschließend wieder exportieren und bei netcup einspielen - aus meiner Sicht zu viel Aufwand...


    Viele Grüße

    Tobi

  • Hat jemand von euch eine solche Migration erfolgreich hinter sich? Wie bekommt man Windows Server 2016 nachträglich mit dem SCSI-Treiber zum laufen?

    Ich habe bereits einen Windows 10 Gast erfolgreich von SATA auf SCSI migriert.


    Du musst dabei zwei Probleme überwinden.

    1. die Treiber installieren. Das geht am einfachsten über den Gerätemanager, wenn du einen zweiten Datenträger eingehängt hast. Offensichtlich geht das hier nicht. D.h. du musst die Treiber ohne Gerätemanager installieren. Dabei kann ich dir aber nicht weiter helfen. (Die meisten INI Files haben im Kontextmenü eine Install Optionen. Wenn ich das benutze, schlägt das allerdings meistens fehl.)


    2. der Bootloader muss die Änderung erfahren. Dieser ist nämlich auf eine Hardwaretopologie fest codiert.

    Mit Adminrechten: bcdedit /set {current} safeboot minimal

    Herunterfahren, Treiber im SCP ändern, Hochfahren, wieder mit Adminrechten: bcdedit /deletevalue {current} safeboot


    Näheres dazu kannst du hier lesen: https://superuser.com/a/1253728 - dort gibt es auch weitere Antworten mit anderen Möglichkeiten.


    Folgende Resource habe ich auch noch gefunden:

    https://forums.unraid.net/topi…stallation-to-vm-problem/


    Falls du dir unsicher bist ob SCSI oder VirtIO, nimm SCSI und den dazugehörigen VirtIOSCSI Treiber. Dieser ist viel neuerer als VirtIO, sollte einen Geschwindigkeitsvorteil haben und ist stabiler.

  • D.h. du musst die Treiber ohne Gerätemanager installieren. Dabei kann ich dir aber nicht weiter helfen. (Die meisten INI Files haben im Kontextmenü eine Install Optionen. Wenn ich das benutze, schlägt das allerdings meistens fehl.)

    pnputil -i -a <driverinf>

    u.a. bei https://stackoverflow.com/questions/22496847/installing-a-driver-inf-file-from-command-line

  • Moin zusammen,


    danke H6G und eripek für eure Antworten.


    Das mit dem Safemode hatte ich schon versucht, blieb bei mir aber ohne Erfolg - mit SCSI bootet die Windows-Installation nicht. Zurückgestellt auf IDE bootet er dann in den Safemode....


    Mit viel Probieren und einigen weiteren Links [0] und [1] hab ich es dann endlich geschafft die VM zumindest mit dem VIRTIO-Treiber zu booten. Die Performance (insb. auch beim booten) ist spürbar besser als zuvor. Natürlich liefert der SCSI-Treiber noch einige Vorteile (discard, ...), für mich ist hier aber erstmal Ende. Wenn ich das so bei allen 5 restlichen Maschinen hinbekomme, bin ich erstmal zufrieden ;)



    [0] https://dae.me/blog/2357/how-t…n-windows-system-restore/

    [1] https://christian.hofstaedtler…-dism-to-add-drivers.html

  • Gestern waren die restlichen Maschinen dran und es gibt eine neue Erkenntnis: die von netcup angebotene virtio-Treiber-CD scheint nicht mehr mit einem aktuellen Windows Server 2016 kompatibel zu sein - zumindest nicht, wenn man ein bestehendes System auf virtio/scsi migrieren möchte.


    Mit den aktuellsten (latest) Virtio-Treibern ging die Migration dann ganz flott: einfach den Treiber als Legacy-Hardware im Gerätemanager hinzufügen, VM herunterfahren, Treiber im SCP wechseln auf scsi und wieder starten - ganz ohne all das Gefrickel mit dism, Startreparatur usw!


    Mittlerweile laufen alle VMs über den scsi Treiber :)

  • Moin tldev,


    danke für die Beschreibung.

    Leider habe ich damit keinen Erfolg.

    Ich versuche meine 4 Windows Server 2019 von Virtio auf SCSI zu ändern.

    Es kommt immer bei erneuten Start zum Bluescreen beim booten (habe die aktuelle latest virtio-win.iso geladen).

    Scheinbar muss ich dann doch das Gefrickel versuchen oder damit leben :)


    Viele Grüße

  • Ich versuche meine 4 Windows Server 2019 von Virtio auf SCSI zu ändern.

    Das könnte eine komplexere Geschichte werden, als Du denkst. Windows ist da leider nicht so pflegeleicht wie Linux...

    Der einfachste Weg könnte sein, die neuen Treiber im Safe Mode zu installieren und dann zu wechseln. https://social.technet.microso…er-2012-boot-disk-to-scsi

    Das allein wird aber nicht die Lösung sein. Ich hab mich da selber einmal erfolglos gespielt.