Introducción a Hybrid Runbook Worker de Automation

Importante

Azure Automation Hybrid Runbook Worker (Windows y Linux) basado en agente se retirará el 31 de agosto de 2024 y no se admitirá después de esa fecha. Antes del 31 de agosto de 2024, debe completar la migración de usuarios de Hybrid Runbook Workers a Workers basados en extensión. Además, a partir del 1 de noviembre de 2023, no será posible crear nuevas instancias de Hybrid Worker basadas en agente. Más información.

Es posible que los runbooks de Azure Automation no tengan acceso a los recursos de otras nubes o del entorno local, porque se ejecutan en plataforma de nube de Azure. La característica Hybrid Runbook Worker de Azure Automation permite ejecutar runbooks directamente en la máquina que hospeda el rol y en los recursos del entorno para administrar dichos recursos locales. Los runbooks se almacenan y administran en Azure Automation y después se entregan a una o más máquinas asignadas.

Azure Automation proporciona integración nativa del rol Hybrid Runbook Worker mediante el marco de extensión de máquina virtual (VM) de Azure. El agente de máquina virtual de Azure es responsable de la administración de la extensión en máquinas virtuales de Azure en máquinas virtuales Windows y Linux, y en máquinas que no tienen Azure a través del agente de Connected Machine de Azure, incluidos los servidores habilitados para Azure Arc y VMware vSphere habilitado para Azure Arc (versión preliminar). Ahora hay dos plataformas de instalación de Hybrid Runbook Worker compatibles con Azure Automation.

Plataforma Descripción
Basado en extensiones (V2) Se instala mediante la extensión de máquina virtual Hybrid Runbook Worker, sin ninguna dependencia en el agente de Log Analytics que informa a un área de trabajo de Log Analytics para Azure Monitor. Esta es la plataforma recomendada.
Basado en agente (V1) Se instala después de que se completa el agente de Log Analytics que informa a un área de trabajo de Log Analytics de Azure Monitor.

Screenshot of hybrid worker group showing platform field.

Para las operaciones de Hybrid Runbook Worker después de la instalación, el proceso de ejecución de runbooks en Hybrid Runbook Worker es el mismo. El propósito del enfoque basado en extensiones es simplificar la instalación y administración del rol Hybrid Runbook Worker y eliminar la complejidad del trabajo con la versión basada en agente. La nueva instalación basada en extensiones no afecta a la instalación o administración de un rol de Hybrid Runbook Worker basado en agente. Ambos tipos de Hybrid Runbook Worker pueden coexistir en la misma máquina.

Hybrid Runbook Worker basado en extensiones solo admite el tipo de Hybrid Runbook Worker de usuario y no incluye el sistema Hybrid Runbook Worker necesario para la característica Update Management.

Ventajas de las instancias de Hybrid Worker de usuario basadas en extensiones

El enfoque basado en extensiones simplifica considerablemente la instalación y administración de Hybrid Runbook Worker de usuario, lo que elimina la complejidad de trabajar con el enfoque basado en agente. Estas son algunas ventajas clave:

  • Incorporación sin problemas: el enfoque basado en agente para la incorporación de Hybrid Runbook Worker depende del agente de Log Analytics, que es un proceso con varios pasos, lento y propenso a errores. El enfoque basado en extensiones ya no depende del agente de Log Analytics.
  • Facilidad de administración: integración nativa con la identidad de ARM para Hybrid Runbook Worker y proporciona flexibilidad para la gobernanza a escala mediante directivas y plantillas.
  • Autenticación basada en Microsoft Entra ID: usa identidades administradas asignadas por el sistema de máquina virtual proporcionadas por Microsoft Entra ID. Esto centraliza el control y la administración de identidades y credenciales de recursos.
  • Experiencia unificada: ofrece una experiencia idéntica para administrar máquinas habilitadas para Azure Arc en Azure y fuera de Azure.
  • Varios canales de incorporación: puede optar por incorporar y administrar los trabajos basados en extensiones a través de Azure Portal, los cmdlets de PowerShell, Bicep, las plantillas de ARM, la API de REST y la CLI de Azure. También puede instalar la extensión en una máquina virtual de Azure existente o en un servidor habilitado para Arc en la experiencia de Azure Portal de esa máquina a través de la hoja Extensiones.
  • Actualización automática predeterminada: ofrece la actualización automática de las versiones secundarias de forma predeterminada, lo que reduce significativamente la capacidad de administración de mantenerse actualizado en la versión más reciente. Se recomienda habilitar las actualizaciones automáticas para aprovechar las ventajas de cualquier actualización de características o seguridad sin la sobrecarga manual. También puede dejar de participar en las actualizaciones automáticas en cualquier momento. Actualmente, no se admiten las actualizaciones de versiones principales y se deben administrar manualmente.

