Include Windows Server 2008 Roles in ConfigMgr HINV

As I work with more and more customers who are using System Center Configuration Manager 2007, I find the teams who are responsible for supporting the servers are more open minded to leveraging Configuration Manager for software update management, DCM, and OS deployment.  In helping our customers understand how to leverage the software update management feature of Configuration Manager, I learn how they approach patch management for the servers supporting different IT services and line of business applications.  

With IT moving towards virtualization, I came to the realization one day that we need to delineate between a virtual guest and the virtual host for software update management.  Therefore I thought about an approach and did some research and identified an appropriate solution to this challenge. 

There is a WMI class that represents the features installed on a computer running the Windows Server 2008 or later operating system called Win32_ServerFeature. Since Hyper-V is a feature of the Windows Server 2008 OS, this can be collected by extending hardware inventory in ConfigMgr (more information on this can be found here - https://technet.microsoft.com/en-us/library/bb680609.aspx.  Therefore, I edited the SMS_DEF.MOF file, which is located on the primary site server in the folder - <Configuration Manager installation directory>\Microsoft Configuration Manager\Inboxes\clifiles.src\hinv, and appended this snippet of code to the end of the file:

SMS_DEF.MOF Edit

After saving this, I forced the ConfigMgr client to update its policy and then forced a hardware inventory re-synch.  Now when I open up Resource Explorer for a managed Windows Server 2008 server, I am presented with the extended class and properties as seen in the following screenshot:

SMS_HINV_ServerRolesClass

Now we can use this new class when we create our collections for targeting software updates to virtual guests separately from virtual Hyper-V hosts.  And we can also segregate other servers also depending on how you manage software update deployment in your organization.