Accéder au contenu principal Passer au contenu complémentaire

Définir les paramètres de connexion à Amazon EMR avec Spark Universal

Lorsque vous exécutez vos Jobs Spark sur un cluster YARN à l'aide d'une distribution Amazon EMR, vous devez distribuer les bibliothèques manuellement car Amazon EMR n'a pas le même classpath sur les nœuds principaux et subordonnés.

Pourquoi et quand exécuter cette tâche

Effectuez les actions suivantes à l'aide d'une invite de commande afin de distribuer les bibliothèques entre les nœuds principaux et subordonnés.

Procédure

  1. Chargez le fichier PEM dans le cluster :
    
    scp -i username_EC2.pem sanulich_EC2.pem hadoop@<mainNode>:/home/hadoop
  2. Confirmez que le fichier PEM a les bonnes autorisations :
    ssh -i username_EC2.pem hadoop@<mainNode>
    ls -al
    Les autorisations doivent être les suivantes :
     -r--------  1 username username    1674 кві 11 16:26  username_EC2.pem
  3. Facultatif : Si le fichier PEM n'a pas les bonnes autorisations, modifiez-les comme suit :
    
    chmod -rwx username_EC2.pem
    chmod  u+r username_EC2.pem
  4. Allez dans votre instance Amazon EMR et trouvez le nom d'hôte des nœuds subordonnés.
  5. Copiez les fichiers JAR des nœuds principaux aux nœuds subordonnés :
    scp -i /home/hadoop/username_EC2.pem  /usr/lib/spark/jars/*.jar hadoop@<slaveNode>:/home/hadoop
  6. Connectez chaque nœud subordonné à un nœud principal :
    ssh -i /home/hadoop/username_EC2.pem hadoop@<slaveNode>
  7. Déplacez le fichier JAR :
    sudo mv /home/hadoop/*.jar /usr/lib/spark/jars
  8. Ouvrez le Studio Talend et votre Job Spark.
  9. Cliquez sur la vue Run sous l'espace de modélisation graphique, puis cliquez sur la vue Spark configuration.
  10. Dans le tableau Advanced properties (Propriétés avancées), ajoutez la propriété "spark.hadoop.dfs.client.use.datanode.hostname" avec la valeur "true".

Résultats

Votre Job Spark est correctement configuré pour s'exécuter en mode cluster YARN avec une distribution Amazon EMR.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – dites-nous comment nous améliorer !