The Performance Tuning Guidelines for Windows Server 2008 has been updated to include perf guidelines for virtualization servers. To calculate the host RAM = (VMRamRequirementMB x #ofVMs) + (#of VMs x 32MBVMOverhead ) + (512MBHost),
The guide says:
...the root partition must have sufficient memory (leave at least 512 MB available) to provide services such as I/O virtualization, snapshot, and management to support the child partitions.
A good standard for the memory overhead of each VM is 32 MB for the first 1 GB of virtual RAM plus another 8 MB for each additional GB of virtual RAM. This should be factored in the calculations of how many VMs to host on a physical server. The memory overhead varies depending on the actual load and amount of memory that is assigned to each VM.
The Performance Tuning Guidelines for Windows Server 2008 has been updated to include perf guidelines for virtualization servers as well as:
Advice in the paper includes:
For some insight into how Microsoft IT uses virtualization (they use SANs for disk storage) listen to the David Lef podcast on How Microsoft IT Uses Hyper-V.
Additional tips:
Hyper‑V publishes performance counters to help characterize the behavior of the virtualization server and break out the resource usage. The standard set of tools for viewing performance counters in Windows include Performance Monitor (perfmon.exe) and logman.exe, which can display and log the Hyper‑V performance counters. The names of the relevant counter objects are prefixed with “Hyper‑V.”
You should always measure the CPU usage of the physical system through the Hyper‑V Hypervisor Logical Processor performance counters. The statistics that Task Manager and Performance Monitor report in the root and child partitions do not fully capture the CPU usage.
Particularly if you are installing Hyper-V on an HP Proliant, be aware of the issue in KB 950792 before you start: When you try to enable, disable, or update Hyper-V technology, the process stops responding
• You enabled, disabled, or updated Hyper-V on a Hewlett-Packard (HP) server.
• The HP Network Configuration Utility was installed.
Hyper-V updates are distributed by Windows Update. To help prevent you from experiencing this problem, Windows Update will not present Hyper-V updates to computers that have the HP Network Configuration Utility installed. For more information about the prerequisites to install and to update Hyper-V on HP servers, visit the following Microsoft Web site:
http://www.microsoft.com/windowsserver2008/en/us/hyperv-install.aspx (http://www.microsoft.com/windowsserver2008/en/us/hyperv-install.aspx)
The Performance Tuning Guidelines for Windows Server 2008 has been updated to include perf guidelines for virtualization servers. It also gives the following advice for perftuning your VMs in order to save an additional percent or two of perf:
Minimizing the background activity in idle VMs releases CPU cycles that can be used elsewhere by other VMs or saved to reduce power consumption. Windows guests typically use less than 1 percent of one CPU when they are idle. The following are several best practices for minimizing the background CPU usage of a VM:
· Install the latest version of VM integration services.
· Remove the emulated network adapter through the VM settings dialog box (use a synthetic adapter).
· Disable the screen saver or select a blank screen saver.
· Remove unused devices such as the CD-ROM and COM port, or disconnect their media.
· Keep the Windows guest at the logon screen when it is not being used (and disable its screen saver).
· Use Windows Server 2008 for the guest operating system.
· Disable, throttle, or stagger periodic activity such as backup and defragmentation if appropriate.
· Review scheduled tasks and services enabled by default.
· Improve server applications to reduce periodic activity (such as timers).
The following are additional best practices for configuring a client version of Windows in a VM to reduce the overall CPU usage:
· Disable background services such as SuperFetch and Windows Search.
· Disable scheduled tasks such as Scheduled Defrag.
· Disable AeroGlass and other user interface effects (through the System application in Control Panel).
Increased functionality and virtual machine control in the Windows Server 2008 Failover Cluster Management console for the Hyper-V role (KB 951308) is now available. The KB describes the changes in the hotfx that update the Failover Cluster Management console (the Cluadmin.msc file) and server components of the failover cluster, including:
FYI
824684 (http://support.microsoft.com/kb/824684/LN/) Description of the standard terminology that is used to describe Microsoft software updates
950050 (http://support.microsoft.com/kb/950050/) Description of the update for the release version of the Hyper-V technology for Windows Server 2008
Took a quick minute today to review blog traffic stats for my blog since inception:
One of our stats repositories totals monthly RSS and Web views, that’s what I’m graphing above.
22,973 a month to 82,218 in 597 posts.
Are these good numbers, bad numbers? How to judge? My manager seems pleased that the trend is upward, I guess I should be as well.
Your comments/perspectives/analysis appreciated.
Check out Jamesone's work at www.codeplex.com/psHyperV
Including:
Finding a VM Get-VM, Choose-VM , Get-VMHost
Connecting to a VM New-VMConnectSession
Discovering and manipulating Machine states Get-VMState , Set-VMState , Convert-VmState, Ping-VM , Shutdown-VM , Start-VM, Stop-VM, Suspend-VM Get-VMKVP, Get-VMJPEG
Backing up, exporting and snapshotting VMs Export-VM , Get-VMSnapshot, Choose-VMSnapshot , Apply-VMSnapshot , New-VMSnapshot ,Remove-VMSnapshot, Get-VMSnapshotTree, Get-VmBackupScript Adding and removing VMs, configuring motherboard settings. New-VM , Remove-VM , Set-VM , Get-VMCPUCount, Set-VMCPUCount, Get-VMMemory, Set-VMMemory
Manipulating Disk controllers, drives and disk images Get-VMDiskController Add-VMSCSIController , Remove-VMSCSIcontroller Get-VMDriveByController , Add-VMDRIVE , Remove-VMdrive Get-VMDiskByDrive, Add-VMDISK , Set-VMDisk, Get-VMDisk Get-VMFloppyDisk , Add-VMFloppyDisk Add-VMNewHardDisk
Manipluating Network Interface Cards Get-VMNic , List-VMNic , Choose-VMNIC, Add-VMNIC, Remove-VMNIC , Set-VMNICAddress , Set-VMNICConnection , Get-VMNicport , Get-VMnicSwitch, Choose-VMSwitch, New-VMSwitchPort, Get-VMByMACaddress, Choose-VMExternalEthernet, New-VMExternalSwitch, New-VMInternalSwitch,New-VmPrivateSwitch Working with VHD files Get-VHDDefaultPath, Get-VHDInfo, New-VHD, Compact-VHD, Test-VHD,Convert-VHD,Merge-VHD,Mount-VHD, Unmount-VHD
Helpful? Valuable? Leave feedback here or on Codeplex se we can get more help of this kind published. Thanks in advance
Here's a quick jumpstart for you when you are in Hyper-V troubleshooting mode:
Description of the update for the release version of the Hyper-V technology for Windows Server 2008
(950050) - Describes the update to the release version of the Hyper-V technology for Windows Server 2008. http://support.microsoft.com/kb/950050/en-us
Description of the Windows Vista Service Pack 1 Management Tools update for the release version of Hyper-V
(952627) - Describes the Windows Vista Service Pack 1 Management Tools update package for the release version of Hyper-V. http://support.microsoft.com/kb/952627/en-us
You are not prompted for credentials after you receive an "Access Denied" error message when you try to connect to a virtual machine from the Windows Server 2008 Hyper-V MMC snap-in
(954279) - Discusses a problem in which you are not prompted for credentials after you receive an "Access Denied" error message when you try to connect to a virtual machine from the Windows Server 2008 Hyper-V MMC snap-in. Provides a resolution. http://support.microsoft.com/kb/954279/en-us
Increased functionality and virtual machine control in the Windows Server 2008 Failover Cluster Management console for the Hyper-V role
(951308) - Discusses the increased functionality and virtual machine control in the Windows Server 2008 Failover Clustfer Management console for the Hyper-V role. http://support.microsoft.com/kb/951308/en-us
Event ID: 5936 is recorded when you try to create a new cluster in Windows Server 2008
(947725) - Describes an issue that may occur when the CNO of a destroyed cluster is not successfully removed from Active Directory. http://support.microsoft.com/kb/947725/en-us
When you try to enable, disable, or update Hyper-V technology, the process stops responding
(950792) - Describes a problem that occurs when you try to enable, disable, or update Hyper-V technology on a Windows Server 2008-based computer. The resolution is to rename the Cpqteam.dll file and then to try again. http://support.microsoft.com/kb/950792/en-us
Virtual machines that were created on the beta version of the Hyper-V role do not start after the Hyper-V role is updated to a later version
(949222) - Describes an issue in which a virtual machine cannot start. To resolve this issue, you must delete all virtual machines that have the beta version of Hyper-V. Then, re-create the virtual machines. http://support.microsoft.com/kb/949222/en-us
The NLB host does not converge as expected on Windows Server 2008 Hyper-V virtual machines
(953828) - Fixes a problem that occurs when a Windows Server 2008 virtual machine is running in the Hyper-V environment on a Windows Server 2008 host computer. http://support.microsoft.com/kb/953828/en-us
Guest operating systems that are supported on a Hyper-V virtual machine
(954958) - Describes the server and client guest operating systems that are supported on a Hyper-V virtual machine that is running on a Windows Server 2008-based computer. http://support.microsoft.com/kb/954958/en-us
Sleep and hibernate power features are not available when you enable Hyper-V technology on a Windows Server 2008-based portable computer
(954418) - Describes that sleep and hibernate power features are not available when you enable Hyper-V technology on a Windows Server 2008-based portable computer. http://support.microsoft.com/kb/954418/en-us
Still having trouble? Don't forget to try the Hyper-V forum: http://forums.technet.microsoft.com/en-US/winserverhyperv/threads/
Free (as in beer) blog and Twitter aggregator (independent bloggers and 14 Microsoft bloggers on either TechNet or MSDN) for virtualization: VirtualizationFeed at http://www.virtualizationfeed.com/. Most handy if you are a lover of aggregators.
Taylor Brown's blog post shows you the WMI that will tell you what physical disk a virtual machine is using when configured for passthough on the host: http://blogs.msdn.com/taylorb/archive/2008/08/21/hyper-v-wmi-what-vhd-s-physical-disks-are-associated-with-a-virtual-machine.aspx.
A best practice for running Hyper-V is to run on Server Core installation of Windows Server 2008. If you follow another best practice, and do not run any workload in the parent partition (running all workloads as VMs in child partitions), then, once you get setup, there is really not much at all you have to do on the parent partition. The lack of a UI is not such a big thing in that (majority) case.
Until you need to <foo>…or <bar>, or (heaven forfend) <baz>.
So, how do you do something on Core when you have only a command line*?
You probably be won’t be doing whatever it is very often, so you probably haven't memorized the commands. Bookmark this post for reference ;-)
Start at the Windows Command Reference.
The A-Z List shows an alphabetical list of all of the commands
Read the Command-Line Syntax Key for the command formatting
Or, if you are task-oriented, look in the Technology Lists for the commands listed by their associated technology
Read the Server Core blog for tips.
See also the Windows Server 2008 Network Shell (Netsh) Technical Reference for commands to manage Dynamic Host Configuration Protocol (DHCP), Network Policy Server (NPS), Network Access Protection (NAP), and Routing and Remote Access Services (RRAS), among many other technologies for which there are netsh commands. Netsh commands offer an alternative to configuring network technologies using the Windows interface. You can run netsh commands in batch files and scripts, and you can run them from the netsh prompt by manually typing commands. You can use netsh commands to configure both local and remote computers.
* You can't use PowerShell on Core – because no .NET on core:-(
It is a FAQ - "Is my workload supported on Hyper-V?". Now the answer is posted in KB957006 Microsoft server software and supported virtualization environments. Rock on.
This article discusses the support policy for running Microsoft server software within the following supported virtualization environments:
•Windows Server 2008 with Hyper-V
•Microsoft Hyper-V Server 2008
•Supported partners' virtualization software For more information, click the following article number to view the article in the Microsoft Knowledge Base:
944987 (http://support.microsoft.com/kb/944987/) Support partners for non-Microsoft hardware virtualization software
•Server Virtualization Validation Program (SVVP) For more information, visit the following Microsoft Web site:
http://www.windowsservercatalog.com/svvp/ (http://www.windowsservercatalog.com/svvp/)
Microsoft supports Microsoft server software that is running within the supported virtualization environments that are listed in the "More Information" section, subject to the Microsoft Support Life-Cycle policy. For more information, visit the following Microsoft Web site:
http://support.microsoft.com/?pr=lifecycle (http://support.microsoft.com/?pr=lifecycle)
In some cases, specific versions of Microsoft server software are required for support. These versions are noted here and may be updated as needed. Note Not all software makes good candidates for running within a virtualized environment. For example, if an application has specific hardware requirements such as access to a physical PCI card, it cannot be supported within a virtual machine because virtual machines generally do not have access to underlying physical hardware.
Read about the licensing update on presspass: New Microsoft Licensing and Support Eases Path to Virtualization
“Expanded Technical Support
Microsoft has updated its technical support policy for 31 server applications so that customers can receive technical support when deploying those applications on Windows Server 2008 Hyper-V, Microsoft Hyper-V Server or any other third-party validated virtualization platform. Now customers can get the same level of product support in a virtualized environment that they are accustomed to with nonvirtual environments. More information is available at http://support.microsoft.com.
To enable this support policy, Microsoft launched the Server Virtualization Validation Program in June 2008. The program is open to any software vendor to test and validate its virtualization software to run Windows Server 2008 and previous versions of Windows Server. To date, Cisco Systems Inc., Citrix Systems Inc., Novell Inc., Sun Microsystems Inc. and Virtual Iron Software Inc. are participating in the program.
“Technical support of virtualized images is an industrywide challenge,” said Roger Levy, senior vice president and general manager of open platform solutions at Novell. “Novell and Microsoft continue to collaborate to optimize bidirectional virtualization between Windows Server and SUSE Linux Enterprise with Xen. Microsoft’s Server Virtualization Validation Program provides customers with additional peace of mind when they run Windows as a guest in a validated environment such as SUSE Linux Enterprise.” “
How do you measure the return on investment (ROI) on content? Let's call this concept Return on Content Investment (ROCI). Wikipedia provides a close approximation as relates to marketing: return on marketing investment (ROMI).
Senior Marketing Manager Aaron Lilly blogs about a couple of tools for this at Social Media - Measuring the Buzz. He references some tools that will bring you interesting data:
- Alerts (Live Alerts, Yahoo Alerts, Google Alerts) - Blog Pulse (Technorati, Nielsen Blog Pulse) - Micro Blog Pulse (TweetScan, Twittermeter)
Are these the tools Microsoft should use to measure the value (ROCI) of the content on MSDN and TechNet? What about the forums? Blogs?
Leave comments.
John Martin's Blog recently announced the Social Bookmarking Preview, "so that technical professionals can better connect with each other, share knowledge, and succeed." Remains to be seen how IT Pros will respond to this, but the new features include:
One example; here's the feed for my tags on Hyper-V: http://social.technet.microsoft.com/bookmarks/en-US/user/tonysoper/#sort=recent&page=0&filter=public&tags=hyperv
And here's the all-up feed of my tags: http://social.technet.microsoft.com/bookmarks/en-US/user/tonysoper/#sort=recent&page=0&filter=public
You can learn more and leave feedback in the Social Bookmarks Discussion Forum.
How to at: http://social.msdn.microsoft.com/bookmarks/en-US/GettingStarted/
And there is an interesting background buzz app at http://ticker.microsoftcommunities.com/
Minor updates to the Hyper-V Planning and Deployment Guide are live today.
Others who downloaded Hyper-V Planning and Deployment Guide also downloaded:
While it will be great to get together for our virtualization launch on Sep 8, we're obviously not always together... Let's collaborate on a collection of the best Hyper-V resources that we can provide to launch attendees, but continue to build on afterwards.
TechNet will be launching a new application on Sep 9 designed to open up TechNet to more community input. Social Bookmarking (currently in Preview) will allow you to see the most popular resources for any topic, from across the interwebs, as determined by the community.
As of this writing, there are 104 bookmarks saved with the "hyper-v" tag, but most have been provided by just 2-3 Microsoft employees. While these Microsoft-focus links provide value, the entire community could make this set of links even richer. Add to the list, or "vote up" what you see there by adding existing bookmarks to your own. Watch them come in as they're submitted on this RSS feed.
The most popular current bookmarks will be integrated into the Virtualization Solution Center, as long as they use the "hyper-v" tag. I would suggest using 2-3 additional tags to make it easy to query for bookmarks on a related topic like "TS" or "VMM" or "Softgrid", whichever applies.
The goal is that on Sep 9, these URLs will be one of the most valuable destinations for great Hyper-V resources. (Note that these URLs won't be active until Sep 9, as our domain structure is changing for the release.)
- HyperV bookmarks (RSS)
- HyperV + VMM bookmarks (RSS)
... and so on.
So sign in at http://www.technetbookmarks.com and help us start building the ultimate database of Hyper-V links on the web!
Also check out the