View a markdown version of this page

Reprises de travail automatisées - AWS Batch

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.

Reprises de travail automatisées

Vous pouvez appliquer une stratégie de nouvelle tentative à vos tâches et définitions de tâches qui permet à vos tâches d'être automatiquement retentées si elles échouent. Les scénarios de défaillance possibles sont les suivants :

  • Tout code de sortie autre que zéro à partir d'un conteneur de tâche

  • Défaillance ou résiliation d'une instance Amazon EC2

  • Interne AWS erreur de service ou panne

Lorsqu'une tâche est soumise à une file d'attente et placée dans le RUNNING état considéré comme une tentative. Par défaut, chaque tâche a une tentative de passer à l'état SUCCEEDED ou FAILED. Cependant, la définition des tâches et les flux de travail de soumission des tâches peuvent être utilisés pour spécifier une stratégie de nouvelle tentative comprenant entre 1 et 10 tentatives. Si évaluerOnExit est spécifié, il peut contenir jusqu'à 6 stratégies de nouvelle tentative. Si évaluerOnExit est spécifiée, mais aucune des stratégies de nouvelle tentative ne correspond, puis la tâche est réessayée. Pour les tâches qui ne correspondent pas à la date de sortie, ajoutez une dernière entrée qui se ferme pour une raison quelconque. Par exemple, ceci evaluateOnExit l'objet possède deux entrées qui, avec des actions de RETRY et une entrée finale avec une action de EXIT.

"evaluateOnExit": [ { "action": "RETRY", "onReason": "AGENT" }, { "action": "RETRY", "onStatusReason": "Task failed to start" }, { "action": "EXIT", "onReason": "*" } ]

Lors de l'exécution, la variable d'environnement AWS_BATCH_JOB_ATTEMPT est définie sur le numéro de tentative de tâche correspondant du conteneur. La première tentative est numérotée 1, et les tentatives suivantes sont classées par ordre croissant (par exemple, 2, 3, 4).

Par exemple, supposons qu'une tentative de tâche échoue pour une raison quelconque et que le nombre de tentatives spécifié dans la configuration des nouvelles tentatives soit supérieur au AWS_BATCH_JOB_ATTEMPT numéro. Ensuite, la tâche est replacée dans RUNNABLE état. Pour plus d’informations, consultez États de l'emploi.

Note

Les tâches annulées ou résiliées ne sont pas retentées. De plus, les tâches qui échouent en raison d'une définition de tâche non valide ne sont pas réessayées.

Pour plus d'informations, voir Stratégie de nouvelle tentative, Création d'une définition de tâche à nœud unique, Tutoriel : soumettre une offre d'emploi et Codes d'erreur des tâches interrompues.