8

Recientemente actualicé una serie de servidores de 2003 a 2008R2. Desde la actualización comencé a ver el siguiente error:powershell remoto Win2008R2 "El servicio WSMan no pudo iniciar un proceso host para procesar la solicitud dada"

[servername] Connecting to remote server failed with the following error message : The WSMan service could not launch a host process to process the given request. Make sure the WSMan provider host server and proxy are properly registered. For more information, see the about_Remote_Troubleshooting Help topic.

El error es aparentemente aleatorio. El script funcionará y luego fallará. El comando para crear la sesión está en un bucle (crear sesión, eliminar sesión) y se llama varias veces como parte de un conjunto de scripts de implementación. Cuando el script falla, falla en diferentes puntos.

He comprobado el registro de eventos en el servidor de destino de la estación de trabajo local (win7) (win2008R2) pero no hay errores que pueda ver.

Esta es la línea que falla aleatoriamente:

$session = New-PSSession -ComputerName $serverName -Credential $credential

no vi este tema en Win2003. Los guiones no han cambiado. Supongo que el problema está en el servidor de destino, pero no puedo encontrar ningún error o registro para mirar. Funcionará una vez y luego fallará, por lo que mis scripts de implementación a veces tendrán éxito y luego fallarán en diferentes puntos.

Cualquier orientación sobre el seguimiento de este problema sería muy apreciada.

+0

¿Necesita una sesión cada vez? ¿No puedes sobrevivir con solo invoke-command? –

+0

También encontré el mismo error, pero corriendo con Windows 2012. Mi rutina de implementación (en C#, usando la API de powershell) falla con este error de vez en cuando. La única solución por ahora es reiniciar el servidor al que estoy tratando de conectar (no el servidor desde el que me estoy conectando). Lo extraño es que parece suceder después de que el servidor ha estado bajo carga durante unas horas (por ejemplo, servidores de producción, servidores QA con 1/100 de la carga no se ven afectados). –

+0

La falta de espacio en disco en la unidad del sistema también mostrará estos síntomas, ¡me había quedado sin espacio en C: drive! –

Respuesta

0

¿Estás alcanzando el límite de procesos al crear pssessions que se bloquean y dejan procesos abiertos?

límite por defecto es 15. Estoy de acuerdo con el comentario anterior y no usar sesiones, en lugar de utilizar invocar-comando como:

invoke-command -scriptblock $scriptBlock -ArgumentList $args -computername $compName -Credential $encodedRemoteCredentials 

para comprobar su límite:

PS C:\aws> ls WSMan:\localhost\Shell 


    WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Shell 

Name      Value 
----      ---- 
MaxProcessesPerShell  15 

Como prueba rápida y sucia: la próxima vez que falle la versión de su secuencia de comandos del script, aumente el límite de maxProcessesPerShell utilizando el cmdlet set-item a 50 y vuelva a intentarlo. Si el script ya no falla, usted sabe que ese es el problema (¡y debería considerar pasar a invocar-comando!).

Cuestiones relacionadas