View a markdown version of this page

Instalación y configuración del host de trabajo - Deadline Cloud

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Instalación y configuración del host de trabajo

Un host de trabajo hace referencia a una máquina host que ejecuta un servidor de trabajo de Deadline Cloud. En esta sección se explica cómo configurar el host de trabajo y cómo configurarlo para tus necesidades específicas. Cada anfitrión de trabajo ejecuta un programa denominado agente de trabajo. El agente trabajador es responsable de:

  • Gestionar el ciclo de vida del trabajador.

  • Sincronizar el trabajo asignado, su progreso y sus resultados.

  • Supervisión del trabajo en ejecución.

  • Reenviar registros a los destinos configurados.

Le recomendamos que utilice el agente de trabajo de Deadline Cloud que se proporciona. El agente de trabajo es de código abierto y te recomendamos que solicites funciones, pero también puedes desarrollarlo y personalizarlo para que se adapte a tus necesidades.

Para completar las tareas de las siguientes secciones, necesitas lo siguiente:

Linux
  • Una instancia Linux basada en Amazon Elastic Compute Cloud (Amazon EC2). Recomendamos Amazon Linux 2023.

  • sudoprivilegios

  • Python 3.9 o superior

Windows
  • Una instancia Windows basada en Amazon Elastic Compute Cloud (Amazon EC2). Lo recomendamosWindows Server 2022.

  • Acceso de administrador al host del trabajador

  • Python 3.9 o superior instalado para todos los usuarios

Cree y configure un entorno virtual de Python

Puede crear un entorno virtual de Python Linux si ha instalado Python 3.9 o una versión posterior y lo ha colocado en suPATH.

nota

SíWindows, los archivos del agente deben instalarse en el directorio global de paquetes de sitios de Python. Los entornos virtuales de Python no son compatibles actualmente.

Para crear y activar un entorno virtual de Python
  1. Abra una terminal como root usuario (o usesudo/su).

  2. Cree y active un entorno virtual de Python.

    python3 -m venv /opt/deadline/worker source /opt/deadline/worker/bin/activate pip install --upgrade pip

Instale el agente de trabajo de Deadline Cloud

Después de configurar Python y crear un entorno virtual en élLinux, instala los paquetes Python del agente de trabajo de Deadline Cloud.

Para instalar los paquetes de Python del agente de trabajo

Linux
  1. Abra una terminal como root usuario (o usesudo/su).

  2. Descargue e instale los paquetes de agentes de trabajo de Deadline Cloud desde PyPI:

    /opt/deadline/worker/bin/python -m pip install deadline-cloud-worker-agent
Windows
  1. Abra la línea de comandos o PowerShell la terminal de un administrador.

  2. Descargue e instale los paquetes de agentes de trabajo de Deadline Cloud desde PyPI:

    python -m pip install deadline-cloud-worker-agent

Si su anfitrión Windows de trabajo requiere nombres de ruta largos (más de 250 caracteres), debe habilitar los nombres de ruta largos de la siguiente manera:

  1. Asegúrese de que la clave de registro de ruta larga esté habilitada. Para obtener más información, consulte la configuración del registro para habilitar las rutas de registro en el sitio web de Microsoft.

  2. Instale el Windows SDK para aplicaciones de escritorio de C++ x86. Para obtener más información, consulte el Windows SDK en el Centro de desarrollo. Windows

  3. Abra la ubicación de instalación de Python en el entorno en el que está instalado el agente de trabajo. El valor predeterminado es C:\Program Files\Python311. Hay un archivo ejecutable llamadopythonservice.exe.

  4. Cree un archivo nuevo llamado pythonservice.exe.manifest en la misma ubicación. Agregue lo siguiente:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity type="win32" name="pythonservice" processorArchitecture="x86" version="1.0.0.0"/> <application xmlns="urn:schemas-microsoft-com:asm.v3"> <windowsSettings> <longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware> </windowsSettings> </application> </assembly>
  5. Abra una línea de comandos y ejecute el siguiente comando en la ubicación del archivo de manifiesto que creó:

    "C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x86\mt.exe" -manifest pythonservice.exe.manifest -outputresource:pythonservice.exe;#1

    Debería ver una salida similar a esta:

    Microsoft (R) Manifest Tool Copyright (c) Microsoft Corporation. All rights reserved.

El trabajador ahora puede acceder a rutas largas. Para limpiarlo, elimine el pythonservice.exe.manifest archivo y desinstale el SDK.

Configure el agente de trabajo de Deadline Cloud

Puede configurar los ajustes del agente de trabajo de Deadline Cloud de tres maneras. Le recomendamos que utilice la configuración del sistema operativo ejecutando la install-deadline-worker herramienta.

Argumentos de línea de comandos: puede especificar argumentos al ejecutar el agente de trabajo de Deadline Cloud desde la línea de comandos. Algunos parámetros de configuración no están disponibles mediante los argumentos de la línea de comandos. Para ver todos los argumentos de la línea de comandos disponibles, escribadeadline-worker-agent --help.

Variables de entorno: puede configurar el agente de trabajo de Deadline Cloud configurando la variable de entorno empezando porDEADLINE_WORKER_. Por ejemplo, para ver todos los argumentos de línea de comandos disponibles, puedes usar export DEADLINE_WORKER_VERBOSE=true para configurar la salida del agente de trabajo como detallada. Para obtener más ejemplos e información, consulta /etc/amazon/deadline/worker.toml.example on Linux o C:\ProgramData\Amazon\Deadline\Config\worker.toml.example on. Windows

Archivo de configuración: al instalar el agente de trabajo, se crea un archivo de configuración ubicado en /etc/amazon/deadline/worker.toml on Linux o C:\ProgramData\Amazon\Deadline\Config\worker.toml onWindows. El agente de trabajo carga este archivo de configuración cuando se inicia. Puede usar el archivo de configuración de ejemplo (/etc/amazon/deadline/worker.toml.exampleC:\ProgramData\Amazon\Deadline\Config\worker.toml.exampleactivado Linux o activoWindows) para adaptar el archivo de configuración predeterminado del agente de trabajo a sus necesidades específicas.

Por último, le recomendamos que habilite el apagado automático del agente de trabajo una vez que el software esté implementado y funcione según lo previsto. Esto permite que la flota de trabajadores se amplíe cuando sea necesario y se cierre cuando finaliza un trabajo. El escalado automático ayuda a garantizar que solo utilice los recursos necesarios. Para permitir el cierre de una instancia iniciada por el grupo de escalado automático, debes shutdown_on_stop=true añadirla al archivo worker.toml de configuración.

Para habilitar el apagado automático

Como root usuario:

  • Instale el agente de trabajo con los parámetros--allow-shutdown.

    Linux

    Escriba:

    /opt/deadline/worker/bin/install-deadline-worker \ --farm-id FARM_ID \ --fleet-id FLEET_ID \ --region REGION \ --allow-shutdown
    Windows

    Escriba:

    install-deadline-worker ^ --farm-id FARM_ID ^ --fleet-id FLEET_ID ^ --region REGION ^ --allow-shutdown

Cree usuarios y grupos de trabajos

En esta sección se describe la relación de usuario y grupo requerida entre el usuario del agente y el usuario jobRunAsUser definido en sus colas.

El agente de trabajo de Deadline Cloud debe ejecutarse como un usuario dedicado y específico del agente en el host. Debe configurar la jobRunAsUser propiedad de las colas de Deadline Cloud para que los trabajadores ejecuten los trabajos en cola como un usuario y un grupo específicos del sistema operativo. Esta configuración significa que puede controlar los permisos del sistema de archivos compartidos que tienen sus trabajos. También proporciona un importante límite de seguridad entre sus trabajos y el usuario del agente de trabajo.

Linuxusuarios y grupos de trabajos

Para configurar un usuario de agente de trabajo local y jobRunAsUser asegurarse de que cumple los siguientes requisitos. Si utiliza un módulo de autenticación conectable (PAM) de Linux, como Active Directory o LDAP, el procedimiento puede ser diferente.

El usuario del agente de trabajo y el jobRunAsUser grupo compartido se configuran al instalar el agente de trabajo. Los valores predeterminados son deadline-worker-agent ydeadline-job-users, pero puede cambiarlos al instalar el agente de trabajo.

install-deadline-worker \ --user AGENT_USER_NAME \ --group JOB_USERS_GROUP

Los comandos deben ejecutarse como usuario raíz.

  • Cada uno jobRunAsUser debe tener un grupo principal coincidente. Al crear un usuario con el adduser comando, normalmente se crea un grupo principal coincidente.

    adduser -r -m jobRunAsUser
  • El grupo principal de jobRunAsUser es un grupo secundario para el usuario del agente de trabajo. El grupo compartido permite al agente de trabajo poner los archivos a disposición del trabajo mientras se ejecuta.

    usermod -a -G jobRunAsUser deadline-worker-agent
  • jobRunAsUserDebe ser miembro del grupo de trabajos compartidos.

    usermod -a -G deadline-job-users jobRunAsUser
  • No jobRunAsUser debe pertenecer al grupo principal del usuario del agente de trabajo. Los archivos confidenciales escritos por el agente trabajador pertenecen al grupo principal del agente. Si a jobRunAsUser forma parte de este grupo, los trabajos que se ejecutan en el trabajador pueden acceder a los archivos del agente de trabajo.

  • El valor predeterminado Región de AWS debe coincidir con la región de la granja a la que pertenece el trabajador. Aplica esta configuración a todas jobRunAsUser las cuentas del trabajador.

    sudo -u jobRunAsUser aws configure set default.region aws-region
  • El usuario del agente de trabajo debe poder ejecutar sudo comandos comojobRunAsUser. Ejecute el siguiente comando para abrir un editor y crear una nueva regla de sudoers:

    visudo -f /etc/sudoers.d/deadline-worker-job-user

    Agregue lo siguiente al archivo:

    # Allows the Deadline Cloud worker agent OS user to run commands # as the queue OS user without requiring a password. deadline-worker-agent ALL=(jobRunAsUser) NOPASSWD:ALL

El siguiente diagrama ilustra la relación entre el usuario del agente y los jobRunAsUser usuarios y grupos de las colas asociadas a la flota.

Una ilustración de la relación entre los agentes-usuarios y los que están jobRunAsUser en cola.

Usuarios de Windows

Para usar un Windows usuario comojobRunAsUser, este debe cumplir los siguientes requisitos:

  • Todos los jobRunAsUser usuarios de la cola deben existir.

  • Sus contraseñas deben coincidir con el valor del secreto especificado en el campo de la JobRunAsUser cola. Para obtener instrucciones, consulte el paso 7 de la Guía del usuario de Deadline Cloud sobre las colas de AWS Deadline Cloud.

  • El agente-usuario debe poder iniciar sesión como esos usuarios.

Proteger el alojamiento de su trabajador

Al configurar tu servidor de trabajo, sigue las prácticas recomendadas de seguridad para proteger la información confidencial y mantener los controles de acceso adecuados.

Configurar los permisos de la carpeta de registro

El agente de trabajo escribe archivos de registro que pueden contener información confidencial sobre los scripts de configuración del host y la ejecución de tareas. El install-deadline-worker comando crea el directorio de registro con permisos seguros. Si necesita crear el directorio manualmente antes de la instalación, utilice los procedimientos siguientes para que coincidan con los permisos que utilizan las flotas administradas por servicios:

Linux
Para configurar los permisos del directorio de registro en Linux
  1. Cree el directorio de registro:

    sudo mkdir -p /var/log/amazon/deadline
  2. Defina el propietario y el grupo como el usuario del agente de trabajo:

    sudo chown -R deadline-worker-agent:deadline-worker-agent /var/log/amazon/deadline
  3. Establezca los permisos en 750:

    sudo chmod -R 750 /var/log/amazon/deadline

    Estos permisos garantizan que solo el usuario y el grupo del agente de trabajo puedan acceder a los archivos de registro, lo que evita que los usuarios del trabajo y otros usuarios no autorizados lean información potencialmente confidencial.

Windows
Para configurar los permisos del directorio de registro en Windows
  1. Abra una PowerShell terminal de administrador.

  2. Cree el directorio de registro:

    New-Item -ItemType Directory -Force -Path "$env:PROGRAMDATA\Amazon\Deadline\Logs"
  3. Configure las ACL restringidas para que solo los administradores y los usuarios del agente de trabajo puedan:

    $acl = Get-Acl "$env:PROGRAMDATA\Amazon\Deadline\Logs" $acl.SetAccessRuleProtection($true, $false) $acl.Access | ForEach-Object { $acl.RemoveAccessRule($_) } $agentRule = New-Object System.Security.AccessControl.FileSystemAccessRule("deadline-worker", "FullControl", "ContainerInherit,ObjectInherit", "None", "Allow") $adminRule = New-Object System.Security.AccessControl.FileSystemAccessRule("Administrators", "FullControl", "ContainerInherit,ObjectInherit", "None", "Allow") $acl.AddAccessRule($agentRule) $acl.AddAccessRule($adminRule) Set-Acl "$env:PROGRAMDATA\Amazon\Deadline\Logs" $acl

    Estos comandos restringen el acceso al directorio de registro únicamente a los usuarios del agente de trabajo y al grupo de administradores, lo que impide que los usuarios del trabajo y otros usuarios no autorizados lean información potencialmente confidencial.