De Knotentypen verstehen: Primär-, Core- und Aufgabenknoten - Amazon EMR

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

De Knotentypen verstehen: Primär-, Core- und Aufgabenknoten

In diesem Abschnitt erfahren Sie, wie Amazon EMR die einzelnen Knotentypen jeweils verwendet. Damit lernen Sie die Grundsätze der Kapazitätsplanung für Cluster kennen.

Primärknoten

Der Primärknoten verwaltet die Cluster und führt die Master-Komponenten von verteilten Anwendungen aus. Auf dem primären Knoten wird beispielsweise der ResourceManager YARN-Dienst ausgeführt, um Ressourcen für Anwendungen zu verwalten. Er führt auch den NameNode HDFS-Dienst aus, verfolgt den Status der an den Cluster übermittelten Jobs und überwacht den Zustand der Instanzgruppen.

Um den Fortschritt eines Clusters zu überwachen und direkt mit Anwendungen zu interagieren, können Sie über SSH eine Verbindung mit dem Primärknoten als Hadoop-Benutzer herstellen. Weitere Informationen finden Sie unter Mit dem Primärknoten über SSH verbinden. Durch das Verbinden mit dem Primärknoten erhalten Sie direkten Zugriff auf Verzeichnisse und Dateien, wie z. B. Hadoop-Protokolldateien. Weitere Informationen finden Sie unter Anzeige von -Protokolldateien. Sie können auch Benutzeroberflächen anzeigen, die von den Anwendungen als auf dem Primärknoten ausgeführte Websites veröffentlicht werden. Weitere Informationen finden Sie unter Anzeigen von auf Amazon-EMR-Clustern gehosteten Webschnittstellen.

Anmerkung

Mit Amazon EMR 5.23.0 und höher können Sie einen Cluster mit drei primären Knoten starten, um die Hochverfügbarkeit von Anwendungen wie YARN Resource Manager, HDFS, Spark NameNode, Hive und Ganglia zu unterstützen. Der Primärknoten ist mit diesem Feature keine potenzielle einzelne Fehlerquelle mehr. Wenn ein Primärknoten ausfällt, führt Amazon EMR automatisch einen Failover zu einem Standby-Primärknoten aus und ersetzt den ausgefallenen Primärknoten durch einen neuen Primärknoten mit der gleichen Konfiguration und den gleichen Bootstrap-Aktionen. Weitere Informationen finden Sie unter Primärknoten planen und konfigurieren.

Core-Knoten

Core-Knoten werden vom Primärknoten verwaltet. Core-Knoten führen den DataNode-Daemon zum Koordinieren der Datenspeicherung im Rahmen des Hadoop Distributed File System (HDFS) aus. Außerdem führen sie den TaskTracker-Daemon und andere parallele Rechenaufgaben für Daten aus, die für installierte Anwendungen erforderlich sind. Auf einem Core-Knoten werden beispielsweise NodeManager YARN-Daemons, Hadoop-Aufgaben und Spark-Executors ausgeführt. MapReduce

Es gibt nur eine Core-Instance-Gruppe oder Instance-Flotte pro Cluster, aber es können mehrere Knoten auf mehreren Amazon-EC2-Instances in der Instance-Gruppe oder Instance-Flotte laufen. Mit Instance-Gruppen können Sie Amazon-EC2-Instances hinzufügen und entfernen, während der Cluster ausgeführt wird. Sie können auch ein Auto Scaling einrichten, um Instances auf der Grundlage des Werts einer Metrik hinzuzufügen. Weitere Informationen zum Hinzufügen und Entfernen von Amazon-EC2 Instances mit der Instance-Gruppenkonfiguration finden Sie unter Clusterskalierung verwenden.

Mit Instance-Flotten können Sie Instances effektiv hinzufügen und entfernen, indem Sie die Zielkapazitäten der Instance-Flotte für On-Demand- und Spot Instances entsprechend anpassen. Weitere Informationen zu den Zielkapazitäten finden Sie unter Instance-Flotten-Optionen.

Warnung

