View a markdown version of this page

Creare un Docker- flotta abilitata con il AWS CLI - AWS Deadline Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creare un Docker- flotta abilitata con il AWS CLI

Il ruolo di coda richiede l'autorizzazione per autenticarsi su Amazon ECR ed estrarre l'immagine selezionata dall'Dockerambiente di coda. L'autorizzazione del ruolo della flotta è facoltativa per l'ambiente di coda predefinito. Aggiungila quando le azioni di configurazione dell'host o gli strumenti sul lato di lavoro estraggono le immagini fuori da una sessione di coda.

Prerequisiti

Prima di iniziare, configurali AWS CLI con l'autorizzazione a creare flotte Deadline Cloud e allega le policy ai ruoli di coda e flotta. Sono inoltre necessari una farm, una coda, un ruolo di coda, un ruolo della flotta e un'immagine del contenitore esistenti in un repository privato Amazon ECR.

Crea la flotta

Per creare un Docker-flotta abilitata
  1. Imposta i valori della fattoria, della coda e del ruolo.

    FARM_ID=farm-0123456789abcdef0123456789abcdef QUEUE_ID=queue-0123456789abcdef0123456789abcdef FLEET_ROLE_ARN=arn:aws:iam::123456789012:role/DeadlineFleetRole MAX_WORKERS=10 QUEUE_ROLE_ARN=$(aws deadline get-queue \ --farm-id "$FARM_ID" \ --queue-id "$QUEUE_ID" \ --query roleArn \ --output text) QUEUE_ROLE_NAME=${QUEUE_ROLE_ARN##*/} FLEET_ROLE_NAME=${FLEET_ROLE_ARN##*/} ECR_READ_ONLY_POLICY=arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly
  2. Collega la policy di sola lettura di Amazon ECR al ruolo di coda. L'ambiente di Docker coda predefinito utilizza le credenziali di coda per autenticare ed estrarre l'immagine.

    aws iam attach-role-policy \ --role-name "$QUEUE_ROLE_NAME" \ --policy-arn "$ECR_READ_ONLY_POLICY"
  3. (Facoltativo) Associate la stessa policy al ruolo della flotta quando le azioni di configurazione dell'host o gli strumenti sul lato di lavoro devono estrarre le immagini fuori dalla sessione di coda.

    aws iam attach-role-policy \ --role-name "$FLEET_ROLE_NAME" \ --policy-arn "$ECR_READ_ONLY_POLICY"
  4. Crea un file denominato docker-fleet-configuration.json con la seguente configurazione del parco veicoli:

    { "serviceManagedEc2": { "instanceCapabilities": { "vCpuCount": { "min": 4, "max": 16 }, "memoryMiB": { "min": 8192, "max": 65536 }, "osFamily": "linux", "cpuArchitectureType": "x86_64", "softwareAddOns": [ { "name": "docker" } ] }, "instanceMarketOptions": { "type": "spot" } } }
  5. Crea il parco veicoli gestito dal servizio e salva il relativo ID.

    FLEET_ID=$(aws deadline create-fleet \ --farm-id "$FARM_ID" \ --display-name "Docker fleet" \ --role-arn "$FLEET_ROLE_ARN" \ --min-worker-count 0 \ --max-worker-count "$MAX_WORKERS" \ --configuration file://docker-fleet-configuration.json \ --query fleetId \ --output text) echo "$FLEET_ID"
  6. Associa la coda alla flotta.

    aws deadline create-queue-fleet-association \ --farm-id "$FARM_ID" \ --queue-id "$QUEUE_ID" \ --fleet-id "$FLEET_ID"

Verifica le autorizzazioni del parco veicoli e dei ruoli

Per verificare il supporto dei container
  1. Verifica che la configurazione del parco veicoli includa il componente aggiuntivo del Docker software.

    aws deadline get-fleet \ --farm-id "$FARM_ID" \ --fleet-id "$FLEET_ID" \ --query 'configuration.serviceManagedEc2.instanceCapabilities.softwareAddOns'

    Conferma che la risposta contenga"name": "docker".

  2. Verifica che il ruolo di coda disponga della policy di sola lettura di Amazon ECR.

    aws iam list-attached-role-policies \ --role-name "$QUEUE_ROLE_NAME" \ --query 'AttachedPolicies[?PolicyName==`AmazonEC2ContainerRegistryReadOnly`]'
  3. Se hai associato la policy al ruolo della flotta, ripeti il comando con. --role-name "$FLEET_ROLE_NAME"

La flotta fornisce funzionalità senza rootDocker, ma la coda necessita comunque di un ambiente di Docker coda che identifichi un'immagine. Per i dettagli sulla configurazione della coda, vedere. Supporto in container per flotte gestite dai servizi