Configuration des applications - Amazon EMR

Configuration des applications

Pour remplacer les configurations par défaut d'une application, vous pouvez fournir un objet de configuration. Vous pouvez soit utiliser une syntaxe abrégée pour fournir la configuration, soit faire référence à l'objet de configuration dans un fichier JSON. Les objets de configuration sont composés d'une classification, de propriétés et de configurations imbriquées en option. Les propriétés correspondent aux paramètres de l'application que vous souhaitez modifier. Vous pouvez spécifier plusieurs classifications pour plusieurs applications d'un seul objet JSON.

Avertissement

Les opérations de l'API Amazon EMR Describe et List émettent des paramètres personnalisés et configurables, qui sont utilisés dans le cadre des flux de travail Amazon EMR, en texte clair. Pour fournir des informations sensibles, telles que des mots de passe, dans ces paramètres, consultez Stocker les données de configuration sensibles dans AWS Secrets Manager.

Les classifications de configuration qui sont disponibles varient d'une version d'Amazon EMR à l'autre. Pour obtenir la liste des classifications de configuration prises en charge dans une version de version particulière, reportez-vous à la page de cette version sous À propos des versions Amazon EMR.

Voici un exemple de fichier JSON pour une liste de configurations.

[ { "Classification": "core-site", "Properties": { "hadoop.security.groups.cache.secs": "250" } }, { "Classification": "mapred-site", "Properties": { "mapred.tasktracker.map.tasks.maximum": "2", "mapreduce.map.sort.spill.percent": "0.90", "mapreduce.tasktracker.reduce.tasks.maximum": "5" } } ]

Une classification de configuration correspond généralement à un fichier de configuration spécifique à l'application. Par exemple, la classification hive-site est mappée aux paramètres du fichier de configuration hive-site.xml pour Hive. Une exception à cette règle est l'action d'amorçage configure-daemons, qui n'est plus prise en charge et qui est utilisée pour définir des paramètres d'environnement tels que --namenode-heap-size. Les options de ce type sont intégrées dans les classifications hadoop-env et yarn-env avec leurs propres classifications d'exportation imbriquées. Si des classifications se terminent par env, utilisez la sous-classification d'exportation.

s3get est une autre exception qui est utilisée pour placer un objet EncryptionMaterialsProvider client sur chaque nœud d'un cluster pour l'utiliser dans le chiffrement côté client. Une option a été ajoutée à la classification emrfs-site à cet effet.

Voici un exemple de la classification hadoop-env.

[ { "Classification": "hadoop-env", "Properties": { }, "Configurations": [ { "Classification": "export", "Properties": { "HADOOP_DATANODE_HEAPSIZE": "2048", "HADOOP_NAMENODE_OPTS": "-XX:GCTimeRatio=19" }, "Configurations": [ ] } ] } ]

Voici un exemple de la classification yarn-env.

[ { "Classification": "yarn-env", "Properties": { }, "Configurations": [ { "Classification": "export", "Properties": { "YARN_RESOURCEMANAGER_OPTS": "-Xdebug -Xrunjdwp:transport=dt_socket" }, "Configurations": [ ] } ] } ]

Les paramètres suivants n'appartiennent pas à un fichier de configuration, mais sont utilisés par Amazon EMR pour configurer potentiellement plusieurs paramètres en votre nom.

Paramètres définis par Amazon EMR
Application Classification d'étiquette de version Propriétés valides Quand l'utiliser
Spark spark maximizeResourceAllocation Configurez des programmes d’exécution pour utiliser le maximum de ressources de chaque nœud.