Tipos de Runbook Worker

Hay dos tipos de instancias de Runbook Worker: sistema y usuario. En la siguiente tabla se describen las diferencias entre ellas.

Tipo Descripción
Sistema Admite un conjunto de runbooks ocultos que usa la característica Update Management y están diseñados para instalar actualizaciones especificadas por el usuario en máquinas Windows y Linux.
Este tipo de Hybrid Runbook Worker no es miembro de ningún grupo de instancias de Hybrid Runbook Worker y, por tanto, no ejecuta runbooks que tengan como destino un grupo de instancias de Runbook Worker.
User Admite runbooks definidos por el usuario diseñados para ejecutarse directamente en las máquinas Windows y Linux.

Las instancias de Hybrid Runbook Worker basada en agente (V1) confían en el agente de Log Analytics que informa a un área de trabajo de Log Analytics de Azure Monitor. El área de trabajo no solo sirve para recopilar datos de supervisión de la máquina, sino también para descargar los componentes necesarios para instalar Hybrid Runbook Worker basado en agente.

Si habilita Update Management de Azure Automation, las máquinas conectadas al área de trabajo de Log Analytics se configurarán automáticamente como una instancia de Hybrid Runbook Worker del sistema. Para configurarla como una instancia de Hybrid Runbook Worker de usuario, consulte Implementación de Hybrid Runbook Worker Windows basado en agente en Automation y, en el caso de Linux, Implementación de Hybrid Runbook Worker Linux basado en agente en Automation.

Límites de Runbook Worker

En la tabla siguiente se muestra el número máximo de instancias de Hybrid Runbook Worker de usuario y sistema en una cuenta de Automation. Si tiene que administrar más de 4000 máquinas, se recomienda crear otra cuenta de Automation.

Tipo de trabajo Número máximo admitido por cuenta de Automation.
Sistema 4000
Usuario 4000

¿Cómo funciona?

Cada Hybrid Runbook Worker de usuario es miembro de un grupo de instancias de Hybrid Runbook Worker que especifica cuando instala el trabajo. Un grupo puede incluir solo un trabajo, pero puede incluir varios en un grupo para contar con alta disponibilidad. Cada máquina puede hospedar una instancia de Hybrid Runbook Worker que envía informes a una cuenta de Automation; no se puede registrar la instancia de Hybrid Worker en varias cuentas de Automation. Una instancia de Hybrid Worker solo puede escuchar trabajos de una única cuenta de Automation.

User Hybrid Runbook Worker technical diagram

Las máquinas que hospedan la instancia de Hybrid Runbook Worker del sistema administrada por Update Management se pueden agregar a un grupo de Hybrid Runbook Worker. Sin embargo, debe usar la misma cuenta de Automation para Update Management y para la pertenencia al grupo de Hybrid Runbook Worker.

System Hybrid Runbook Worker technical diagram

Un grupo de Hybrid Worker con Hybrid Runbook Workers está diseñado para lograr una alta disponibilidad y equilibrio de carga mediante la asignación de trabajos entre varios Workers. Para ejecutar runbooks correctamente, Hybrid Worker debe estar en buen estado y dar un latido. Hybrid Worker funciona en un mecanismo de sondeo para recoger trabajos. Si ninguno de los roles de trabajo del grupo Hybrid Worker ha hecho ping al servicio Automation en los últimos 30 minutos, esto indica que el grupo no tenía ningún rol de trabajo activo. En este escenario, los trabajos se suspenderán después de tres reintentos.

Cuando se inicia un runbook en una instancia de Hybrid Runbook Worker de usuario, se especifica el grupo en el que se ejecuta y no se puede especificar un rol de trabajo determinado. Cada Hybrid Worker activo del grupo sondeará los trabajos cada 30 segundos para ver si hay algún trabajo disponible. El rol de trabajo elige los trabajos siguiendo la premisa de que el primero que llega se lo queda. En función de cuándo se insertó un trabajo, la instancia de Hybrid Worker que esté dentro del grupo de Hybrid Worker que haga ping al servicio Automation primero tomará el trabajo. El tiempo de procesamiento de la cola de trabajos también depende de la carga y del perfil de hardware de Hybrid Worker.

Normalmente, una sola instancia de Hybrid Worker puede seleccionar 4 trabajos por ping (es decir, cada 30 segundos). Si la tasa de inserción de trabajos fuera superior a 4 cada 30 segundos y ningún otro Rol de trabajo tomara el trabajo, es posible que este se suspenda con un error.

Una instancia de Hybrid Runbook Worker no tiene muchos de los límites del espacio aislado de Azure en el espacio en disco, la memoria o los sockets de red. Los límites de una instancia de Hybrid Worker solo están relacionados con los propios recursos del trabajo y no están limitados por el límite de tiempo de distribución equilibrada que tienen los espacios aislados de Azure.

Para controlar la distribución de runbooks en las instancias de Hybrid Runbook Worker y cuándo o cómo se desencadenan los trabajos, puede registrar la instancia de Hybrid Worker en distintos grupos de Hybrid Runbook Worker de la cuenta de Automation. Establezca como destino los trabajos en el grupo o grupos específicos para admitir la organización de ejecuciones.

Escenarios comunes para Hybrid Runbook Worker de usuario

  • Para ejecutar runbooks de Azure Automation para la administración de máquinas virtuales invitadas directamente en una máquina virtual de Azure existente y en un servidor fuera de Azure registrado como servidor habilitado para Azure Arc o máquina virtual VMware habilitada para Azure Arc (versión preliminar). Los servidores habilitados para Azure Arc pueden ser máquinas virtuales y servidores físicos de Windows y Linux hospedados fuera de Azure, en la red corporativa o en otros proveedores de nube.
  • Para superar la limitación del espacio aislado de Azure Automation, los escenarios comunes incluyen la ejecución de operaciones de larga duración por encima del límite de tres horas para trabajos en la nube, la realización de operaciones de automatización que consumen muchos recursos, la interacción con servicios locales que se ejecutan de forma local o en un entorno híbrido o la ejecución de scripts que requieren permisos elevados.
  • Para superar las restricciones de la organización, con el fin de mantener los datos en Azure por motivos de gobernanza y seguridad, ya que no puede ejecutar trabajos de automatización en la nube, puede ejecutarlos en una máquina local que se haya incorporado como Hybrid Runbook Worker de usuario.
  • Para automatizar las operaciones en varios recursos fuera de Azure que se ejecutan en entornos locales o de varias nubes. Puede incorporar una de esas máquinas como Hybrid Runbook Worker de usuario y dirigir la automatización al resto de máquinas en el entorno local.
  • Para acceder a otros servicios de forma privada desde la red virtual de Azure (VNet) sin abrir una conexión a Internet saliente, puede ejecutar runbooks en una instancia de Hybrid Worker conectada a la red virtual de Azure.

Instalación de una instancia de Hybrid Runbook Worker

El proceso para instalar una instancia de Hybrid Runbook Worker de usuario depende del sistema operativo. En la tabla siguiente, se definen los tipos de implementación.

Sistema operativo Tipos de implementación
Windows Automatizado
Manual.
Linux Manual
Es posible usar el En el caso de las instancias de Hybrid Runbook Worker de usuario, consulte Implementación de una instancia de Hybrid Runbook Worker de usuario Windows o Linux basada en extensiones en Automation. Éste es el método recomendado.

Nota:

Hybrid Runbook Worker no se admite actualmente en VM Scale Sets.

Planeamiento de red

Consulte Configuración de red de Azure Automation para más información sobre los puertos, las direcciones URL y otros detalles de red necesarios para Hybrid Runbook Worker.

Uso del servidor proxy

Si se usa un servidor proxy para la comunicación entre Azure Automation y las máquinas que ejecutan el agente de Log Analytics, asegúrese de que sea posible acceder a los recursos adecuados. El tiempo de expiración para las solicitudes de Hybrid Runbook Worker y los servicios de Automation es de 30 segundos. Después de tres intentos, se produce un error en una solicitud.

Uso del firewall

Si usa un firewall para restringir el acceso a Internet, tendrá que configurarlo para que permita el acceso. Si usa la puerta de enlace de Log Analytics como proxy, asegúrese de que está configurada para instancias de Hybrid Runbook Worker. Consulte Configuración de la pueta de enlace de Log Analytics para Hybrid Runbook Worker de Automation.

Etiquetas de servicio

Azure Automation admite etiquetas de servicio de red virtual de Azure, empezando por la etiqueta de servicio GuestAndHybridManagement. Puede usar etiquetas de servicio para definir controles de acceso a la red en grupos de seguridad de red o Azure Firewall. Las etiquetas de servicio se pueden usar en lugar de direcciones IP específicas al crear reglas de seguridad. Al especificar el nombre de la etiqueta de servicio GuestAndHybridManagement en el campo de origen o destino apropiado de una regla, puede permitir o denegar el tráfico para el servicio Automation. Esta etiqueta de servicio no admite un control más pormenorizado mediante la restricción de los intervalos de IP a una región específica.

