KB2677070 Yüklemesi sonrasında System Center Data Access Servisi Timeout hatası ile birlikte stopped duruma geçiyor
Merhabalar ,
Aşağıdaki workaround sonrası bu soruna asıl neden olan durum belirlendi ve aşağıdaki makale sorunun çözümü için uygulanmaya başlandı
https://support.microsoft.com/kb/2730040
The System Center Data Access Service fails to start after applying KB2677070
Bu makalede basitçe SDK servisinin crl check yapması engellenmekte ve bu da timeout oluşmasını engellemektedir.
This issue occurs because the update changes the URLs used to contact Windows Update to download the trusted and untrusted CTLs. If the old URLs were hardcoded as exceptions in the firewall or proxy, the server running the Data Access Service will fail to download the new CTLs because it can't reach the updated web address.
******************************************************************************************************************************************************************************
WorkAround
https://support.microsoft.com/kb/2677070 linkinde detaylarını bulabileceğiniz “An automatic updater of revoked certificates is available for Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2” update ‘i uygulanması sonrası System Center Data Access Servisi Timeout hatası ile birlikte stopped duruma geçiyor durumu ile karşılaşabilirsiniz. Servisi çalıştırmak istediğinizde ise aşağıdaki gibi bir hata alabilirsiniz :
Bu durum genellikle Virtual Systemlerde ve RAM miktarı önerilen miktardan az kullanımlarda olmaktadır ve uygulanılabilecek workaround’lar aşağıdaki gibidir :
Çözüm 1 :
https://support.microsoft.com/kb/2730040 makalesinde belirtildiği üzere sorun bu sistemlerin aşağıdaki linklere ulaşamaması nedeni ile oluşmaktadır.
Bu durumu aşmak için ya aşağıdaki linklere proxy üzerinden ulaşılması sağlanmalı
https://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/disallowedcertstl.cab
https://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/authrootstl.cab
ya da CRL check ‘i System Center Data Access Servisi için devre dışı bırakmak gerekmektedir . CRL check ‘i System Center Data Access Servisi için devre dışı bırakmak için ise Microsoft.Mom.Sdk.ServiceHost.exe.config dosyası açılarak <generatePublisherEvidence enabled="false"/ > değeri girilmelidir. Bu işlem sonrası dosya aşağıda ki şekilde olacaktır :
<runtime>
<generatePublisherEvidence enabled="false"/> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.EnterpriseManagement.HealthService" publicKeyToken="31bf3856ad364e35" />
<publisherPolicy apply="no" />
<bindingRedirect oldVersion="6.0.4900.0" newVersion="7.0.5000.0" />
</dependentAssembly>
<publisherPolicy apply="no" />
<probing privatePath="" />
</assemblyBinding>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.Mom.Common" publicKeyToken="31bf3856ad364e35" />
<publisherPolicy apply="no" />
<bindingRedirect oldVersion="6.0.4900.0" newVersion="7.0.5000.0" />
</dependentAssembly>
<publisherPolicy apply="no" />
<probing privatePath="" />
</assemblyBinding>
<gcServer enabled="true"/>
</runtime>
Microsoft.Mom.Sdk.ServiceHost.exe.config dosyasını aşağıdaki lokasyondan bulabilirsiniz :
· System Center Operations Manager 2007 R2: x:\Program Files\System Center Operations Manager 2007
· System Center 2012 - Operations Manager: x:\Program Files\System Center 2012\Operations Manager\Server
Çözüm 2 :
Bu durumu aşabilmek için ya yeterli RAM ‘i bu sistemlere atamanız gerekmekte ki bu aslında bir zorunluluktur ya da aşağıdaki makalede açıklandığı üzere ServicesPipeTimeout değerini registrye girip orda yeni bir timeout süresi belirlenmesi olabilir. Biz burda yeni değeri 120000 miliseconds olarak belirledik.
https://support.microsoft.com/kb/922918
Bu aşamadan sonra server’ın restart edilmesi sorunu çözümleyecektir.
To work around this problem, modify the registry to increase the default time-out value for the service control manager. To increase this value to 120 seconds, follow these steps:
1. Click Start, click Run, type regedit, and then click OK.
2. Locate and then click the following registry subkey: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
3. In the right pane, locate the ServicesPipeTimeout entry. Note If the ServicesPipeTimeout entry does not exist, you must create it. To do this, follow these steps:
a. On the Edit menu, point to New, and then click DWORD Value.
b. Type ServicesPipeTimeout, and then press ENTER.
1. Right-click ServicesPipeTimeout, and then click Modify.
2. Click Decimal, type 120000, and then click OK. This value represents the time in milliseconds before a service times out.
3. Restart the computer.
Note This workaround may resolve the problem where the service does not start. However, we recommend that you research this problem to determine whether it is a symptom of another problem
Yukarıda highlight ettiğim üzere bu workaroundu uygulamak yerine asıl gerekliliği yerine getirmek daha uygun olacaktır.
Orkun AKSU