

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à.

# Crea una definizione di job sulle istanze gestite di Amazon ECS
<a name="create-job-definition-ecs-managed-instances"></a>

Le definizioni dei job di Amazon ECS Managed Instances vengono utilizzate con la funzionalità della piattaforma. `ecsProperties` `MANAGED_INSTANCES` A differenza di Fargate, non ci sono restrizioni sulle combinazioni di dimensioni di vCPU e memoria e le risorse GPU sono supportate. Per ulteriori informazioni sui parametri supportati, vedere. [Definizioni dei job sulle istanze gestite di Amazon ECS](ecs-managed-instances-job-definitions.md)

## Creazione di una definizione di processo su Amazon ECS Managed Instances (console)
<a name="create-jd-ecs-managed-instances-console"></a>

**Per creare una nuova definizione di job su Amazon ECS Managed Instances:**

1. Apri la AWS Batch console all'indirizzo. [ https://console.aws.amazon.com/batch/ ](https://console.aws.amazon.com/batch/)

1. Dalla barra di navigazione in alto, scegli quello Regione AWS da usare.

1. Nel riquadro di navigazione a sinistra, scegli Definizioni dei ** lavori**.

1. Scegli **Crea**.

1. Per il tipo di ** orchestrazione**, scegli ** ECS Managed Instances. **

1. Per ** Nome**, immettete un nome univoco per la definizione del processo. Il nome può contenere fino a 128 caratteri. Deve contenere lettere maiuscole e minuscole, numeri, trattini (-) e caratteri di sottolineatura (\_).

1. (Facoltativo) Per il timeout di ** esecuzione**, immettete il valore di timeout (in secondi). Il timeout di esecuzione è il periodo di tempo prima che un lavoro incompiuto venga terminato. Se un tentativo supera la durata del timeout, il tentativo viene interrotto e passa a uno stato. `FAILED` Per ulteriori informazioni, consulta [Timeout dei processi](job_timeouts.md). Il valore minimo è 60 secondi.

1. Per il ruolo ** Execution**, scegli un ruolo IAM che conceda all'agente container Amazon ECS l'autorizzazione a effettuare chiamate AWS API per tuo conto. Questo ruolo è richiesto per i job di Amazon ECS Managed Instances. Ad esempio, il ruolo viene utilizzato per estrarre immagini di container da Amazon ECR.

1. Nella ** sezione Configurazione del ** contenitore:

   1. Per ** Immagine**, inserisci l'immagine del contenitore da usare per il lavoro. Le immagini nei registri Amazon ECR possono essere specificate con la convenzione di denominazione`{{repository-url}}/{{image}}:{{tag}}`. Le immagini nei registri pubblici utilizzano l'URI completo (ad esempio,). `public.ecr.aws/amazonlinux/amazonlinux:2023`

   1. Per ** Comando**, immettete il comando da passare al contenitore.

   1. Per **vCPUs** (vCPU) specifica il numero di vCPU da prenotare per il container.

   1. Per ** Memoria**, specifica il limite di memoria (in MiB) disponibile per il contenitore.

   1. (Facoltativo) Per le ** GPU**, specifica il numero di dispositivi GPU da rendere disponibili per il contenitore. L'ambiente di calcolo deve avere istanze GPU disponibili.

1. (Facoltativo) Espandi i ** tag**, quindi scegli ** Aggiungi tag ** per aggiungere tag alla risorsa. Attiva ** Propaga tag ** per propagare i tag a partire dal job e dalla definizione del job.

1. Scegli **Create job definition** (Crea definizione processo).

## Creazione di una definizione di processo su istanze gestite di Amazon ECS (AWS CLI)
<a name="create-jd-ecs-managed-instances-cli"></a>

Usa il `register-job-definition` comando per creare una definizione di job per le istanze gestite di Amazon ECS.

### Esempio di base
<a name="create-jd-ecs-managed-instances-cli-basic"></a>

L'esempio seguente crea una definizione minima di processo che esegue un semplice comando.

```
$ aws batch register-job-definition \
    --job-definition-name {{my-managed-instances-job-def}} \
    --type container \
    --platform-capabilities MANAGED_INSTANCES \
    --ecs-properties '{
      "taskProperties": [{
        "containers": [{
          "image": "public.ecr.aws/amazonlinux/amazonlinux:2023",
          "name": "main",
          "command": ["echo", "hello managed instances"],
          "resourceRequirements": [
            {"type": "VCPU", "value": "1"},
            {"type": "MEMORY", "value": "1024"}
          ]
        }],
        "executionRoleArn": "arn:aws:iam::{{123456789012}}:role/{{ecsTaskExecutionRole}}"
      }]
    }'
```

### Definizione del lavoro GPU
<a name="create-jd-ecs-managed-instances-cli-gpu"></a>

L'esempio seguente crea una definizione di processo che richiede risorse GPU.

```
$ aws batch register-job-definition \
    --job-definition-name {{my-gpu-managed-instances-job-def}} \
    --type container \
    --platform-capabilities MANAGED_INSTANCES \
    --ecs-properties '{
      "taskProperties": [{
        "containers": [{
          "image": "{{123456789012}}.dkr.ecr.{{us-east-1}}.amazonaws.com/{{my-gpu-image}}:latest",
          "name": "main",
          "command": ["nvidia-smi"],
          "resourceRequirements": [
            {"type": "VCPU", "value": "4"},
            {"type": "MEMORY", "value": "16384"},
            {"type": "GPU", "value": "1"}
          ]
        }],
        "executionRoleArn": "arn:aws:iam::{{123456789012}}:role/{{ecsTaskExecutionRole}}"
      }]
    }'
```

### Multi-container definizione del lavoro (sidecar)
<a name="create-jd-ecs-managed-instances-cli-sidecar"></a>

L'esempio seguente crea una definizione di lavoro con un contenitore principale e un contenitore di registrazione sidecar.

```
$ aws batch register-job-definition \
    --job-definition-name {{my-sidecar-managed-instances-job-def}} \
    --type container \
    --platform-capabilities MANAGED_INSTANCES \
    --ecs-properties '{
      "taskProperties": [{
        "containers": [{
          "image": "public.ecr.aws/amazonlinux/amazonlinux:2023",
          "name": "main",
          "command": ["echo", "processing data"],
          "essential": true,
          "resourceRequirements": [
            {"type": "VCPU", "value": "2"},
            {"type": "MEMORY", "value": "4096"}
          ]
        },
        {
          "image": "public.ecr.aws/amazonlinux/amazonlinux:2023",
          "name": "sidecar",
          "command": ["echo", "logging sidecar"],
          "essential": false,
          "resourceRequirements": [
            {"type": "VCPU", "value": "1"},
            {"type": "MEMORY", "value": "512"}
          ]
        }],
        "executionRoleArn": "arn:aws:iam::{{123456789012}}:role/{{ecsTaskExecutionRole}}"
      }]
    }'
```