View a markdown version of this page

Presente solicitudes para sus trabajos - 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.

Presente solicitudes para sus trabajos

Puede usar un entorno de colas para cargar las aplicaciones y procesar sus trabajos. Al crear una flota gestionada por servicios mediante la consola de Deadline Cloud, tiene la opción de crear un entorno de colas que utilice el administrador de paquetes de conda para cargar las aplicaciones.

Si desea utilizar un administrador de paquetes diferente, puede crear un entorno de colas para ese administrador. Para ver un ejemplo de uso de Rez, consulteUsa un administrador de paquetes diferente.

Deadline Cloud proporciona un canal conda para cargar una selección de aplicaciones de renderizado en su entorno. Respaldan a los remitentes que Deadline Cloud proporciona para las aplicaciones de creación de contenido digital.

También puede cargar software para que conda-forge lo use en sus trabajos. Los siguientes ejemplos muestran plantillas de trabajo que utilizan el entorno de colas proporcionado por Deadline Cloud para cargar las aplicaciones antes de ejecutar el trabajo.

Obtener una solicitud de un canal de conda

Puede crear un entorno de colas personalizado para sus trabajadores de Deadline Cloud para instalar el software que prefiera. Este ejemplo de entorno de colas tiene el mismo comportamiento que el entorno utilizado por la consola para las flotas gestionadas por servicios. Ejecuta conda directamente para crear el entorno.

El entorno crea un nuevo entorno virtual de conda para cada sesión de Deadline Cloud que se ejecuta en un trabajador y, cuando termina, elimina el entorno.

Conda almacena en caché los paquetes descargados para que no sea necesario volver a descargarlos, pero cada sesión debe vincular todos los paquetes al entorno.

El entorno define tres scripts que se ejecutan cuando Deadline Cloud inicia una sesión en un trabajador. El primer script se ejecuta cuando se llama a la onEnter acción. Llama a los otros dos para configurar las variables de entorno. Cuando el script termina de ejecutarse, el entorno de conda está disponible con todas las variables de entorno especificadas configuradas.

Para ver la versión más reciente del ejemplo, consulte https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/queue_environments/conda_queue_env_from_console.yaml conda_queue_env_from_console.yaml en el repositorio deadline-cloud-samples en. https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline GitHub

Si desea utilizar una aplicación que no esté disponible en el canal conda, puede crear un canal conda en Amazon S3 y, a continuación, crear sus propios paquetes para esa aplicación. Consulte Crea un canal conda con S3 para obtener más información.

Obtenga bibliotecas de código abierto en conda-forge

En esta sección se describe cómo usar las bibliotecas de código abierto del conda-forge canal. El siguiente ejemplo es una plantilla de trabajo que usa el paquete polars Python.

El trabajo establece CondaPackages los CondaChannels parámetros definidos en el entorno de cola que indican a Deadline Cloud dónde obtener el paquete.

La sección de la plantilla de trabajo que establece los parámetros es:

- name: CondaPackages description: A list of conda packages to install. The job expects a Queue Environment to handle this. type: STRING default: polars - name: CondaChannels description: A list of conda channels to get packages from. The job expects a Queue Environment to handle this. type: STRING default: conda-forge

Para ver la versión más reciente de la plantilla de trabajo de ejemplo completa, consulta stage_1_self_contained_template/template .yaml. Para ver la versión más reciente del entorno de colas que carga los paquetes de conda, consulta https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/queue_environments/conda_queue_env_from_console.yaml conda_queue_env_from_console.yaml en el repositorio deadline-cloud-samples en. https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline GitHub

Get Blender del canal deadline-cloud

El siguiente ejemplo muestra una plantilla de trabajo que se obtiene Blender del canal deadline-cloud conda. Este canal admite los remitentes que Deadline Cloud proporciona para el software de creación de contenido digital, aunque puedes usar el mismo canal para cargar software para tu propio uso.

Para ver una lista del software que ofrece el deadline-cloud canal, consulta la sección Entorno de colas predeterminado en la guía del usuario de AWS Deadline Cloud.

Este trabajo establece el CondaPackages parámetro definido en el entorno de cola para indicar a Deadline Cloud que cargue Blender en el entorno.

La sección de la plantilla de trabajo que establece el parámetro es:

- name: CondaPackages type: STRING userInterface: control: LINE_EDIT label: Conda Packages groupLabel: Software Environment default: blender description: > Tells the queue environment to install Blender from the deadline-cloud conda channel.

Para ver la versión más reciente de la plantilla de trabajo de ejemplo completa, consulta blender_render/template .yaml. Para ver la versión más reciente del entorno de colas que carga los paquetes de conda, consulta https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/queue_environments/conda_queue_env_from_console.yaml conda_queue_env_from_console.yaml en el repositorio deadline-cloud-samples en. https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline GitHub

Usa un administrador de paquetes diferente

El gestor de paquetes predeterminado para Deadline Cloud es conda. Si necesitas usar un administrador de paquetes diferente, por ejemploRez, puedes crear un entorno de colas personalizado que contenga scripts que usen tu administrador de paquetes en su lugar.

Este ejemplo de entorno de colas proporciona el mismo comportamiento que el entorno utilizado por la consola para las flotas administradas por servicios. Sustituye al administrador de paquetes conda por. Rez

El entorno define tres scripts que se ejecutan cuando Deadline Cloud inicia una sesión con un trabajador. El primer script se ejecuta cuando se llama a la onEnter acción. Llama a los otros dos para configurar las variables de entorno. Cuando el script termina de ejecutarse, el Rez entorno está disponible con todas las variables de entorno especificadas configuradas.

En el ejemplo se presupone que tiene una flota gestionada por el cliente que utiliza un sistema de archivos compartido para los paquetes Rez.

Para ver la versión más reciente del ejemplo, consulta https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/queue_environments/rez_queue_env.yaml rez_queue_env.yaml en el repositorio deadline-cloud-samples en. https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline GitHub

Python-only Usa pip para los paquetes

Si las aplicaciones o bibliotecas que necesitan tus trabajos son paquetes puros de Python disponibles en PyPI, puedes usar pip y el venv módulo de biblioteca estándar de Python en lugar de conda o. Rez Este enfoque funciona bien cuando un paquete no se publica en un canal de conda o cuando quieres un entorno virtual más pequeño que el que crea conda. A diferencia de conda yRez, pip y venv están incluidos en el propio Python, por lo que los hosts de trabajo solo necesitan un python3 intérprete en el. PATH Las flotas administradas por el servicio Deadline Cloud proporcionan uno.

Entorno de colas de pips para Deadline CloudCrea un entorno virtual de Python en el directorio de trabajo de la sesión cuando un trabajo establece el PipPackages parámetro, instala en él los paquetes solicitados con pip y lo activa para que los pasos del trabajo se ejecuten con los paquetes disponibles. Como el entorno se crea en el directorio de trabajo de la sesión, Deadline Cloud lo limpia automáticamente cuando finaliza la sesión y no es necesario que escribas tu propia lógica de limpieza. Si una tarea no está configuradaPipPackages, el entorno de colas no hace nada, por lo que puedes añadirla a una cola en la que también se ejecuten las tareas que no la utilizan.

Para instalar paquetes desde un índice privado, como un CodeArtifact repositorio de AWS, en lugar del índice PyPI público, defina PipExtraIndexUrls los parámetros PipIndexUrl y los parámetros que proporciona el entorno de colas.

Si prefiere no configurar un entorno de cola, puede definir el mismo entorno de pip en línea en un paquete de trabajos. Para ver un ejemplo de cada enfoque, consulta los paquetes de trabajos pip_package_job y pip_self_contained_job en el repositorio deadline-cloud-samples en. https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline GitHub

En el caso de las colas de producción, fija las versiones de los paquetes en el valor del parámetro en lugar de instalar la versión más reciente cada vez. PipPackages La fijación de versiones ofrece entornos reproducibles y evita interrupciones inesperadas cuando un paquete publica una nueva versión. Si un trabajo depende de que las versiones del remitente y del adaptador coincidan, ancla ambas a la misma versión.

Si los trabajadores de tu flota gestionados por los clientes ejecutan trabajos para más de una aplicación de creación de contenido digital (DCC) y tú instalas los adaptadores de Deadline Cloud con pip, instala cada adaptador en su propio entorno virtual. La instalación conjunta de varios adaptadores en el mismo entorno virtual puede provocar que pip resuelva una dependencia compartida de una versión que entra en conflicto con uno de los adaptadores.

Los hosts de trabajo necesitan acceso de red a una fuente de paquetes, como PyPI o un espejo privado, para instalar los paquetes cuando se inicia una sesión. Si los trabajadores de su flota gestionados por los clientes funcionan en una subred privada sin acceso a Internet, utilice un punto de enlace de VPC para el origen del paquete, un espejo de pip privado o, en su lugar, instale los paquetes en su AMI de trabajo.

La siguiente tabla resume las ventajas y desventajas de cada administrador de paquetes para ayudarte a elegir cuál usar.

Administrador de paquetes Lo mejor para Trade-offs
Conda (predeterminado) Aplicaciones DCC, dependencias nativas complejas, paquetes multiplataforma Entornos más grandes; los paquetes deben publicarse en un canal conda
Rez Canalizaciones de Studio con infraestructura existente Rez Requiere estar Rez instalado en los hosts de trabajo y un sistema de archivos compartido para el repositorio de paquetes
Pip Python-only paquetes, PyPI-hosted bibliotecas, instalaciones ligeras Limitado a paquetes de Python; sin resolución de dependencias nativa

Después de elegir un entorno de cola, adjúntelo a la cola. Puedes añadir la plantilla YAML desde la pestaña de entornos de cola a tu cola en la consola de Deadline Cloud o utilizar la operación deadline:. CreateQueueEnvironment Para obtener instrucciones sobre la consola, consulta Cómo crear un entorno de colas en la guía del usuario de AWS Deadline Cloud. Para adjuntar un entorno de colas a la AWS CLI:

aws deadline create-queue-environment \ --farm-id FARM_ID \ --queue-id QUEUE_ID \ --priority 1 \ --template-type YAML \ --template file://queue-environment.yaml