[TUTORIAL] Kleiner Gamechanger bei der Windows Migration zu Proxmox

Falk R.

Distinguished Member
Aug 2, 2021
5,758
1,843
213
46
Damme, Germany
roesing.it
Da ja schon die Methode zur Migration mit minimaler Downtime auf meinem Mist gewachsen ist, habe ich heute weitere gute Neuigkeiten.
Es ist möglich die Virtio Treiber vorab zu installieren, so das Windows direkt nach der Migration von VirtIO SCSI booten kann. Um es allen etwas leichter zu machen, habe ich ein virtio ISO modifiziert und da eine installations-Batchdatei abgelegt.
Bitte beachten, die Batchdatei muss im Pfad des CD Laufwerks als Administrator ausgeführt werden.

Download

Eventuell hat jemand mit Programmiererfahrung ja Lust, aus der Batchdatei einen richtigen Installer zu bauen.
 
Wenn ich die Batch richtig gelesen habe installiert diesen den Passenden Treiber und macht den Scharf ohne das die VM unter einem ESXi Host jemals so eine Festplatte gesehen hat!
Cool und das noch mit der neusten 271er !
 
Last edited:
Ja, genau das macht er. Habe heute auf einem Win2008R2 testen können, der wurde leider als Win7 erkannt, aber funktioniert trotzdem wunderbar.
 
Hi Falk!
Ich hab mir das mal angesehen. Das devcon Tool erstellt, soweit ich das sehe, dann das Dummy Device.
Da devcon nicht immer installiert wird, hab ich mal nachgesehen und MS empfiehlt selber doch lieber pnputil zu verwenden. https://learn.microsoft.com/en-us/windows-hardware/drivers/devtest/devcon-install

In dem Beispiel als Ersatz wird dann zuerst das Device mit devgen erstellt. Das Tool ist leider auch nicht von Haus aus installiert.

MS Binaries innerhalb der VirtIO ISO ausliefern wird Lizenztechnisch wahrscheinlich interessant, wenn man das Upstream einbringen will. ;-)

Wir sehen uns mal Upstream an ob man da im Installprozess nicht was machen kann um vlt automatisch ein Dummy Device mit der richtigen HW ID kurz einzuhängen.

Der Ansatz an sich ist soweit ganz nett :)

Danke für die Arbeit!
 
Hi Falk!
Ich hab mir das mal angesehen. Das devcon Tool erstellt, soweit ich das sehe, dann das Dummy Device.
Da devcon nicht immer installiert wird, hab ich mal nachgesehen und MS empfiehlt selber doch lieber pnputil zu verwenden. https://learn.microsoft.com/en-us/windows-hardware/drivers/devtest/devcon-install

In dem Beispiel als Ersatz wird dann zuerst das Device mit devgen erstellt. Das Tool ist leider auch nicht von Haus aus installiert.

MS Binaries innerhalb der VirtIO ISO ausliefern wird Lizenztechnisch wahrscheinlich interessant, wenn man das Upstream einbringen will. ;-)

Wir sehen uns mal Upstream an ob man da im Installprozess nicht was machen kann um vlt automatisch ein Dummy Device mit der richtigen HW ID kurz einzuhängen.

Der Ansatz an sich ist soweit ganz nett :)

Danke für die Arbeit!
Hi Aaron,
mit pnputil habe ich das nicht bootfähig hinbekommen. Devcon trägt stumpf die HW ID ein, auch wenn das Gerät nicht vorhanden ist.
Ich habe deshalb erst einmal eine Modifizierte ISO erstellt zum Heimgebrauch.
Wenn du weißt wie man ein Dummydevice im Windows erzeugen kann, dann wäre das natürlich noch einfacher und der normale Installationsprozess würde dann alles übernehmen.
 
  • Like
Reactions: Johannes S
mit pnputil habe ich das nicht bootfähig hinbekommen.
ja, ich habs nicht ausprobiert, aber der von mir verlinkten Seite zu devcon ist folgendes als Ersatz vorgeschlagen:
Code:
devgen /add /bus ROOT /hardwareid HardwareID
pnputil /add-driver INFfile /install
Aber devgen ist leider auch etwas das man extra runterladen muss. Ich kenn mich ad-hoc zu wenig aus, aber evtl. kann man im Rahmen des Installers direkt über die Windows API das dummy device auch anlegen und entfernen, ohne auf Tools zurückgreifen zu müssen.
 
Last edited:
  • Like
Reactions: Johannes S
Ich finde die Idee mit der Batch eigentlich gut. Sie kann von jedermann an neue Build-Nummern angepasst werden, wenn er das Beispielsweise mit Insider Versionen testen möchte. Zumindest ist das transparent (kann jeder lesen, verstehen oder auch nicht :cool: ) und nicht in einer EXE eingebaut.
My2Cent!
 
  • Like
Reactions: Falk R.
Verstehe ich nicht ganz. Wo ist Vorteil ggü.:
  • auf der zu migrierenden Maschine die Virtio-Treiber wie gewohnt installieren.
  • Maschine migrieren, starten und herunterfahren
  • Einstellungen in PVE anpassen.
  • Maschine neu starten.
??
 
Verstehe ich nicht ganz. Wo ist Vorteil ggü.:
  • auf der zu migrierenden Maschine die Virtio-Treiber wie gewohnt installieren.
  • Maschine migrieren, starten und herunterfahren
  • Einstellungen in PVE anpassen.
  • Maschine neu starten.
??
Migrationen mit minimaler Downtime, wie z.B. im Gesundheitssektor.
Im Krankenhaus laufen diverse Systeme 24x7x365 und da versucht man die Downtime zu minimieren.
Wenn du den Treiber bereits vorher bootfähig drin hast, per diskpart die Platten nach dem wechsel auch wieder automatisch online nehmen lassen und die IP direkt wieder per DHCP zu geben, verkürzt die Downtime auf einen Reboot, was je nach OS mal gerade 1-2 Minuten sind.
Damit stört man den Betrieb deutlich weniger und kann verhindern, dass diese Krankenhaus sich von der Notfallversorgung abmelden muss.