Tuesday, November 9, 2010

Getting started with Dynamic Memory in Windows Server 2008 R2 SP 1

With Windows Server 2008 R2 SP1, the new Dynamic Memory feature provides a means to increase the virtual machine density on your Hyper-V host, and use system memory more effectively by dynamically adding and removing memory from virtual machines as required by workloads. In order to start testing Hyper-V Dynamic Memory, I would like to mention some basic things about the Dynamic Memory feature in SP1 for Windows Server 2008 R2.

First thing first: Which guest operating system will support this feature (also after beta/RC)

·         Windows Server 2003 Web, Standard, Enterprise, Datacenter (x86 and x64)
·         Windows Server 2003 R2 Web, Standard, Enterprise, Datacenter (x86 and x64)
·         Windows Server 2008 Web, Standard, Enterprise, Datacenter (x86 and x64)
·         Windows server 2008 R2 Web, Standard, Enterprise, Datacenter (x86 and x64)
·         Windows Vista Enterprise and Ultimate (x86 and x64)
·         Windows 7 Enterprise and Ultimate (x86 and x64)

You can download the SP1 RC from here
(If you have installed the Beta version of SP1, you have to uninstall this one before the RC version)

After the install, configure the important registry setting in Windows, so that your parent will have enough RAM to function.

If we take another look at the supported guest operating systems above, we know that we have to mention for them as well, that the host now supports dynamic memory. To do this, we have to install the new version of IC.
This is relative simple.

1.       Start up your VMs
2.       Click ‘Action’ à ‘Insert the Integration Services Setup Disk’

3.       Choose to install this new version, and shut down your VMs.

Now, lets take a look at the settings on a VM.

In Hyper-V Manager, select one of your VMs that has the updated version of IC installed, and select ‘Settings..’
Select Memory, and configure the Dynamic setting.
In this example, I set 512MB as the Startup RAM. This amount of RAM is allocated from the host every time the VM starts up. The ‘Maximum RAM’ setting is as it mention, - the maximum RAM that the VM can use  from the parent.
(You can also set priority on your VMs, on how they will line up for available memory from the parent based on their needs.)

Now, let us start up this VM, and try to stress the use of RAM.
As you can see, the VM demand some extra RAM (in this case I am installing SQL Express on my VM).

Congratulate, you are now ready to play around with the Dynamic Memory feature.

I also have to mention that there are some new performance counters related to Dynamic Memory in the parent partition.

Also check out Brian`s post for a great perspective of how you can use the Dynamic Memory feature for better understanding of your applications: http://itproctology.blogspot.com/2010/09/hyper-v-dynamic-memory-as-tool-for.html

No comments: