SMS Provider Locations Do Not Match - Problem installing SCCM 2012 R2 CU4

I have an SCCM 2012R2 CU1 site that has been upgraded from SCCM 2012 non-SP1, so I have gone from 2012 to 2012SP1 through CU5 and then to R2 and then to CU1.

Over the course of the life of this site, which has more than 10k clients and 10 Site Systems, we have installed roles, removed roles, moved roles and removed Site Systems.

I have also installed and removed SMS providers . . . which is where my issues begin.

The site properties in the console list 6 SMS Providers and even lists an SMS provider on a server that was retired and is no longer a Site System.  When I query WMI using the following VBS script it only returns the *ACTUAL* SMS Provider locations, 2 of the 6 listed in the GUI.

On Error Resume Next
Const ForReading = 1, ForWriting = 2, ForAppending = 8
strComputer = "." 
Set oFS = CreateObject("Scripting.FileSystemObject")
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\sms")

If Err.Number <> 0 Then
WScript.Echo "Cannot connect to WMI"
WScript.Echo vbTab & "Error " & Err.Number & " - " & Err.Description
End If

Set oLog = oFS.OpenTextFile("C:\Temp\SMS_ProvList.log",ForAppending, True)
If Err.Number <> 0 Then
WScript.Echo "Could not create output file"
WScript.Echo vbTab & "Error " & Err.Number & " - " & Err.Description
End If

Set colItems = objWMIService.ExecQuery("SELECT * FROM SMS_ProviderLocation",,48)
count = 0
For Each objItem in colItems
    count = count + 1
    oLog.WriteLine "-----------------------------------"
    oLog.WriteLine Now()
    oLog.WriteLine "Provider instance " & count &  " : " & objItem.Machine
    oLog.WriteLine "NamespacePath : " & objItem.NamespacePath     
    oLog.WriteLine ""
Next

I have a test environment which has also gone through some growth over its lifetime and has had the same changes to SMS Providers made.  When I first attempted to install SCCM 2012 R2 CU4 in this test environment the installer continually failed the prerequisite checker when querying the CU level of the SMS Providers.  The only way that I could get past that issue was by running a site maintenance task via the CM installer and installing an SMS Provider at the location that had previously been an SMS Provider but I had uninstalled that role.

I do not want to have to do that in my production environment, and would not even be able to do so if I wanted as I have retired one of the servers listed and cannot re-provision that machine.

Any CM12 gurus out there with suggestions?  This strikes me as a standard MS problem when having multiple development teams working on a product/update and not having a standard location to check for configuration information (This is exactly the problem when configuring DNS suffixes via GPO and not manually setting the GUI to match).

Thanks!

Josh Gerner

Cornell University.

February 20th, 2015 3:06pm

You could remove the no-longer existing provider entries from WMI but that would not be supported then (without calling Microsoft support).
Free Windows Admin Tool Kit Click here and download it now
February 20th, 2015 3:12pm

The issue I have is that I cannot find the WMI class that holds the SMS Providers that are returned by the GUI.

I actually engaged MS Premier for a SCCM 2012 RAAS about 2 years ago and that was when the discrepancy first reared it's head.  The support person that I worked with couldn't give me a way of cleaning those entries at that point which is when I started logging the locations to be sure that my maintenance task was really installing or removing the SMS Providers.

Josh Gerner

February 20th, 2015 3:19pm

Torsten,

I agree that is a solution, and one that I would be willing to explore.  The issue I have in implementing this solution is that the WMI class that contains the information that is being checked by the prerequisite checking isn't immediately clear.


Free Windows Admin Tool Kit Click here and download it now
March 12th, 2015 10:43am

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics