This post has been republished via RSS; it originally appeared at: System Center Blog articles.
First published on TECHNET on Dec 21, 2018
When Windows update ‘KB4467684‘, ‘KB4478877‘, ‘KB4471321‘ or ‘KB4483229’ is installed on a VMM managed Windows Server 2016 host, VMM is not able to enumerate or manage the Logical Switch deployed on the host. Customers will notice the following symptoms when they open the ‘Virtual Switches’ property of the Host.
- VMM throws the error ‘An uplink port profile set was not specified on the host network adapter <NetworkAdapterName> and was not supplied with Logical switch <LogicalSwitchName>’
- The Uplink Port Profile drop down menu will appear empty on the Host Virtual Switch – Logical Switch configuration page.
Cause:
The above-mentioned updates are unregistering the following WMI classes used by VMMAgent to enumerate and manage Logical Switch deployed to the Host.
WMI Class | MOF File |
Scvmm_VirtualEthernetSwitchInternalSettingData | Scvmmswitchportsettings.mof |
Scvmm_EthernetSwitchPortInternalSettingData | |
Scvmm_VirtualEthernetSwitchHyperVNetworkVirtualizationSettingData | |
Msvm_EthernetSwitchPortSCVMMSettingData | |
Msvmm_DhcpV4PortClientOptionsInfo | VMMDHCPSvr.mof |
Msvmm_DhcpV4PortBindingOptionsPolicy | |
Msvmm_DhcpV4PortReservationPolicy | |
Msvmm_DhcpV4PortPolicy | |
Msvmm_DhcpV4PortInfo |
Running the following PowerShell on the affected host fetches zero objects.
Get-CimClass -Namespace root/virtualization/v2 -classname *vmm*
Note: Running the same PowerShell on a host which does not have these updates installed, fetches VMM related classes.
Solution:
Use mofcomp to add the VMM related classes and class instances to the WMI repository. On the affected host, run the following commands
Mofcomp “%systemdrive%\Program Files\Microsoft System Center 2016\Virtual Machine Manager\setup\scvmmswitchportsettings.mof” Mofcomp “%systemdrive%\Program Files\Microsoft System Center 2016\Virtual Machine Manager\DHCPServerExtension\VMMDHCPSvr.mof”
Note:
- After you add the classes to WMI repository, you should refresh the host on VMM. Make sure ‘System Center 2016 Update Rollup 6’ is installed on the VMM server as this update brings in improvements to VMM Host refresh time.
- If you are running System Center Virtual Machine Manager Semi-Annual Channel release (SAC), then the path for mof files would be
%systemdrive%\Program Files\Microsoft System Center\Virtual Machine Manager\setup\scvmmswitchportsettings.mof %systemdrive%\Program Files\Microsoft System Center\Virtual Machine Manager\DHCPServerExtension\VMMDHCPSvr.mof
- We have heard reports that ‘Microsoft VMM DHCPv4 Server Switch Extension’ is being enabled on a Host managed by Microsoft Network Controller (NC) after running mofcomp. This is causing BSOD on the NC managed Host. Make sure that only ‘Microsoft Azure VFP Switch Extension’ is enabled and all other Hyper-V Switch extensions are disabled once you run mofcomp.
Get-VMSwitchExtension -VMSwitch $VMSwitch | Format-Table Name, Enabled Name Enabled ---- ------- Microsoft Windows Filtering Platform False Microsoft VMM DHCPv4 Server Switch Extension False Microsoft Azure VFP Switch Extension True Microsoft NDIS Capture False
- As a best practice, follow this process to patch a host managed by VMM.
- Bring the Host to be updated in Maintenance mode from VMM
- Patch the host
- Use mofcomp to add the VMM related classes and class instances to the WMI repository
- If the host is managed by NC, make sure that ‘Microsoft VMM DHCPv4 server Switch Extension’ is disabled.
- Restart the host
- Refresh the host from VMM
- Bring host out of maintenance mode.
- If your environment has many hosts, you can script the process to enumerate the hosts from VMM using ‘Get-SCVMHost’ PowerShell Commandlet and use remote PowerShell to register VMM WMI classes as suggested above.