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. |