Compartir a través de


Ejecución de un runbook en Service Management Automation

 

Publicada: junio de 2016

Se aplica a: Windows Azure Pack for Windows Server

Las solicitudes para iniciar un runbook las realiza el servicio web Automatización de administración de servicios mediante el Portal de administración de servicios o el cmdlet Start-SmaRunbook de Windows PowerShell. El servicio web escribe esta solicitud en la base de datos de Automatización, de donde la recupera uno de los servidores Worker de Automatización. No se puede controlar qué servidor Worker atenderá la solicitud.

El servidor Worker creará un trabajo que se ejecuta en el servidor Worker que atienda la solicitud y accede de forma remota a los equipos u otros recursos con los que trabaja. Para ello, los cmdlets del runbook deben poder tener acceso remoto a estos recursos. El runbook también puede incluir un comando InlineScript para usar el acceso remoto a PowerShell para ejecutar comandos de forma local en un equipo de destino. Este concepto se ilustra en el diagrama siguiente.

Operación de runbook

Si un trabajo se suspende o se interrumpe, se puede reanudar en un servidor Worker diferente. Por este motivo, debe tener cuidado cuando utilice recursos locales que no son accesibles para todos los servidores Worker, como un archivo en un equipo local. Debe utilizar lo máximo posible Activos globales tales como d3544ae9-8fc7-40ce-843c-51ce7c49df6d#bkmk_Variables para compartir información entre Puntos de control.

Permisos

Para que un runbook realice las acciones necesarias, debe tener permisos de acceso a los recursos con los que trabaja. En Service Management Automation, los runbooks siempre se ejecutan en el contexto de la cuenta de servicio del servicio Automatización Runbook. Si esta cuenta no tiene los permisos necesarios, puede usar un recurso a8b7e82f-e3fc-4286-8570-8d5ded944b27#bkmk_Credentials o un recurso global a8b7e82f-e3fc-4286-8570-8d5ded944b27#bkmk_Connections en su runbook para ejecutar los comandos necesarios utilizando credenciales con los permisos necesarios. Estas credenciales se pueden usar con un cmdlet que acepte credenciales mediante un parámetro o con InlineScript para ejecutar un bloque de código con credenciales alternativas.