Wednesday 16 March 2011

Server could not retrieve its initial configuration for a class from the WMI Provider

I recently spent a Sunday working on the above error and found very little out there on this, hence this blog post to hopefully help others finding themselves in a similar situation.

The infrastructure consisted of a Microsoft Office Communications Server 2007 R2 co-existing with a Microsoft Lync Server 2010 implementation; however this issue could affect a standard Microsoft OCS 2007 R2 deployment just as easily. The common denominator is that a pool has been recently deactivated and removed but there are still OCS pools in the forest.

Following a restart of the OCS front-end service on any remaining pool the following errors are observed in the event log. (I have only included the pertinent information for readability)


Log Name: Office Communications Server
Source: OCS WMI Consumer
Event ID: 20482
Level: Error
Description: Server could not retrieve its initial configuration for a class from the WMI Provider.
Class: MSFT_SIPTrustedServiceSetting
Cause: This can occur if the connection to Active Directory or SQL back-end database is down or if permissions to the service account are altered. Retrieval can also fail if an invalid entry is entered in the class using the UI or WMI or if corruption occurs in local WMI repository.
Resolution:
Make sure the account the service is running under has proper privileges and that connection to Active Directory or SQL back-end database is functional. Verify an identical entry does not exist as a direct federation partner or an IM service provider.


Followed by.....

Log Name: Office Communications Server
Source: OCS Server
Event ID: 12323
Level: Error
Description: Unable to initialize the protocol stack. The service has to stop.
Error code: 80070490 (Element not found. ).


Followed by.....

Log Name: Office Communications Server
Source: OCS Server
Event ID: 12326
Level: Error
Description: Failed starting the protocol stack. The service has to stop
Error code is:0x80070490 (Element not found. ).
Cause: Check the previous entries in the event log for the failure reason.
Resolution: Try restarting the server after resolving the failures listed in the previous event log entries.


The front end service fails to start; however all other services will start successfully. It seems, when the OCS front end service starts on any FE server in the forest, the service queries and validates the trusted service entries. If there are configuration issues here then the service will fail to start complaining that it cannot retrieve its initial configuration. In this particular case it was due to 2 trusted services for an OCS recording application which had the attribute 'msRTCSIP-RoutingPoolDN' pointing to the deactivated pool and thus an invalid attribute value. This was enough to cause the service to fail.

To resolve the problem, I simply set the 2 attributes to $null as I knew this application was no longer required and as such these records were also not required. It will more than likely be a different issue in each case and s care must be taken to ensure the changes you make here are not going to have other negative affects before making the changes; however you may need to simply update this attribute to point to a valid pool if the app is still in commission. It really will be a case by case judgement call.

It is important to note that by default the OCS based trusted services have the attribute 'msRTCSIP-RoutingPoolDN' set to $null and so generally decomissioning pools will be fine; however Lync pools use this attribute and they are generally pointing at themselves which again will be fine and I would not recommned changing this.

The trusted services can be found in the Microsoft\RTC Service\Trusted Services\ container, located either in the configuration partition or system partition, depending where OCS has been installed.

I manaaged to resolve my issue after being pointed to this blog post: http://ms-uc.herber.co/?p=40 and so thanks to Louis for this answer.

No comments:

Post a Comment