certain number of processors and memory, the additional resources bring diminishing
returns. If I have a large server with 256GB of RAM and 128 processor cores, and I
install an OS directly on that box and then run an instance of a server application, it
may be able to use only 64GB of memory and 32 cores efficiently. If I use
virtualization on that same server and create four virtual machines with an instance of
the server application in each, I’ll efficiently use all of the processor cores and
memory in the server, giving much better overall performance. It’s the difference
between scaling up (adding more resources to an instance) and scaling out (adding
more instances). Remember that even if a small performance penalty exists or, more
realistically, a small amount of resource is lost that is used by the management
partition, the benefits of virtualization outweigh this with greater utilization, faster
provisioning, easier management, and so on.
Let’s recap the limits of Hyper-V in terms of what the Hyper-V host can leverage and
then the limits for each virtual machine. Each Hyper-V host can address the following:
320 physical logical processors (If you have more than this and are using
hyperthreading, turn it off so Hyper-V can access more of the real cores on the
system.)
4TB of physical RAM
There are no real limits that you will hit for networking or storage.
Each host can be allocated up to 2,048 virtual processors and can run up to 1,024
virtual machines.
Each virtual machine can be allocated the following:
64 virtual processors (assuming the physical host has 64 logical processors;
otherwise, the limit per VM will be the number of logical processors in the host)
1TB of RAM
Up to 256 VHDX files connected via the four possible SCSI controllers, and each
VHDX can be up to 64TB. In terms of storage performance, Microsoft has
demonstrated IOPS in excess of one million to a VHDX file. Obviously, you need a
powerful backend storage solution to get one million IOPS, but the point is that
even when using virtual hard disks, you can get any level of performance that is
needed without needing DirectAccess via virtual Fibre Channel, iSCSI, and so on.
Eight network adapters (An additional four legacy network adapters can be added,
but they should not be used because of poor performance and increased overhead.)
It’s because of the huge scalability of Hyper-V with Windows Server 2012, and above
that there is almost no workload that cannot be virtualized on Hyper-V. Over 99
percent of the world’s SQL Server instances could now be virtualized on Hyper-V.
The key tool that you will use to troubleshoot performance problems or even just to
see the utilization of a Hyper-V host is Performance Monitor. Task Manager is of
limited use. It will not show processor utilization by virtual machines, because the