Exécutez AWS Batch des charges de travail avec Step Functions - AWS Step Functions

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.

Exécutez AWS Batch des charges de travail avec Step Functions

Vous pouvez intégrer Step Functions AWS Batch pour exécuter des charges de travail de calcul par lots dans le AWS cloud. Cette page répertorie les états pris en charge AWS Batch APIs et fournit un exemple d'Taskétat pour effectuer une tâche de traitement par lots.

Pour en savoir plus sur l'intégration aux AWS services dans Step Functions, consultez Intégration des services etTransmission de paramètres à un service API dans Step Functions.

Principales fonctionnalités de l' AWS Batch intégration optimisée

Notez qu'il n'y a aucune optimisation pour les modèles d'Attendre un rappel avec un jeton de tâcheintégration Réponse à la requête ou.

Ce qui suit inclut un Task État qui soumet une AWS Batch tâche et attend qu'elle soit terminée.

{ "StartAt": "BATCH_JOB", "States": { "BATCH_JOB": { "Type": "Task", "Resource": "arn:aws:states:::batch:submitJob.sync", "Parameters": { "JobDefinition": "preprocessing", "JobName": "PreprocessingBatchJob", "JobQueue": "SecondaryQueue", "Parameters.$": "$.batchjob.parameters", "ContainerOverrides": { "ResourceRequirements": [ { "Type": "VCPU", "Value": "4" } ] } }, "End": true } } }

Soutenu AWS Batch APIs :

Paramètres dans Step Functions sont exprimés en PascalCase

Même si le service natif API est activécamelCase, par exemple l'APIactionstartSyncExecution, vous spécifiez des paramètres dans PascalCase, tels que :StateMachineArn.

IAMpolitiques relatives aux appels AWS Batch

Les exemples de modèles suivants montrent comment AWS Step Functions générer des IAM politiques basées sur les ressources de votre définition de machine à états. Pour plus d’informations, consultez Comment Step Functions génère IAM des politiques pour les services intégrés et Découvrez les modèles d'intégration des services dans Step Functions.

Étant donné qu'il AWS Batch fournit une prise en charge partielle du contrôle d'accès au niveau des ressources, vous devez utiliser. "Resource": "*"

Run a Job (.sync)
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "batch:SubmitJob", "batch:DescribeJobs", "batch:TerminateJob" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "events:PutTargets", "events:PutRule", "events:DescribeRule" ], "Resource": [ "arn:aws:events:[[region]]:[[accountId]]:rule/StepFunctionsGetEventsForBatchJobsRule" ] } ] }
Request Response
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "batch:SubmitJob" ], "Resource": "*" } ] }