Tricks and techniques for managing and getting the best performance from your VMs
Microsoft's Hyper-V virtualization platform has turned out to be a reasonable competitor to VMware's ESX Server. Hyper-V is making solid inroads into Windows IT infrastructures everywhere. To help you make the most of your Hyper-V installations, here are ten tips for managing and getting the best performance from Microsoft's Hyper-V virtualization platform.
10. Uninstall VM Additions before migrating VMs—If you're moving virtual machines (VMs) from Microsoft Virtual Server or Virtual PC to Hyper-V, uninstall the existing VM Additions while the VM is still running on the old platform. You can't uninstall them after moving the VM to Hyper-V.
9. Use Import and Export to manually move VMs between hosts—Live Migration is a great feature, but not everyone has the infrastructure required to support it. Moving Hyper-V VMs isn't as easy as it was with Virtual Server or Virtual PC. To move a VM, you need to open the Hyper-V Manager, select a VM, then choose the Action, Export option. Likewise, on the target Hyper-V server, you select the Import Virtual Machine option from the Actions pane.
8. Enable Windows Backup—Windows Server's Volume Shadow Copy Service (VSS) lets you back up live applications with no downtime. Although Hyper-V is VSS-aware, VSS compatibility isn't enabled out of the box—it requires adding a registry entry. For details about the process, check out the Microsoft blog "How to enable Windows Server Backup support for the Hyper-V VSS Writer."
7. Make sure you have enough physical network adapters in the host—During server consolidation, it's easy to overlook the number of physical network adapters you have in the Hyper-V host. Multiple VMs sharing network adapters can easily overload the available bandwidth. Ideally, you should dedicate a NIC for each VM. If that isn't possible, spread the network load across as many physical network adapters as you can.
6. Manage Hyper-V with PowerShell—Microsoft System Center Virtual Machine Manager (VMM) has a PowerShell provider you can use to manage Hyper-V. However, most organizations don't use either System Center or VMM. That doesn't mean you need to miss out on PowerShell management. There's a free PowerShell Management Library for Hyper-V available on CodePlex.
5. Take advantage of improved dynamic disk performance in Hyper-V R2—With the original version of Hyper-V that was released with Windows Server 2008, many administrators chose to avoid using dynamic disks because of the performance overhead associated with them. Hyper-V R2, which was released with Server 2008 R2, overhauled the performance of dynamic disks, making them nearly as fast as fixed virtual disks.
4. Access iSCSI storage from VMs—Hyper-V's New Virtual Machine Wizard makes it easy to configure access to DAS from a VM. However, you can also connect VMs to storage on iSCSI SANs. To connect a VM running Server 2008 to an iSCSI SAN, use the Administrative Tools, iSCSI Initiator option and point the iSCSI Initiator to your iSCSI SAN.
3. Boot VMs off iSCSI LUNs—You can boot VMs off iSCSI LUNs by attaching the LUNs to the Hyper-V parent partition. Next, create the VM without configuring a hard disk. After the VM is created, select the IDE controller and add a hard disk. On the Hard Disk configuration dialog box, select Physical hard disk, then select the iSCSI LUN. When you start the VM, it boots off the iSCSI LUN.
2. Take advantage of processor compatibility—Live Migration lets you move VMs between different Hyper-V hosts with no end-user downtime. However, the hosts have to have compatible processors: They must be from the same manufacturer and family. If your processors don't match, you can enable processor compatibility by opening the VM settings, clicking the Processor node, then checking the Migrate to a physical computer with a different processor version checkbox.
1. Watch out for virtual DC gotchas—If you're running a Domain Controller (DC) in a Hyper-V VM, you need to look out for a few gotchas. First, don't use the save state option for the virtual DC because it can cause synchronization problems in the domain. If you need to stop the system, you should select the VM guest's Shut Down option. You shouldn't pause a virtual DC for more than a couple of minutes because this process can disrupt replication. For the same reasons, you shouldn't take or restore snapshots of the VM acting as a DC.