Link to home
Start Free TrialLog in
Avatar of Dimarc67
Dimarc67Flag for United States of America

asked on

Hyper-V VMs see maximum of 8 processors but no more

Four-node Windows Server 2019 Hyper-V cluster, balancing 80 VMs.  Cluster was created over 6 months ago, is stable, and migrates/balances VMs successfully.

Three identical VMs running Windows Server 2008 R2 were changed to increase processors and memory from 8/16GB to 16/32GB on 9 January.  It was discovered today that the guest OS only sees 8 processors instead of the configured 16.  No other changes were made, and we have other similar VMs that run 16/32GB without issues.

Using PowerShell we're unable to find any differences in the VM configuration between VMs seeing all 16 processors vs. the three VMs that don't.  Reducing/increasing processors and memory on the three VMs makes no difference.  Allocated memory is recognized as set, but no more than 8 processors are recognized by the guest OS.

We've confirmed we can create a new VM and attache the existing virtual disk to side-step the issue, but this is cumbersome due to extensive network configurations that then need to be recreated from scratch.

Does anyone have any insights are what/where we might find the cause or resolution?
Avatar of David Johnson, CD
David Johnson, CD
Flag of Canada image

Windows Server 2008R2 Maximum Supported CPU's
Microsoft Windows Server 2008 R2 Standard Edition = 4
Microsoft Windows Server 2008 R2 Enterprise Edition = 8
Microsoft Windows Server 2008 R2 Datacenter Edition = 64
Microsoft Windows Server 2008 R2 HPC Edition = 4
Microsoft Windows Server 2008 R2 Web Edition = 4
Check to see if the problematic VM is running Standard edition vs Enterprise or Datacenter.
I am pretty sure the Standard edition of 2008 R2 has a max limit for CPU and RAM.
see the example/discussion

Check VM version
Was this cluster VMs migrated from an older hyper-v setup?

The method you outlined one .......

processors, number of cores?

Dave's link led me to an Azure site .....
Avatar of Dimarc67


Thanks for the responses.

We have confirmed the processor limitations for our scenario.  Windows Server 2019 Hyper-V limits guest VMs with OS Windows Server 2008 (non-R2) to 8 cores, but supports up to 64 cores for guest OS Windows Server 2008 R2, all editions.  (And we have a number of other Win2008R2 Std and Ent guest VMs running more than 8 cores just fine.)  Microsoft link below:

Supported Windows guest operating systems for Hyper-V on Windows Server

Yes, these three VMs (and many others) were originally created using Windows Server 2008 R2 Hyper-V around 9 years ago, then migrated to Hyper-V 2012 about 6 years ago, and then finally migrated to Hyper-V 2019 about 9 months ago.  However, this issue did not begin to occur until just over a week ago.  Prior to that they were using 16 cores without issue, and we have other VMs built at the same time with the same specs without this issue.

We believe we've narrowed the time this began to coincide with increasing memory on the same VMs from 16GB to 32GB.  Reducing them back to 16GB RAM had no effect on the recognized cores.

As a test and work-around, I created a new VM with the same specs (Gen1,16 cores, 36GB RAM), and attached the original VHD virtual disk file.  The recreated VM is seeing all 16 cores.  Cannot find any differences when examining the old and new configurations using VMM, FMC, HVM, or PowerShell.

Anyone see anything we're missing here?

See if the following example of the get-VM cmdlet and getting VM version is helpful/clears up..

I.e. When the CMs were migrated from 2008 to 2012 and then to 2019 were they, the VM's updated to the newer VM .....version
Thanks, Arnold.  I found that link as well.  Good question, but we updated all VM versions right after the last cluster upgrade.  Confirmed they're all v9.0, including the three troubled VMs.
Avatar of Dimarc67
Flag of United States of America image

Link to home
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial