

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Création de limites de ressources pour les tâches
<a name="build-job-limits"></a>

Les tâches soumises à Deadline Cloud peuvent dépendre de ressources partagées entre plusieurs tâches. Par exemple, une ferme peut avoir plus de travailleurs que de permis flottants pour une ressource spécifique. Il se peut également qu'un serveur de fichiers partagé ne soit en mesure de fournir des données qu'à un nombre limité de travailleurs en même temps. Dans certains cas, une ou plusieurs tâches peuvent exiger toutes ces ressources, ce qui entraîne des erreurs dues à l'indisponibilité des ressources lorsque de nouveaux travailleurs commencent à travailler. 

Pour résoudre ce problème, vous pouvez utiliser *des limites* pour ces ressources limitées. Deadline Cloud tient compte de la disponibilité de ressources limitées et utilise ces informations pour garantir que les ressources sont disponibles au fur et à mesure que les nouveaux travailleurs démarrent, afin que les emplois soient moins susceptibles d'échouer en raison de l'indisponibilité des ressources.

Des limites sont créées pour l'ensemble de la ferme. Les tâches soumises à une file d'attente ne peuvent être soumises qu'aux limites associées à la file d'attente. Si vous spécifiez une limite pour une tâche qui n'est pas associée à la file d'attente, la tâche n'est pas compatible et ne sera pas exécutée.

Pour utiliser une limite, vous 
+ [Création d'une limite](job-limit-create.md)
+ [Associer une limite et une file d'attente](job-limit-associate.md)
+ [Soumettre une offre d'emploi nécessitant des limites](job-limit-job.md)

**Note**  
Si vous exécutez une tâche dont les ressources sont limitées dans une file d'attente non associée à une limite, cette tâche peut consommer toutes les ressources. Si votre ressource est limitée, assurez-vous que toutes les étapes des tâches dans les files d'attente qui utilisent cette ressource sont associées à une limite.

Pour les limites définies dans un parc de serveurs, associées à une file d'attente et spécifiées dans une tâche, l'une des quatre situations suivantes peut se produire :
+ Si vous créez une limite, que vous l'associez à une file d'attente et que vous spécifiez la limite dans le modèle d'une tâche, la tâche s'exécute et n'utilise que les ressources définies dans la limite.
+ Si vous créez une limite, que vous la spécifiez dans un modèle de tâche, mais que vous n'associez pas la limite à une file d'attente, la tâche est marquée comme incompatible et ne sera pas exécutée.
+ Si vous créez une limite, ne l'associez pas à une file d'attente et ne spécifiez pas la limite dans le modèle d'une tâche, la tâche s'exécute mais n'utilise pas la limite.
+ Si vous n'utilisez aucune limite, la tâche s'exécute.

Si vous associez une limite à plusieurs files d'attente, celles-ci partagent les ressources limitées par cette limite. Par exemple, si vous créez une limite de 100 et qu'une file d'attente utilise 60 ressources, les autres files d'attente ne peuvent utiliser que 40 ressources. Lorsqu'une ressource est publiée, elle peut être utilisée par une tâche de n'importe quelle file d'attente.

Deadline Cloud fournit deux AWS CloudFormation indicateurs pour vous aider à surveiller les ressources fournies par une limite. Vous pouvez surveiller le nombre actuel de ressources utilisées et le nombre maximum de ressources disponibles dans la limite. Pour plus d'informations, consultez la section [Mesures relatives aux limites de ressources](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/cloudwatch-metrics.html#cloudwatch-metrics-limits) dans le *guide du développeur de Deadline Cloud*.

Vous appliquez une limite à une étape de tâche dans un modèle de tâche. Lorsque vous spécifiez le nom du montant requis pour une limite dans la `amounts` section `hostRequirements` d'une étape et qu'une limite associée à ce montant `amountRequirementName` est associée à la file d'attente du travail, les tâches planifiées pour cette étape sont limitées par la limite de la ressource.

Si une étape nécessite une ressource limitée par une limite atteinte, les tâches de cette étape ne seront pas prises en charge par des travailleurs supplémentaires.

Vous pouvez appliquer plusieurs limites à une étape de travail. Par exemple, si l'étape utilise deux licences logicielles différentes, vous pouvez appliquer une limite distincte pour chaque licence. Si une étape nécessite deux limites et que la limite de l'une des ressources est atteinte, les tâches de cette étape ne seront pas prises en charge par d'autres travailleurs tant que les ressources ne seront pas disponibles.

## Arrêter et supprimer des limites
<a name="job-limit-stop-delete"></a>

Lorsque vous arrêtez ou supprimez l'association entre une file d'attente et une limite, une tâche utilisant la limite arrête de planifier les tâches à partir des étapes qui nécessitent cette limite et bloque la création de nouvelles sessions pour une étape.

Les tâches à l'état PRÊT restent prêtes, et les tâches reprennent automatiquement lorsque l'association entre la file d'attente et la limite redevient active. Vous n'avez pas besoin de demander des offres d'emploi.

Lorsque vous arrêtez ou supprimez l'association entre une file d'attente et une limite, deux options s'offrent à vous pour arrêter l'exécution des tâches :
+ Arrêter et annuler des tâches : les travailleurs dont les sessions ont atteint la limite annulent toutes les tâches.
+ Arrêtez et terminez l'exécution des tâches : les travailleurs dont les sessions ont atteint la limite terminent leurs tâches.

Lorsque vous supprimez une limite à l'aide de la console, les collaborateurs arrêtent d'abord d'exécuter les tâches immédiatement ou éventuellement lorsqu'elles sont terminées. Lorsque l'association est supprimée, les événements suivants se produisent : 
+ Les étapes nécessitant cette limite sont signalées comme non compatibles.
+ L'intégralité de la tâche contenant ces étapes est annulée, y compris les étapes qui ne nécessitent pas de limite.
+ La tâche est marquée comme non compatible.

Si la file d'attente associée à la limite est associée à un parc dont la capacité correspond au nom du montant requis pour la limite, ce parc continuera à traiter les tâches avec la limite spécifiée.

# Création d'une limite
<a name="job-limit-create"></a>

Vous créez une limite à l'aide de la console Deadline Cloud ou de l'[CreateLimit opération de l'API Deadline Cloud](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateLimit.html). Les limites sont définies pour un parc, mais associées à des files d'attente. Après avoir créé une limite, vous pouvez l'associer à une ou plusieurs files d'attente.

**Pour créer une limite**

1. Dans le tableau de bord de la console [Deadline Cloud (console](https://console.aws.amazon.com/deadlinecloud/home) Deadline Cloud), sélectionnez la ferme pour laquelle vous souhaitez créer une file d'attente.

1. Choisissez la ferme à laquelle ajouter la limite, cliquez sur l'onglet **Limites**, puis choisissez **Créer une limite**.

1. Fournissez les détails de la limite. Le **nom de l'exigence de montant** est le nom utilisé dans le modèle de tâche pour identifier la limite. Il doit commencer par le préfixe **amount.** suivi du nom du montant. Le nom du montant requis doit être unique dans les files d'attente associées à la limite.

1. Si vous choisissez **Définir un montant maximum**, il s'agit du nombre total de ressources autorisées par cette limite. Si vous choisissez **Aucun montant maximum**, l'utilisation des ressources n'est pas limitée. Même lorsque l'utilisation des ressources n'est pas limitée, la CloudWatch métrique `CurrentCount` Amazon est émise afin que vous puissiez suivre l'utilisation. Pour plus d'informations, consultez les [CloudWatchstatistiques](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/cloudwatch-metrics.html) dans le *guide du développeur de Deadline Cloud*.

1. Si vous connaissez déjà les files d'attente qui devraient utiliser cette limite, vous pouvez les choisir dès maintenant. Il n'est pas nécessaire d'associer une file d'attente pour créer une limite.

1. Choisissez **Créer une limite**.

# Associer une limite et une file d'attente
<a name="job-limit-associate"></a>

Après avoir créé une limite, vous pouvez associer une ou plusieurs files d'attente à la limite. Seules les files d'attente associées à une limite utilisent les valeurs spécifiées dans la limite.

Vous créez une association avec une file d'attente à l'aide de la console Deadline Cloud ou de l'[CreateQueueLimitAssociation opération de l'API Deadline Cloud](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateQueueLimitAssociation.html).

**Pour associer une file d'attente à une limite**

1. Dans le tableau de bord de la console [Deadline Cloud (console](https://console.aws.amazon.com/deadlinecloud/home) Deadline Cloud), sélectionnez la ferme dans laquelle vous souhaitez associer une limite à une file d'attente.

1. Cliquez sur l'onglet **Limites**, choisissez la limite à laquelle associer une file d'attente, puis choisissez **Modifier la limite**.

1. Dans la section **Associer les files d'attente**, choisissez les files d'attente à associer à la limite.

1. Sélectionnez **Enregistrer les modifications**.

# Soumettre une offre d'emploi nécessitant des limites
<a name="job-limit-job"></a>

Vous appliquez une limite en la spécifiant comme exigence d'hôte pour le travail ou l'étape du travail. Si vous ne spécifiez pas de limite dans une étape et que cette étape utilise une ressource associée, l'utilisation de l'étape n'est pas prise en compte dans la limite lorsque les tâches sont planifiées.

Certains émetteurs de Deadline Cloud vous permettent de définir une exigence en matière d'hôte. Vous pouvez spécifier le nom du montant requis pour la limite dans l'expéditeur pour appliquer la limite.

Si votre auteur ne prend pas en charge l'ajout d'exigences relatives à l'hôte, vous pouvez également appliquer une limite en modifiant le modèle de tâche correspondant à la tâche.

**Pour appliquer une limite à une étape d'une tâche dans le lot de tâches**

1. Ouvrez le modèle de tâche correspondant à la tâche à l'aide d'un éditeur de texte. Le modèle de tâche se trouve dans le répertoire des ensembles de tâches correspondant à la tâche. Pour plus d'informations, consultez la section [Job bundles](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/build-job-bundle.html) dans le *guide du développeur de Deadline Cloud*.

1. Trouvez la définition de l'étape à laquelle appliquer la limite.

1. Ajoutez ce qui suit à la définition de l'étape. Remplacez *amount.name* le nom de votre limite par le montant requis. Pour une utilisation normale, vous devez définir la `min` valeur sur 1.

------
#### [ YAML ]

   ```
     hostRequirements:
       amounts:
       - name: amount.name
         min: 1
   ```

------
#### [ JSON ]

   ```
   "hostRequirements": {
       "amounts": [
           {
               "name": "amount.name",
               "min": "1"
           }
       }
   }
   ```

------

   Vous pouvez ajouter plusieurs limites à une étape de travail comme suit. Remplacez *amount.name\$11* et *amount.name\$12* par les noms des exigences relatives au montant de vos limites.

------
#### [ YAML ]

   ```
     hostRequirements:
       amounts:
       - name: amount.name_1
         min: 1
       - name: amount.name_2
         min: 1
   ```

------
#### [ JSON ]

   ```
   "hostRequirements": {
       "amounts": [
           {
               "name": "amount.name_1",
               "min": "1"
           },
           {
               "name": "amount.name_2",
               "min": "1"
           }
       }
   }
   ```

------

1. Enregistrez les modifications apportées au modèle de tâche.