Cree una granja de Deadline Cloud - Nube de plazos

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.

Cree una granja de Deadline Cloud

Para crear tu granja de desarrolladores y poner en cola los recursos en AWS Deadline Cloud, usa el AWS Command Line Interface (AWS CLI), como se muestra en el siguiente procedimiento. También crearás un rol AWS Identity and Access Management (IAM) y una flota gestionada por el cliente (CMF) y asociarás la flota a tu cola. A continuación, puede configurar la granja AWS CLI y confirmar que está configurada y funcionando según lo especificado.

Puedes usar esta granja para explorar las funciones de Deadline Cloud y, a continuación, desarrollar y probar nuevas cargas de trabajo, personalizaciones e integraciones de canalizaciones.

Para crear una granja
  1. Abre una AWS CloudShell sesión. Utilizará la CloudShell ventana para introducir comandos AWS Command Line Interface (AWS CLI) para ejecutar los ejemplos de este tutorial. Mantén la CloudShell ventana abierta a medida que avanzas.

  2. Cree un nombre para su granja y añada ese nombre a~/.bashrc. Esto hará que esté disponible para otras sesiones terminales.

    echo "DEV_FARM_NAME=DeveloperFarm" >> ~/.bashrc source ~/.bashrc
  3. Cree el recurso de granja y añada su ID de granja a~/.bashrc.

    aws deadline create-farm \ --display-name "$DEV_FARM_NAME" echo "DEV_FARM_ID=\$(aws deadline list-farms \ --query \"farms[?displayName=='\$DEV_FARM_NAME'].farmId \ | [0]\" --output text)" >> ~/.bashrc source ~/.bashrc
  4. Cree el recurso de cola y añada su ID de cola a ~/.bashrc.

    aws deadline create-queue \ --farm-id $DEV_FARM_ID \ --display-name "$DEV_FARM_NAME Queue" \ --job-run-as-user '{"posix": {"user": "job-user", "group": "job-group"}, "runAs":"QUEUE_CONFIGURED_USER"}' echo "DEV_QUEUE_ID=\$(aws deadline list-queues \ --farm-id \$DEV_FARM_ID \ --query \"queues[?displayName=='\$DEV_FARM_NAME Queue'].queueId \ | [0]\" --output text)" >> ~/.bashrc source ~/.bashrc
  5. Cree un rol de IAM para la flota. Esta función proporciona a los trabajadores anfitriones de su flota las credenciales de seguridad necesarias para ejecutar los trabajos desde su lista de espera.

    aws iam create-role \ --role-name "${DEV_FARM_NAME}FleetRole" \ --assume-role-policy-document \ '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.deadline.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }' aws iam put-role-policy \ --role-name "${DEV_FARM_NAME}FleetRole" \ --policy-name WorkerPermissions \ --policy-document \ '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "deadline:AssumeFleetRoleForWorker", "deadline:UpdateWorker", "deadline:DeleteWorker", "deadline:UpdateWorkerSchedule", "deadline:BatchGetJobEntity", "deadline:AssumeQueueRoleForWorker" ], "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalAccount": "${aws:ResourceAccount}" } } }, { "Effect": "Allow", "Action": [ "logs:CreateLogStream" ], "Resource": "arn:aws:logs:*:*:*:/aws/deadline/*", "Condition": { "StringEquals": { "aws:PrincipalAccount": "${aws:ResourceAccount}" } } }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents", "logs:GetLogEvents" ], "Resource": "arn:aws:logs:*:*:*:/aws/deadline/*", "Condition": { "StringEquals": { "aws:PrincipalAccount": "${aws:ResourceAccount}" } } } ] }'
  6. Cree la flota gestionada por el cliente (CMF) y añada su ID de flota a. ~/.bashrc

    FLEET_ROLE_ARN="arn:aws:iam::$(aws sts get-caller-identity \ --query "Account" --output text):role/${DEV_FARM_NAME}FleetRole" aws deadline create-fleet \ --farm-id $DEV_FARM_ID \ --display-name "$DEV_FARM_NAME CMF" \ --role-arn $FLEET_ROLE_ARN \ --max-worker-count 5 \ --configuration \ '{ "customerManaged": { "mode": "NO_SCALING", "workerCapabilities": { "vCpuCount": {"min": 1}, "memoryMiB": {"min": 512}, "osFamily": "linux", "cpuArchitectureType": "x86_64" } } }' echo "DEV_CMF_ID=\$(aws deadline list-fleets \ --farm-id \$DEV_FARM_ID \ --query \"fleets[?displayName=='\$DEV_FARM_NAME CMF'].fleetId \ | [0]\" --output text)" >> ~/.bashrc source ~/.bashrc
  7. Asocia la CMF a tu cola.

    aws deadline create-queue-fleet-association \ --farm-id $DEV_FARM_ID \ --queue-id $DEV_QUEUE_ID \ --fleet-id $DEV_CMF_ID
  8. Instale la interfaz de línea de comandos de Deadline Cloud.

    pip install deadline
  9. Para establecer la granja predeterminada en el ID de granja y la cola en el ID de cola que creó anteriormente, utilice el siguiente comando.

    deadline config set defaults.farm_id $DEV_FARM_ID deadline config set defaults.queue_id $DEV_QUEUE_ID
  10. (Opcional) Para confirmar que la granja está configurada de acuerdo con sus especificaciones, utilice los siguientes comandos:

    • Enumere todas las granjas: deadline farm list

    • Listar todas las colas de la granja predeterminada: deadline queue list

    • Enumere todas las flotas de la granja predeterminada: deadline fleet list

    • Obtenga la granja predeterminada: deadline farm get

    • Obtenga la cola predeterminada: deadline queue get

    • Obtenga todas las flotas asociadas a la cola predeterminada: deadline fleet get

Pasos a seguir a continuación

Tras crear tu granja, puedes ejecutar el agente de trabajo de Deadline Cloud en los hosts de tu flota para procesar los trabajos. Consulte Ejecute el agente de trabajo de Deadline Cloud.