VMM 2012 Technical Documentation, including Step-by Step Guides
VMM 2012 Official Cmdlet Reference
VMM 2012 TechNet Launchpad
VMM 2012 PowerShell Cheat Sheet
VMM 2008 PowerShell Cheat Sheet
2008 R2 Guides and Reference Downloads!
VMM 2008 Interactive Decision Flow
Jonathan's Virtual Blog
Virtual Machine Manager - Orchestrator - Solutions and Guidance
This blog focuses on VMM and Orchestrator, and for VMM alone there are 20 fixes in this update. Many of these corrections relate to networking. This update has helped a number of customers I have worked with resolve their issues entirely. Even in a controlled classroom environment (I’m out delivering training this week. Go OKC!) the update has made a strong positive impact. As for Orchestrator, there are a few fixes as well, both of which stemmed from customer cases I worked involving Oracle results and SNMP Traps.
This is one update that should be installed immediately, or as soon as your outage window allows. There is one caveat: ‘In order to install Update Rollup 2 package for System Center 2012 SP1- Virtual Machine Manager, you will need to uninstall Update Rollup 1 for System Center SP1 - Virtual Machine Manager package from your system.’ See this blog post for a great deal of information on the subject. Also, if you need to uninstall SC VMM for some unrelated reason, you will need to remove this update first to do so.
Grab the update here. Description of Update Rollup 2 for System Center 2012 Service Pack 1
A list of fixes in the update…
Virtual Machine Manager Server (KB2826405) and Administration Console (KB2826392)
Issue 1
The SUSE Linux Enterprise Server 11 operating system is missing from the Linux OS list.
Issue 2
A virtual machine cannot start after migration from Windows 7 to Windows 8 when the DiscardSavedState method is used.
Issue 3
A connection to the VMware virtual machine remote console session cannot be established.
Issue 4
Externally published VMNDs are filtered incorrectly.
Issue 5
When you remove a virtual switch extension property or edit a virtual switch extension manager connection string, a user-interface generated script also removes the HostGroups that are associated with VSEM.
Issue 6
UPPSet is not set on a physical network adapter when you add the network adapter to a team and when the network adapter is the first in the list of network adapters.
Issue 7
The default gateway is missing on a host virtual network adapter after you add a second physical network adapter to the logical switch.
Issue 8
Static IP pool that has the first address in a subnet fails for external network type.
Issue 9
VMM crashes during host refresher when VMM is unable to create a CimSession with the remote host.
Issue 10
Standard (legacy) virtual switch creation on Windows 8 hosts with management virtual network adapter does not preserve the IP properties of the physical network adapter.
Issue 11
The administration user interface crashes with a NullReferenceException error when you click Remediate on a host instead of a virtual network adapter.
Issue 12
The Virtual Machine Manager user interface displays a network adapter in a "Not Connected" state.
Issue 13
The Virtual Machine Manager stops responding with high CPU usage for five to ten minutes when you configure a VMND that has 2,000 network segments.
Issue 14
The host virtual network adapter property for a management adapter does not show port classification.
Issue 15
Live Migration fails at 26 percent when the network adapter is attached to an isolated virtual machine network.
Issue 16
The Virtual Machine Manager Service crashes when a virtual machine that does not have a port profile is migrated to a cluster by using a logical switch that has a default port profile set.
Issue 17
Running Dynamic Optimizer on a cluster with incompatible host CPUs causes a Virtual Machine Manager Service crash.
Issue 18
The Host refresher crashes for any host that has the RemoteFX role enabled.
Issue 19
The minimum memory for dynamic memory greater than 32GB is a security risk.
Issue 20
The status of the network adapter is displayed as Not Connected in Virtual Machine Manager.
jonjor
If you've opened the VMM 2012 SP1 PowerShell console and performed a command to get help on cmdlets, you may be in for a surprise. Examples are not included out of the box, and there were tons of great examples in VMM 2008 R2. The syntax below should, but does not, output all help including example use.
get-help <cmdlet-name> -full
There is a simple way of resolving this issue. Open the ‘Virtual Machine Manager Command Shell’ located in Start. Open this elevated as administrator. Now type the following and updated help will be available.
update-help
When this is done you can use a non-elevated VMM PowerShell and updated help will be available.
There is a new post on the Download Center of networking in Virtual Machine Manager. It’s a bit intimidating posting this official poster right after my own attempts (see my previous post), but they all offer different ways of depicting the same abstract ideas. Pull down a copy of the post and use it for reference when you just can’t seem to put the pieces together. Enjoy!
The virtualization of networks in SC VMM has created new possibilities and new challenges. First item of business with any new product is to understand what it is and is not designed to do. This post is intended to help with that.
This illustration was created in conjunction with peers on the VMM and Networking teams. If you find a mistake please contact me so I can evaluate your proposal. I’d love to have to make a change based on customer feedback! Thanks and I hope this helps.
This illustration has been created for educational use. Any inaccuracies in this image are the sole responsibility of the author (jonjor) and not of Microsoft.
Click the image below for a larger picture.
VMM and Hyper-V Networking Interface Layout
Some very good articles on VMM networking below:
Step-by-Step: Hyper-V Network Virtualization - 31 Days of Favorite Features in #WinServ 2012 ( Part 8 of 31 )
http://blogs.technet.com/b/keithmayer/archive/2012/10/08/gettingstartedwithhypervnetworkvirtualization.aspx#.UR-s9Jko6pp
Virtual Networking in VMM 2012 SP1 – Part 1
http://blogs.technet.com/b/scvmm/archive/2013/01/08/virtual-networking-in-vmm-2012-sp1.aspx
System Center 2012 SP1 – Virtual Machine Manager
http://blogs.technet.com/b/scvmm/archive/2013/01/15/system-center-2012-sp1-virtual-machine-manager.aspx
Configuring Networking in VMM Overview
http://technet.microsoft.com/en-us/library/gg610596.aspx
What is Microsoft Orchestrator?! This blog now covers SC VMM as well as Orchestrator System Center components. To learn more about Orchestrator follow this link. Now on to troubleshooting…
The Runbook shown below is set up to monitor and send an alert for any new Application log events that have an Event ID of 808. This is a simple Runbook and is an ideal use of Orchestrator. There is a problem in that each time a new event such as the 808 event is logged to the event log, the Orchestrator Event Monitor executes a few times. It should fire only once per new event.
So how do we get around this? Simple. We use the Link following the Event Monitor activity as an additional filter. This of course is not an ideal setup, but it does get around an issue currently in Orchestrator 2012 SP1.
Here is the Runbook
Here are the details of the Event Monitor activity:
Here is the command we use to kick off the monitor.
Here we see that the event caused multiple firings of the Event Monitor.
Here, in the details of the link we set an Include filter for the same event. This will prevent the Event Monitor from firing more than once per new event log event.
With the additional Link setting in place we now have an Event Monitor that performs as we would expect. This issue should be corrected in a future release. No ETA at this time.
Sometimes a Host cannot be added to VMM, especially when there is a cluster involved. The steps below should resolve basic connectivity issues when adding a new host. For information about Hosts If this does not work, see the article just prior to this ‘Managing Hyper-V hosts using Virtual Machine Manager fails with Error: 0x8033803b. Extra remediation steps.’
Adding a Host and Enabling Connectivity
Step 1: Advanced Firewall settings
Open Advanced Firewall settings. Choose ‘Inbound Rules.’ Scroll to the bottom and make sure the five items below are enabled. Below only Windows Remote Management is enabled.
The image below shows all items enabled.
Step 2: Enable File Sharing Role
In ‘Roles and Features’ place a check in ‘File Server’. Reboot is optional but recommended.
Here’s one that might stump you occasionally. You open the Admin Console and instead of popping open you have to wait a few minutes before it opens. Once open all is fine. What happened?! It may have been looking for the SCOM server. If VMM and SCOM are integrated and the SCOM server is down, this can happen. Has this happened to you before? Check the Application event log on the VMM server for the event below. If you see it, this scenario was probably the case. The workaround is to have the SCOM server up when you open the VMM Admin Console.
Log Name: Application Source: Microsoft.SystemCenter.VirtualMachineManager.2012.Monitor.FabricCloudMonitor Date: 2/15/2013 12:21:49 PM Event ID: 25935 Task Category: None Level: Error Keywords: Classic User: N/A Computer: VMM.Widget.com Description: AllChildHosts property is null. Can't compute capacity, so monitor wouldn't work
I just resolved a case where remediation as listed in the article below alone did not work, but there are a few things we commonly do that correct the problem. Just put these below what is already there as alternative additional steps. The manual removal and re-addition of the VMM agent is key. Thanks Thomas and Vlad!
KB2795043 Managing Hyper-V hosts using Virtual Machine Manager fails with Error: 0x8033803b after installing WMF 3.0 http://support.microsoft.com/kb/2795043/EN-US
Re-install the VMM Agent
1. Remove the VMM agent from the Host using Programs and Features in the Control Panel
2. Re-install the agent using the latest ‘vmmAgent.exe’ in: C:\Program Files\Microsoft System Center 2012\Virtual Machine Manager\agents\amd64\3.x. Copy this file locally to the Host before installation.
Re-associate the Host with VMM
1. Follow this article to re-associate the Host with VMM. If this does not work or there are errors, follow step 2.
How to Reassociate a Host or Library Server
http://technet.microsoft.com/en-us/library/hh397799.aspx
2. Open the VMM Admin Console. Open a PowerShell session by clicking the PowerShell button in the top ribbon. Type the following, replacing <HostName> with the system being re-associated:
Reassociate-VMMManagedComputer –VMMManagedComputer <HostName>
- or -
Replace the server in the first line with the name of the VMM server. You will not need to specify the name of the Host to be added.
C:\> Get-VMMServer -ComputerName "VMMServer1.Contoso.com"
C:\> $Credential = Get-Credential
C:\> Get-VMMManagedComputer | where {$_.State -eq "AccessDenied"} | Reassociate-VMMManagedComputer -Credential $Credential
Two official technical documents on how to perform any action in the GUI, and all VMM Cmdlets are now available for download.
‘SC2012_VMM_Documentation,’ lists Step by Step how to perform most VMM activities.
‘SC2012_VMM_Cmdlets’ lists all cmdlets, their options and examples.
These are two documents you want to hang onto.
Technical Documentation Download for System Center 2012 – Virtual Machine Manager http://www.microsoft.com/download/en/details.aspx?id=6346
Over two years ago I created a cheat sheet, or cube note, for SCVMM 2008 R2. That post is still available in this blog. With VMM 2012 all commands have changed. The document I created is now more than a single page as there are so many new commands. I’ve sorted them as best I could by function. A quick summary of PowerShell/VMM capabilities, then a link to the new document.
Think about this… every single command you perform in the SCVMM Admin Console can be performed in PowerShell. There isn’t a single thing in the Admin Console that is not available by interactive command or script. In fact, there are many things that can be done only in PowerShell. Further, when scripts (.ps1 files) are saved to the Library they are available to run immediately by right clicking them and selecting ‘Run Script.’
Click an icon to download!
…
This is a bit of a trick so I’m sharing the steps I followed. The problem arises from SCVMM 2012 not supporting SQL Express. This follows the official method as far as I can tell… not that this specific scenario is documented officially in step by step detail. If you find issues or have ideas about these steps please comment below the article. Thanks.
Near the last step of the upgrade you are informed that it would be a good idea to follow the article below. I strongly recommend it, especially for the instructions on rebuilding your templates.
‘After System Center 2012 Virtual Machine Manager is installed, additional tasks need to be completed to finish the upgrade to System Center 2012 Virtual Machine Manager. For more information about these tasks, see Upgrading to System Center 2012 Virtual Machine Manager (http://go.microsoft.com/fwlink/?LinkID=214130).’
This is an issue we in support have faced for years. The information provided by ‘Warning (13257)’ is very thorough and step by step. The problem is that sometimes it does not work. There are various actions that can be performed to effectively add the needed file to SCVMM via the Add-Patch command, using an SP2.cab file. Please follow this article if you have not already as it may resolve the issue.
New article.
SCVMM: P2V of Windows 2003 fails with reference to SP2.cab http://support.microsoft.com/kb/2650412 (This link is not active yet. Article below)
The issue the above article does covers is the circumstance where .NET garbage collection is enabled, but the specific file mentioned does not exist. This might seem obvious, but it took some testing to verify this new method of combating garbage collection. Instead of simply removing the file which changes nothing, create a file with the correct name and explicitly specify that garbage collection is disabled. Restart the VMM Service and all should be well. Let me know in the comments below if this helps.
Here’s the article prior to its publish.
Physical to Virtual (P2V) conversion of Windows x86 or x64 fails with one of a few possible errors. Two common errors are 'An I/O error occurred' error 0x80131516, and 'required files are missing' error (13257).
Example 1
Warning (13257) Virtual Machine Manager server is unable to convert <ServerName> because required files are missing. Recommended Action Copy the file SP2.CAB to "C:\Program Files\Microsoft System Center Virtual Machine Manager 2008 R2\Patch Import" on the Virtual Machine Manager server, run the Add-Patch cmdlet to add the required files to the Virtual Machine Manager patch cache, and then try the operation again. The file SP2.CAB is located either at %WINDIR%\Driver Cache\i386 on <ServerName>, or on the Microsoft(R) Windows(R) Server 2003, Standard Edition (ENU, i386) installation media.n/ If SP2.CAB is not available, locate dc21x4.sys (Version: 5.5.5.0) on the installation media, copy the file to "C:\Program Files\Microsoft System Center Virtual Machine Manager 2008 R2\Patch Import", and then run the Add-Patch cmdlet to add the required files to the Virtual Machine Manager patch cache.
Warning (13257) Virtual Machine Manager server is unable to convert <ServerName> because required files are missing.
Recommended Action Copy the file SP2.CAB to "C:\Program Files\Microsoft System Center Virtual Machine Manager 2008 R2\Patch Import" on the Virtual Machine Manager server, run the Add-Patch cmdlet to add the required files to the Virtual Machine Manager patch cache, and then try the operation again. The file SP2.CAB is located either at %WINDIR%\Driver Cache\i386 on <ServerName>, or on the Microsoft(R) Windows(R) Server 2003, Standard Edition (ENU, i386) installation media.n/ If SP2.CAB is not available, locate dc21x4.sys (Version: 5.5.5.0) on the installation media, copy the file to "C:\Program Files\Microsoft System Center Virtual Machine Manager 2008 R2\Patch Import", and then run the Add-Patch cmdlet to add the required files to the Virtual Machine Manager patch cache.
Example 2
Error (2920) An I/O error occurred while opening the file C:\Program Files\Microsoft System Center Virtual Machine Manager 2008 R2\Patch Import\atapi.sys on the <ServerName> server. (Unknown error (0x80131516))
The .NET Garbage Collector prevents SCVMM from adding a required patch correctly.
Create a file named 'vmmservice.exe.config' and place it in the same directory as vmmservice.exe, '%SYSTEMDRIVE%\Program Files\Microsoft System Center Virtual Machine Manager 2008 R2\Bin.' Place the information below in the file and nothing else. Restart the VMM Service and try the Add-Patch command in the error again.
<configuration <runtime> <gcServer enabled="false"/> </runtime> </configuration>
Many articles similar to this state to simply remove 'vmmservice.exe.config' if found in the same directory as vmmservice.exe, '%SYSTEMDRIVE%\Program Files\Microsoft System Center Virtual Machine Manager 2008 R2\Bin.' This is not enough if garbage collection has already been set. The resolution above reverses the 'gcServer enabled' setting from what may be 'true' to 'false.'
Garbage collection is required for SCVMM in some situations when there are over 150 Hosts. For more information see the articles below.
Configuring Garbage Collection on the Server http://msdn.microsoft.com/en-us/library/cc165011.aspx
How to enable server-optimized garbage collector for VMM http://blogs.technet.com/b/m2/archive/2009/02/04/how-to-enable-server-optimized-garbage-collector-for-vmm.aspx
Some new x64 systems boot from a GPT disk that contains an EFI or UEFI boot partition with an EFI BIOS. Traditionally this meant that the system was of Itanium architecture. SCVMM does not support P2V of Itanium systems as is documented in 'P2V: Requirements for Physical Source Computers' http://technet.microsoft.com/en-us/library/cc917954.aspx. There are now x64 (non-Itanium) systems that boot with EFI. These conversions will fail as well due to EFI boot structure.
Simply check Disk Management on the source machine to see if the boot disk is GPT or MBR. If it is GPT, we do not support P2V as a GPT boot drive requires an EFI or UEFI BIOS.
This deals with a simple architecture incompatibility. Let’s assume a system uses an EFI or UEFI disk to boot. This also means it is a GPT disk. We are attempting to convert this to a virtual machine so that it can run on a virtual platform. Only Itanium and some newer servers with UEFI architecture can boot EFI as it requires a special BIOS. Hyper-V, and other virtualization platforms, cannot emulate this as they have a generic BIOS based on classic x86 and x64 systems. Therefore, the system disk must be an MBR type to boot in any Windows virtualization implementation. This requirement is not isolated to Hyper-V as any Windows installation cannot boot from GPT disks unless the processor architecture is Itanium or UEFI. During initial Windows installation boot disk type is detected, EFI or MBR, and the appropriate files and registry settings are written out to disk. Windows installations are thus tied to disk type.
There are no workarounds for moving a Windows system with an EFI partition to non-EFI architecture. EFI and Itanium are in lockstep. Classic x86 and x64 cannot boot EFI, and there and is no simple switch back to MBR boot.
More Information
EFI and Windows:
KB951985 - How to set up dynamic boot partition mirroring on GUID partition table (GPT) disks in Windows Server 2008
EFI/GPT not supported by P2V:
P2V: Converting Physical Computers to Virtual Machines in VMM
'The information below specifies Itanium systems, with the reason being that an EFI based system will not boot in Hyper-V. The following restrictions apply to P2V operation system support: VMM does not support P2V conversion for computers with Itanium architecture–based operating systems.'
EFI Support Information:
Firmware and Boot Environment
UEFI Support and Requirements for Windows Operating Systems
Extensible Firmware Interface Specification overview - Intel
Extensible Firmware Interface
So you perform a successful P2V using SCVMM. Or perhaps you use it’s cousin, ‘Disk2VHD’ from Sysinternals. All is well until you boot the new VM… FAILURE. For those situations where you simply get a black screen, maybe with a blinking cursor but definitely no Windows load, I have some solutions. (If you are experiencing a blue screen this article is not for you).
First! Do not fear the black screen. It simply means the path to load Windows cannot be found by the boot loader. This may be due to the boot loader, or it may be due to the MBR or Boot Sector. Let’s just say we aren’t concerned with all of the technicalities and want to fix it. Here’s how.
Windows 2008 R2 (Vista, Windows 7, Windows 2008)
We’re going to fix the entire boot path, despite what part of it is broken. Go find an ISO or DVD of any of the operating systems just listed in the title. Prepare to boot your VM from this media. We’re going to use the recovery console. We’ll assume you are using Windows 7 media.
You are now either booting into Windows, or you are not… Any blue screens I cannot help you with at this time. Search the internet for a solution, and in the meantime I intend to write an article on this as well. Comments welcome as always.
Further Information:
How to use the Bootrec.exe tool in the Windows Recovery Environment to troubleshoot and repair startup issues in Windows http://support.microsoft.com/kb/927392
Windows 2003 R2 (Windows XP, Windows 2003)
Again, we’re off to fix the boot path. Things are a bit different in Windows 2003. Same basic goal as with Windows 2008. Go find an ISO or DVD of any of the operating systems just listed in the title. Prepare to boot your VM from this media. We’re going to use the recovery console. We’ll assume you are using Windows 2003 media.
Further Information
How To Use the Recovery Console on a Windows Server 2003-Based Computer That Does Not Start http://support.microsoft.com/kb/326215
Description of the Windows XP Recovery Console for advanced users http://support.microsoft.com/kb/314058
As far back as Windows 95 there has been the problem of more than one NIC with the same IP address. Simply, you cannot should not do this. Most often this is seen when a computer has a static IP assigned to a NIC, then that NIC is removed (physical or virtual) and replaced with another. You could run into this situation now if you upgrade your Legacy NICs in Hyper-V (SCVMM) with Synthetic ones… providing greater throughput and less overhead on the host server. When you make this replacement and enter the same IP address as the old NIC had you run into one of the errors below.
You can click ‘No’ and continue… and you will have problems. Or, you can somehow get rid of the old NIC that no longer shows up but is somehow causing an IP conflict. You don’t see the old NIC but it is conflicting with your new one?! You have a ghosted NIC.
I mentioned that this type of issue has been around a while. So has the solution. I have used the article below since at least 1998. It has been updated recently with a ‘Fix it’ button, but the content and solution are the same. Click the linked title below.
KB 269155: Error message when you try to set an IP address on a network adapter
Error message when you try to set an IP address on a network adapter
http://support.microsoft.com/kb/269155#
There are two methods. The first is worth a try. It may work. The second, Method 2, is the one I have always used because it always works. Caution: you really can rip out a component you need. Luckily, performing this operation is easy, and any real NIC (or virtual) you remove will be added back on next reboot if still installed. The new ‘Fix it’ on the page I have never tried. Tell me your experience in the comments below.
Using Method 2
First, you need ‘devcon.exe.’ They quit shipping this in the product so you will need to download it from the link below. You may get a message about running it in Windows 2008 R2… ignore it.
Windows Server 2003 Resource Kit Tools
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=17657
To make this correction on a virtual machine you need to tweak the syntax just a bit.
With a physical machine you would type:
devcon -r remove "@PCI\VEN_10B7&DEV_9200&SUBSYS_00D81028&REV_78\4&19FD8D60&0&58F0"
With a virtual machine change it to something like this:
devcon -r remove "@VMBUS\…”
Here’s the step by step…
Change to the ‘C:\Program Files\Support Tools>’ or wherever ‘devcon.exe’ lives.
Type ‘devcon findall =net’ to list all NICs (yes, there is a space before the ‘=’)
Identify from the list of NICs the virtual ones. Match the name of the NIC to what used to show up in Network Settings.
Add an ‘@’ sign in front of the NIC information and enclose the who thing in quotes.
Hit Enter and remove the NIC. You will see that the device is removed.
Reboot and assign your new NIC the IP address the old one had. Easy.