La etiqueta de servicio de Azure Automation solo proporciona direcciones IP que se usan para los siguientes escenarios:

  • Desencadenar webhooks desde dentro de la red virtual
  • Permitir que los agentes de Hybrid Runbook Worker o State Configuration de la red virtual se comuniquen con el servicio Automation

Nota:

La etiqueta de servicio GuestAndHybridManagement no admite actualmente la ejecución de trabajos de runbook en un espacio aislado de Azure, solo directamente en una instancia de Hybrid Runbook Worker.

Compatibilidad con el nivel 5 de impacto (IL5)

Hybrid Runbook Worker de Azure Automation se puede usar en Azure Government para admitir cargas de trabajo de nivel 5 de impacto en cualquiera de las dos configuraciones siguientes:

  • Máquina virtual aislada. Cuando se implementa, consume todo el host físico de esa máquina, lo que proporciona el nivel necesario de aislamiento para admitir las cargas de trabajo IL5.

  • Azure Dedicated Host, proporciona servidores físicos capaces de hospedar una o varias máquinas virtuales, dedicados a una suscripción de Azure.

Nota:

El aislamiento de proceso mediante el rol Hybrid Runbook Worker está disponible para las nubes de Azure Commercial y US Government.

Direcciones de Update Management para Hybrid Runbook Worker

Además de las direcciones y puertos estándar necesarios para Hybrid Runbook Worker, Update Management tiene otros requisitos de configuración de red que se describen en la sección Planeamiento de red.

State Configuration de Azure Automation en una instancia de Hybrid Runbook Worker

Puede ejecutar State Configuration de Azure Automation en una instancia de Hybrid Runbook Worker. Para administrar la configuración de los servidores que admiten la instancia de Hybrid Runbook Worker, debe agregar dichos servidores como nodos de DSC. Consulte el artículo Incorporación de máquinas para su administración mediante Azure Automation State Configuration.

Runbooks en Hybrid Runbook Worker

Podría tener runbooks que administren recursos en la máquina local o se ejecuten con recursos en el entorno local en el que se implementa una instancia de Hybrid Runbook Worker de usuario. En este caso, puede elegir ejecutar los runbooks en la instancia de Hybrid Worker en lugar de en una cuenta de Automation. La estructura de los runbooks que se ejecutan en una instancia de Hybrid Runbook Worker es idéntica a la de los que ejecuta en la cuenta de Automation. Consulte Ejecución de runbooks en Hybrid Runbook Worker.

Trabajos de Hybrid Runbook Worker

Los trabajos de Hybrid Runbook Worker se ejecutan en la cuenta del sistema local en Windows o en la cuenta nxautomation en Linux. Azure Automation controla los trabajos en Hybrid Runbook Worker de forma diferente a los trabajos que se ejecutan en espacios aislados de Azure. Consulte Dónde ejecutar los runbooks.

Si la máquina host de Hybrid Runbook Worker se reinicia, cualquier trabajo de runbook en ejecución se reinicia desde el principio o desde el último punto de comprobación para runbooks de Flujo de trabajo de PowerShell. Si un trabajo de runbook se reinicia más de tres veces, se suspende.

Permisos del runbook para una instancia de Hybrid Runbook Worker

Puesto que acceden a recursos que no son de Azure, los runbooks que se ejecutan en una instancia de Hybrid Runbook Worker de usuario no pueden usar el mecanismo de autenticación que usan normalmente los runbooks que se autentican en los recursos de Azure. Un runbook proporciona su propia autenticación a los recursos locales o configura la autenticación mediante identidades administradas para los recursos de Azure. También puede especificar una cuenta de ejecución para proporcionar un contexto de usuario para todos los runbooks.

Visualización de instancias de Hybrid Runbook Worker del sistema

Una vez habilitada la característica Update Management en máquinas Windows o Linux, puede inventariar la lista de grupos de Hybrid Runbook Worker del sistema en Azure Portal. Puede ver hasta 2000 trabajos en el portal si selecciona la pestaña System hybrid workers group (Grupos de trabajos híbridos del sistema) de la opción Hybrid workers group (Grupo de trabajos híbridos) en el panel izquierdo de la cuenta de Automation seleccionada.

Automation account system hybrid worker groups page

Si tiene más de 2000 trabajos híbridos, puede ejecutar el siguiente script de PowerShell para obtener una lista de todos ellos:

"Get-AzSubscription -SubscriptionName "<subscriptionName>" | Set-AzContext
$workersList = (Get-AzAutomationHybridWorkerGroup -ResourceGroupName "<resourceGroupName>" -AutomationAccountName "<automationAccountName>").Runbookworker
$workersList | export-csv -Path "<Path>\output.csv" -NoClobber -NoTypeInformation"

Pasos siguientes