Das Entfernen von HDFS-Daemons aus einem Core-Knoten, der ausgeführt wird, oder das Beenden von Core-Knoten können zu Datenverlusten führen. Seien Sie beim Konfigurieren von Core-Knoten für die Verwendung von Spot Instances vorsichtig. Weitere Informationen finden Sie unter Wann sollten Sie Spot Instances verwenden?.

Aufgabenknoten

Sie können Task-Knoten verwenden, um Leistung für parallel Berechnungsaufgaben für Daten hinzuzufügen, z. B. MapReduce Hadoop-Aufgaben und Spark-Executoren. Aufgabenknoten führen weder den DataNode-Daemon aus noch speichern sie Daten in HDFS. Wie Core-Knoten können Sie auch Aufgabenknoten zu einem Cluster hinzufügen, indem Sie Amazon-EC2-Instances in eine vorhandene einheitliche Instance-Gruppe integrieren oder die Zielkapazitäten für eine Aufgaben-Instance-Flotte ändern.

Mit der einheitlichen Instance-Gruppenkonfiguration können Sie über bis zu 48 Aufgaben-Instance-Gruppen verfügen. Die Möglichkeit, Instance-Gruppen so hinzuzufügen, ermöglicht Ihnen, Amazon-EC2-Instance-Typen und Preisoptionen, wie On-Demand-Instances und Spot Instances, zu kombinieren. Dadurch haben Sie die Flexibilität, kosteneffizient auf Workload-Anforderungen zu reagieren.

Mit der Instance-Flottenkonfiguration ist die Möglichkeit integriert, Instance-Typen und Kaufoptionen zu kombinieren, sodass nur eine Aufgaben-Instance-Flotte vorhanden ist.

Da Spot Instances häufig zum Ausführen von Aufgabenknoten verwendet werden, verfügt Amazon EMR über Standardfunktionen für die Planung von YARN-Aufträge, sodass laufende Aufträge nicht fehlschlagen, wenn Aufgabenknoten, die auf Spot Instances ausgeführt werden, beendet werden. Amazon EMR ermöglicht dies, indem Anwendungsmasterprozesse nur auf Core-Knoten ausgeführt werden können. Der Anwendungsmasterprozess steuert die Ausführung von Aufträgen und muss während der gesamten Laufzeit des Auftrags aktiv bleiben.

Amazon-EMR-Version 5.19.0 und höher verwendet zu diesem Zweck das integrierte YARN-Knotenbeschriftungsfeature. (Frühere Versionen verwendeten einen Code-Patch). Die Eigenschaften in den Klassifizierungen yarn-site und in der capacity-scheduler-Konfiguration sind standardmäßig so konfiguriert, dass der YARN-Kapazitätsplaner und der Fair-Scheduler die Vorteile von Knotenbezeichnungen nutzen. Amazon EMR kennzeichnet Core-Knoten automatisch mit dem CORE-Label und legt Eigenschaften fest, sodass Anwendungsmaster nur für Knoten mit dem CORE-Label geplant werden. Durch manuelles Ändern verwandter Eigenschaften in den Konfigurationsklassifizierungen von Yarn-Site und Kapazitätsplaner oder direkt in den zugehörigen XML-Dateien könnte diese Feature beeinträchtigt oder verändert werden.

Beginnend mit der Amazon-EMR-6.x-Release-Reihe ist das Feature YARN-Knotenbeschriftungen standardmäßig deaktiviert. Die Anwendungs-Primär-Prozesse können standardmäßig sowohl auf Core- als auch auf Aufgabenknoten ausgeführt werden. Sie können die Funktion für YARN-Knotenbeschriftungen aktivieren, indem Sie folgende Eigenschaften konfigurieren:

  • yarn.node-labels.enabled: true

  • yarn.node-labels.am.default-node-label-expression: 'CORE'

Informationen zu spezifischen Eigenschaften finden Sie unter Amazon-EMR-Einstellungen, die Aufgabenfehler aufgrund des Beendens von Aufgabenknoten-Spot Instances verhindern.