Gérer un cluster Amazon EMR - 6.3

Composants Talend Guide de référence

EnrichVersion
6.3
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Voici un exemple d'utilisation des composants Talend pour gérer un cluster Amazon EMR.

Créer un Job de gestion de cluster Amazon EMR

Créez un Job démarrant un nouveau cluster Amazon EMR, redimensionnez le cluster, puis listez les informations des ID et noms des groupes d'instance dans le cluster.

  1. Créez un nouveau Job et ajoutez un tAmazonEMRManage, un tAmazonEMRResize, un tAmazonEMRListInstances et un tJava, en saisissant leur nom dans l'espace de modélisation graphique ou en les déposant depuis la Palette.

  2. Reliez le tAmazonEMRManage au tAmazonEMRResize, à l'aide d'un lien Trigger > OnSubjobOk.

  3. Reliez le composant tAmazonEMRResize au tAmazonEMRListInstances à l'aide d'un lien Trigger > OnSubjobOk.

  4. Reliez le composant tAmazonEMRListInstances au tJava, à l'aide d'un lien Row > Iterate.

Démarrer un nouveau cluster Amazon EMR

Configurez le tAmazonEMRManage pour qu'il démarre un nouveau cluster Amazon EMR.

  1. Double-cliquez sur le tAmazonEMRManage pour ouvrir sa vue Basic settings.

  2. Dans les champs Access Key et Secret Key, saisissez les informations d'authentification requises pour accéder à Amazon S3.

  3. Dans la liste Action, sélectionnez Start pour démarrer un cluster.

  4. Sélectionnez la région AWS dans la liste Region. Dans cet exemple, sélectionnez Asia Pacific (Tokyo).

  5. Dans le champ Cluster name, saisissez le nom du cluster à démarrer. Dans cet exemple, saisissez talend-doc-emr-cluster.

  6. Dans les listes Cluster version et Application, sélectionnez la version du cluster et l'application à installer sur le cluster.

  7. Cochez la case Enable log et, dans le champ qui s'affiche, spécifiez le chemin d'accès au dossier, dans un bucket S3, où vous souhaitez qu'Amazon EMR écrive les données de log. Dans cet exemple, saisissez s3://talend-doc-emr-bucket.

Redimensionner le cluster Amazon EMR en ajoutant un nouveau groupe d'instance de tâche

Configurez le composant tAmazonEMRResize pour redimensionner un cluster Amazon EMR en cours de fonctionnement en ajoutant un nouveau groupe d'instance de tâche.

  1. Double-cliquez sur le tAmazonEMRResize pour ouvrir sa vue Basic settings.

  2. Dans les champs Access Key et Secret Key, saisissez les informations d'authentification requises pour accéder à Amazon S3.

  3. Dans la liste déroulante Action, sélectionnez Add task instance group afin de redimensionner le cluster en ajoutant un nouveau groupe d'instance de tâche.

  4. Dans le champ Cluster id, saisissez l'ID du cluster à redimensionner. Dans cet exemple, la valeur retournée de la variable globale CLUSTER_FINAL_ID du précédent tAmazonEMRManage est utilisée.

    Notez que vous pouvez récupérer la variable globale en appuyant sur les touches Ctrl + Espace et en sélectionnant la variable globale adéquate dans la liste.

  5. Dans le champ Group name, saisissez le nom du groupe d'instance de tâche à ajouter au cluster. Dans cet exemple, saisissez talend-doc-instance-group.

  6. Dans le champ Instance count, spécifiez le nombre d'instances à créer.

  7. Dans la liste Task instance type, sélectionnez le type d'instances à créer.

Lister les groupes d'instances dans le cluster Amazon EMR

Configurez le tAmazonEMRListInstances et le tJava pour récupérer et afficher les informations d'ID et de nom de tous les groupes d'instances d'un cluster en cours d'exécution.

  1. Double-cliquez sur le tAmazonEMRListInstances pour ouvrir sa vue Basic settings.

  2. Dans les champs Access Key et Secret Key, saisissez les informations d'authentification requises pour accéder à Amazon S3.

  3. Sélectionnez la région AWS dans la liste Region. Dans cet exemple, saisissez Asia Pacific (Tokyo).

  4. Décochez la case Filter master and core instances pour lister tous les groupes d'instances, y compris les groupes d'instances de type Master, Core et Task.

  5. Dans le champ Cluster id, saisissez l'ID du cluster pour lequel lister les groupes d'instances. Dans cet exemple, la valeur retournée de la variable globale CLUSTER_FINAL_ID du précédent tAmazonEMRManage est utilisée.

  6. Double-cliquez sur le composant tJava pour ouvrir sa vue Basic settings.

  7. Dans le champ Code, saisissez le code suivant pour afficher les informations d'ID et de nom de chaque groupe d'instance dans le cluster.

    System.out.println("\r\n===== Instance Group =====");
    System.out.println("Instance Group ID:    " + (String)globalMap.get("tAmazonEMRListInstances_1_CURRENT_GROUP_ID"));
    System.out.println("Instance Group Name:  " + (String)globalMap.get("tAmazonEMRListInstances_1_CURRENT_GROUP_NAME"));

Exécuter le Job pour gérer le cluster Amazon EMR

Après avoir configuré le Job et les composants utilisés dans le Job pour gérer le cluster Amazon EMR, vous pouvez exécuter le Job et vérifier les résultats d'exécution du Job.

  1. Appuyez sur les touches Ctrl + S pour sauvegarder le Job et appuyez sur F6 pour l'exécuter.

    Comme affiché ci-dessus, le Job démarre et redimensionne le cluster Amazon EMR, puis liste tous les groupes d'instances dans le cluster.

  2. Consultez les détails du cluster dans la page Amazon EMR Cluster List afin de valider les résultats d'exécution du Job.