Anwendungen konfigurieren - Amazon EMR

Anwendungen konfigurieren

Um die Standardkonfigurationen für eine Anwendung zu überschreiben, können Sie ein Konfigurationsobjekt bereitstellen. Sie können entweder eine Syntax-Kurznotation verwenden, um die Konfiguration anzugeben oder Sie können auf die Konfiguration in einer JSON-Datei zu verweisen. Konfigurationsobjekte bestehen aus einer Klassifizierung, Eigenschaften und optionalen verschachtelten Konfigurationen. Die Eigenschaften entsprechen den Anwendungseinstellungen, die Sie ändern möchten. Sie können mehrere Klassifizierungen für mehrere Anwendungen in einem einzigen JSON-Objekt angeben.

Warnung

Die API-Operationen Describe und List von Amazon EMR geben benutzerdefinierte und konfigurierbare Einstellungen, die als Teil der Amazon-EMR-Auftragsabläufe verwendet werden, im Klartext aus. Informationen zur Angabe vertraulicher Informationen wie Kennwörter in diesen Einstellungen finden Sie unter Vertrauliche Konfigurationsdaten in AWS Secrets Manager speichern.

Die verfügbaren Konfigurationsklassifizierungen variieren je nach Amazon-EMR-Version. Eine Liste der Konfigurationsklassifizierungen, die in einer bestimmten Release-Version unterstützt werden, finden Sie auf der Seite für diese Release-Version unter Informationen über Amazon-EMR-Versionen.

Das folgende JSON-Beispieldatei gilt für eine Liste von Konfigurationen.

[ { "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" } } ]

Eine Konfigurationsklassifizierung bezieht sich häufig auf eine anwendungsspezifische Konfigurationsdatei. Die hive-site-Klassifizierung ist Einstellungen in der hive-site.xml-Konfigurationsdatei für Hive zugeordnet. Eine Ausnahme bildet die veraltete Bootstrap-Aktion configure-daemons, mit der Umgebungsparameter wie z. B. --namenode-heap-size definiert werden. Optionen wie diese sind in den Klassifizierungen hadoop-env und yarn-env mit ihren eigenen verschachtelten Exportklassifizierungen zusammengefasst. Verwenden Sie die Export-Unterklassifizierung, wenn eine Klassifizierung auf env endet.

Eine weitere Ausnahme ist s3get. Sie wurde verwendet, um ein EncryptionMaterialsProvider-Kundenobjekt auf jedem Knoten in einem Cluster für die Verwendung bei der clientseitigen Verschlüsselung zu platzieren. Der Klassifizierung emrfs-site wurde zu diesem Zweck eine Option hinzugefügt.

Im Folgenden finden Sie ein Beispiel für die hadoop-env-Klassifizierung.

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

Im Folgenden finden Sie ein Beispiel für die yarn-env-Klassifizierung.

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

Die folgenden Einstellungen gehören nicht zu einer Konfigurationsdatei, werden aber von Amazon EMR verwendet, um ggf. mehrere Einstellungen in Ihrem Namen zu konfigurieren.

Von Amazon EMR zusammengestellte Einstellungen
Anwendung Klassifizierung der Versionsbezeichnung Gültige Eigenschaften Wann sollte dies verwendet werden?
Spark spark maximizeResourceAllocation Konfigurieren von Executors zur Nutzung der maximalen Ressourcen eines jeden Knotens