Création d'un cluster EMR cible/d'une application EMR-S à partir de clusters EMR existants - Amazon EMR

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.

Création d'un cluster EMR cible/d'une application EMR-S à partir de clusters EMR existants

Si vous possédez déjà un EC2 cluster EMR exécutant la version source de Spark, vous pouvez le cloner pour créer un nouveau cluster avec la même configuration mais une version EMR mise à jour pour exécuter les étapes de validation pendant le processus de mise à niveau.

Étapes :

  1. Connectez-vous à la console Amazon EMR AWS Management Console et ouvrez-la.

  2. Dans le volet de navigation de gauche, choisissez Clusters sous EMR activé. EC2

  3. Dans la liste des clusters :

    • Utilisez la recherche ou des filtres si nécessaire pour trouver votre cluster.

    • Cochez la case à côté du cluster que vous souhaitez cloner.

    • L'option Cloner apparaîtra en haut de la liste. Choisissez Clone (Cloner).

    • Si le cluster possède des étapes configurées, choisissez Inclure les étapes, puis Continuer pour cloner les étapes ainsi que les autres paramètres du cluster.

  4. Vérifiez les paramètres du nouveau cluster qui ont été copiés à partir du cluster d'origine.

  5. Mettez à jour la version d'Amazon EMR vers la version cible.

  6. Pour des raisons de rentabilité, pensez à activer l'autoscaling lors de la configuration du cluster afin d'ajuster automatiquement la capacité en fonction des demandes de charge de travail.

  7. Lorsque vous êtes satisfait de la configuration, sélectionnez Créer un cluster pour lancer le nouveau cluster.

  8. Attendez que le cluster atteigne le statut En cours d'exécution et notez l'ID du cluster. Fournissez cet ID à l'agent lorsqu'il est invité à valider l'application mise à jour.

  9. Si vous préférez créer un nouveau cluster à partir de zéro, consultez la documentation EMR : https://docs.aws.amazon.com/emr/ latest/ManagementGuide/emr -gs.html.

Clonage d'une application EMR sans serveur vers la version cible

Il n'existe aucun moyen direct de cloner une application EMR Serverless vers une nouvelle application avec une version EMR différente. Vous pouvez plutôt utiliser l'EMR Serverless SDK/CLI ou la console pour créer une nouvelle application et réutiliser la configuration d'une application existante.

Voici quelques commandes d'assistance de la CLI pour démarrer :

aws emr-serverless get-application --application-id XXX > old-config.json cat old-config.json | jq '{ name: (.application.name + "<suffix to differentiate name from old application>"), releaseLabel: "<target EMR release version>", type: .application.type, initialCapacity: .application.initialCapacity, maximumCapacity: .application.maximumCapacity, autoStartConfiguration: .application.autoStartConfiguration, autoStopConfiguration: .application.autoStopConfiguration, tags: .application.tags, architecture: .application.architecture, runtimeConfiguration: .application.runtimeConfiguration, monitoringConfiguration: .application.monitoringConfiguration }' > new-config.json aws emr-serverless create-application --cli-input-json file://new-config.json

Remarque : Assurez-vous que le rôle d'exécution de la tâche pour la nouvelle application autorise EMR Serverless à assumer ce rôle. Examinez la stratégie d'approbation du rôle. Si vous réutilisez le même rôle d'exécution de tâches que celui de l'ancienne application, mettez à jour la politique de confiance pour inclure la nouvelle application, comme indiqué ci-dessous :

#Replace the old application id and new application id in the policy { "Version": "2012-10-17", "Statement": [ { "Sid": "ServerlessTrustPolicy", "Effect": "Allow", "Principal": { "Service": "emr-serverless.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringLike": { "aws:SourceArn": [ "arn:aws:emr-serverless:us-east-1:<account>:/applications/<old application id>", "arn:aws:emr-serverless:us-east-1:<account>:/applications/<new application id>" ] } } } ] }