Recommended initial virtual hardware for Windows guest

andreisrr

Member
Feb 2, 2024
61
8
13
What would be a recommended initial virtual hardware configuration for Windows guests, under PROXMOX-VE?

While testing with Win10 and Win_srv_2019 guests, so far I got the following:
- if machine=q35, I don't get mouse in the installer
- SPICE won't work properly at the installation phase
- SPICE display will work well with SPICE console after installation+drivers, but noVNC console becomes unusable (mouse issues)
- display = standard VGA
- no storage controller from the list (LSI 53C895; LSI 53C810; Vmware PVSCSI) without additional drivers (MegaRAID SAS 8708 works with win_server)
-

I can install Windows guest as follows: (initial hardware)
- machine=i440fx; display=vga standard; storage = virtio; network=virtio; cdrom1 = windows installer ISO; cdrom2 = virtio drivers ISO
boot the machine, start the installation process. It won't find any storage devices, so you have to provide drivers for it. Browse to the virtio scsi for your windows version.
Installer does it's job.
First boot into the OS, go to virtio drivers CD, install the whole suite, including agent.

After this, I can change display to SPICE and benefit from the SPICE client, but have mouse problems if I am constrained to noVNC.

I presume virtio would be preferred as the most efficient given the KVM architecture behind it, while other hardware need additional emulation.
I also presume, should I want to migrate an existing windows VM from the likes of vmware to proxmox, I would first have to make a full install of drivers from virtio ISO in the guest, prior to migration.

My initial quest was for the hardware config that yields the simplest initial setup.
Also, combination of virtual hardware and steps doing this with the least issues along the way.

Does anyone have better suggestion(s) ? Thank you.
 
The best practices tutorial in the wiki is a good start. Adding to it some points:

On newer windows versions it might be that some mitigations for CPU bugs hurt performance. See https://forum.proxmox.com/threads/t...-of-windows-when-the-cpu-type-is-host.163114/ how to configure the cpu settings to change it.
Normally using CPU-type host + disabling the flag "nested virtualization" (or similiar) cpu flag.
Alternatively you could set the cpu type to the output of following tools: https://github.com/credativ/ProxCLMC
It's mainly intended to get the least common CPU type in a cluster (needed for migration inside the cluster) but is also useful to find a possible CPU for Windows guests.

@Falk R. provides a customized virtio iso image to speed up migrations, it might also be of use for you: https://forum.proxmox.com/threads/a-small-game-changer-for-windows-migration-to-proxmox.181582/
 
  • Like
Reactions: UdoB