Hola comunidad!
Esperando que estén muy bien, paso a contarles que durante esta semana he estado trabajando en un caso que quisiera compartir con ustedes y aquí va:
Nos topamos con un escenario de una granja SharePoint 2010 SP1 con una topología de 3 capas, vale decir Servidores dedicados para Web Layer, Application Layer y Database Layer. El problema que ocurría es que cada cierto tiempo, en los distintos ambientes de la plataforma (Desarrollo, Test y Producción) algunos Application Pools sufrían un "Crash" y estos quedaban "Stopped", lo que obviamente resultaba en que los clientes no pudieran ver sus sitios con un error 503.
Y bien, comenzamos a investigar qué ocurre y descubrimos inicialmente que el log ULS para uno de los Web Servers y para uno de los App Servers presentaban un error del tipo "Performance Counter OS (pdh) call failed with error code PDH_CSTATUS_NO_MACHINE." inicialmente no vimos mucha relación entre un tema y el tema de fondo, básicamente porque este error se produce cuando no se pueden generar los contadores de performance utilizados por la granja con la ayuda de Performance Data Helper.
Más info acá: http://support.microsoft.com/kb/983081 y http://msdn.microsoft.com/en-us/library/aa939698(v=winembedded.5).aspx
Bien, aún así no ignoramos estos issues y detectamos que "curiosamente" el IIS Worker Process (W3WP.exe) relacionado al Application Pool caído es justamente el que inunda el Log con el error antes descrito, por lo cual ambos caminos comienzan a unirse.
Aquí es donde se pone entretenido:
Para este error en particular, existen recetas conocidas que ayudan a mitigarlo, una de ellas está en el artículo que les pasé más arriba, y otras tienen que ver también con permisos, de los servicios SharePoint 2010 Timer ó la "Farm Account"; también puede encontrarse con llaves de registro que no existen, parámetros de manejo de nombres de los contadores de performance, o incluso las políticas que se hayan aplicado a su server mediante GPO's. por lo cual, ahora les daré una lista de ítems a revisar ordenados desde lo más típico a lo más "sofisticado" con lo que podría encontrarse en un escenario como este.
Si esto ya lo hizo y aún persiste el problema, y además detectó problemas con la ejecución de Perfmon en el paso anterior, intente lo siguiente:
¿Todavía con Issues?, continuemos…
En todos los servers de la granja:
Reiniciar servicios SharePoint y Probar.
¿Persiste aún?
Las cuentas antes mencionadas (Timer service y User code host) estén listadas para los settings.
Espero les sea útil!
Saludos.
Gonzalo