Comment exécuter une tâche AWS Batch à l'aide de Java ?

Dernière mise à jour : 03/02/2022

Je souhaite exécuter des tâches AWS Batch à l'aide de Java. Comment procéder ?

Résolution

Remarque : si vous recevez des erreurs lors de l'exécution de commandes dans l'AWS Command Line Interface (AWS CLI), vérifiez que vous utilisez la version la plus récente de l'AWS CLI.

Préparez votre environnement

1.    Installez Java en suivant les instructions de téléchargement fournies sur le site web d'Oracle.

2.    Installez Eclipse en suivant les instructions de téléchargement fournies sur le site web de la fondation Eclipse.

3.    Créez un environnement de calcul AWS Batch, une définition de tâche et une file d'attente des tâches.

4.    Vérifiez que la file d'attente des tâches est affectée à un environnement de calcul valide en exécutant la commande d'AWS CLI describe-compute-environments suivante :

Important : remplacezyour-compute-env-name par le nom de votre environnement de calcul.

$ aws batch describe-compute-environments --compute-environments your-compute-env-name

5.    Vérifiez que la valeur « status » (état) dans la sortie de commande est « VALID » (VALIDE). Assurez-vous que votre environnement de calcul est valide avant de poursuivre.

Remarque : vous pouvez utiliser un code Java pour créer un environnement de calcul AWS Batch, une définition de tâche et une file d'attente des tâches. Vous devez toutefois suivre la procédure décrite dans la section Conversion d'un projet Java en projet Maven avant de créer les ressources. Pour plus d'informations, consultez l'exemple de code de la section Référence d'API AWS SDK pour Java.

Installez AWS Toolkit for Eclipse

1.    Ouvrez l'environnement de développement intégré (IDE) Eclipse.

2.    Dans la barre de menus de l'IDE Eclipse, choisissez Aide.

3.    Dans Aide, choisissez Eclipse Marketplace.

4.    Dans Eclipse Marketplace, choisissez l'onglet Rechercher.

5.    Dans la zone de recherche Rechercher entrez AWS.

6.    Dans les résultats de la recherche, choisissez Installer pour AWS Toolkit for Eclipse.

7.    Dans la barre de menus Eclipse, choisissez Naviguer.

8.    Choisissez Préférences. Ensuite, choisissezAjouter un ID de clé d'accès et Clé d'accès secrète.

Création d'un nouveau projet Java

1.    Dans la barre de menus de l’IDE Eclipse, choisissez Fichier.

2.    Choisissez Nouveau. Choisissez ensuite Projet.

Conversion d'un projet Java en projet Maven

1.    Dans l'IDE Eclipse, cliquez avec le bouton droit sur le projet Java que vous avez créé.

2.    Sélectionnez Configurer. Choisissez ensuite Convertir en projet Maven. Maven crée un fichier POM.xml qui contient des informations sur le projet et les détails de configuration utilisés pour créer le projet.

3.    Ajoutez les dépendances requises au fichier POM.xml en ajoutant le code suivant après la balise de création de fermeture dans le fichier :

<!-- https://mvnrepository.com/artifact/com.amazonaws/aws-java-sdk-batch -->
    <dependencies>
    <dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk-batch</artifactId>
    <version>1.11.470</version>
</dependency>
    </dependencies>

Important : le code de l'étape 3 ne fonctionne que si vous incluez le code après la balise de création de fermeture dans le fichier POM.xml.

Création d'un programme Java pour envoyer des tâches AWS Batch

1.    Dans l'IDE Eclipse, choisissez le projet que vous avez créé.

2.    Dans le projet, cliquez avec le bouton droit sur le dossiersrc.

3.    Choisissez Nouveau. Choisissez ensuite Fichier.

4.    Nommez le nouveau fichier BatchClient.java.

Remarque : le nom de l'extension .java doit correspondre au nom de la classe publique dans le programme Java.

5.    Ajoutez les détails de votre environnement AWS Batch au fichier BatchClient.java en saisissant le code suivant dans le fichier :

Important : remplacez new-queue par le nom de votre file d'attente. Remplacez us-east-1 par la région AWS dans laquelle se trouve votre environnement. Remplacez sleep30:4 par la définition de votre tâche.

public class BatchClient {
public static void main(String[] args) {
        AWSBatch client = AWSBatchClientBuilder.standard().withRegion("us-east-1").build();
SubmitJobRequest request = new SubmitJobRequest().withJobName("example").withJobQueue("new-queue").withJobDefinition("sleep30:4");
SubmitJobResult response = client.submitJob(request);
System.out.println(response);
}
}

6.    Pour envoyer la tâche AWS Batch et exécuter le programme Java, choisissez Exécuter dans le menu Exécuter.

Remarque : si vous recevez l'erreur « SubmitJobResult can not be resolved » (SubmitJobResult ne peut pas être résolu), vous devez importer le package requis pour l'action d'API SubmitJobResult. Pour importer le package dans l'IDE Eclipse, procédez comme suit :
Dans le code Java BatchClient.java, sélectionnez le SubmitJobResult.
Cliquez avec le bouton droit surChoisir.
Choisissez Source.
Choisissez Ajouter import.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?