Windows Server 2008R2 introduced the notion of Hyper-V Dynamic Memory and added a registry entry to (HKLM\SOFTWARE\Microsoft\Windows\MemoryReserve) to make sure that you did not oversubscribe the RAM, leaving the host operating system short. That allowed you to easily add up the amount of RAM your host need to run and support its VMs.
How Much Memory Does A Hyper-V Host Use For Itself?
Then Server 2012 changed the math because it Microsoft improved its calculations and said to stop playing with that registry entry:
Hyper-V running on Windows Server 2012 and Windows Server 2012 R2 automatically calculates an amount of memory to reserve for exclusive use by the management host operating system. This memory is used to run virtualization services. If the computer is part of a failover cluster, Hyper-V also reserves enough memory to run failover cluster services. In previous versions of Hyper-V you might have needed to modify the MemoryReserve registry setting to ensure adequate memory for these functions. This is no longer necessary for Hyper-V running on Windows Server 2012 and Windows Server 2012 R2.
Hyper-V Dynamic Memory Overview | Microsoft Learn
Microsoft provide this table for guidance as to how much the Host OS would keep for itself:
Physical Memory in Host Server | “Host Reserve” |
8-32 GB | 2-2.5 GB |
64-128 GB | 4 GB |
256 GB | 6 GB |
512 GB | 10 GB |
1 TB | 18 GB |
2 TB | 34 GB |
4 TB | 66 GB |
How Much Memory Does a Hyper-V Host Need?
Between having to guess how much RAM the host really needs and how much memory the Dynamic RAM algorithms are assigning, you really have a hard time calculating how much memory you need.
Task Manager does not provide an accurate indication of how much RAM is being used by the host OS, so you have to use Performance Monitor and look at > Hyper-V Dynamic Memory Balancer\Available Memory Instance = System Balancer
The bottom line is you are going to have to guess how much RAM to buy for your Hyper-V host servers. You should know in advance that you are going to calculate the wrong total because Hyper-V does a great job of Dynamic Memory management and as demand increases so will the Dynamic Memory usage. If your company:
- hires an extra 20 users causing increased demand or
- adds a new app that spikes its RAM needs from time to time (i.e. Sage Accounting), or
- closes a division, office or department
- adds a new virtual machine because they have new apps or merged with a another company
the memory assigned to a given virtual machine IS going to change… and that is a good thing.
How To Buy a Server to Use as a Hyper-V Host?
In the end the best you can hope for it to do the basic cacluations, like:
# | Usage | Average Requirement |
Host | Host Server with 256 GB | 6 GB |
VM1 | Accounting | 48 GB Static |
VM2 | Application Server | 4 GB Dynamic |
VM3 | Application Server | 6 GB Dynamic |
VM4 | Application Server | 16 GB Dynamic |
VM5 | File & Print Server | 4 GB Dynamic |
VM6 | Domain Controller | 4 GB Dynamic |
VM7 | File Server | 2 GB Dynamic |
VM8 | SQL Server | 32 GB Static |
VM9 | Admin Utilities Server | 16 GB Static |
TOTAL | 138 GB |
In this case you have bought too much RAM… but that is for today. Tomorrow something will change and you will need more so that 256GB is not a waste.
We also always recommend buying host server that still have unused memory slots, because that 256GB just might not cut it if your company buys another company, which adds 10 more VM’s to your host.
0 Comments