Direkt zum Inhalt

Wie behebe ich die Fehler „Exit status: -100. Diagnostics: Container released on a lost node" in Amazon EMR?

Lesedauer: 3 Minute
0

Mein Amazon-EMR-Auftrag schlägt mit der Fehlermeldung „Container released on a lost node“ fehl.

Kurzbeschreibung

Wenn Amazon EMR einen Core- oder Aufgabenknoten aufgrund einer hohen Speicherplatzauslastung beendet, erhältst du möglicherweise die folgende Fehlermeldung:

„ExecutorLostFailure (executor 12 exited caused by one of the running tasks) Reason: Container marked as failed: container_1572839353552_0008_01_000002 on host: ip-##-###-##-## Exit status: -100. Diagnostics: Container released on a lost node“

Möglicherweise erhältst du den vorherigen Fehler auch, wenn ein Knoten aufgrund einer längeren hohen CPU-Auslastung oder eines geringen verfügbaren Speichers nicht mehr reagiert.

Die folgende Lösung enthält Schritte zur Behebung des Fehlers, der auftritt, wenn dir der Speicherplatz ausgeht und die Metrik für fehlerhafte MR-Knoten fehlerhafte Knoten anzeigt.

Lösung

Wenn die Festplattenauslastung auf einer Core- oder Aufgabenknotenfestplatte, z. B. /mnt oder /mnt1, 90 % übersteigt, wird die Festplatte fehlerhaft. Wenn weniger als 25 % der Festplatten eines Knotens fehlerfrei sind, wird der Knoten von YARN ResourceManager ordnungsgemäß außer Betrieb genommen. Um dieses Problem zu beheben, füge dem EMR-Cluster mehr Amazon Elastic Block Store (Amazon EBS)-Kapazität hinzu.

Ermitteln der Grundursache

Um die Ursache des Fehlers zu ermitteln, überprüfe die Amazon-CloudWatch-Metriken für den EMR-Cluster Fehlerfreie MR-Knoten und Verlorene MR-Knoten.

Wenn die Metrik für fehlerhafte MR-Knoten einen fehlerhaften Knoten anzeigt, ist das Problem durch unzureichenden Speicherplatz verursacht worden.

Wenn die Metrik für verlorene MR-Knoten einen verlorenen Knoten anzeigt, hat ein Hardwarefehler den Knotenverlust verursacht. Oder Amazon EMR kann den Knoten aufgrund einer hohen CPU- oder Speicherauslastung nicht erreichen.

Zusätzliche Amazon-EBS-Kapazität für neue Cluster hinzufügen

Um beim Start eines Amazon-EMR-Clusters mehr Amazon-EBS-Kapazität hinzuzufügen, wähle einen größeren Amazon Elastic Compute Cloud (Amazon EC2)-Instance-Typ. Weitere Informationen findest du unter Standard-EBS-Speicher für Instances. Du kannst auch die Volume-Größe ändern oder weitere Volumes hinzufügen, wenn du den Cluster erstellst.

Weitere Core- oder Aufgabenknoten für neue oder aktuell ausgefűhrte Cluster hinzufügen

Wähle eine größere Anzahl von Core- oder Aufgabenknoten, wenn du einen neuen Cluster startest. Oder füge einem aktuell ausgefűhrten Cluster weitere Core- oder Aufgabenknoten hinzu.

Weitere Amazon-EBS-Volumes zum Ausführen von Clustern hinzufügen

Wenn größere Amazon-EBS-Volumes das Problem nicht lösen, füge weitere Amazon-EBS-Volumes an einen aktuell ausgefűhrten Cluster an.

Führe die folgenden Schritte aus:

  1. Füge weitere Amazon-EBS-Volumes an die Core- und Aufgabenknoten an.

  2. Formatiere und binde die angehängten Volumes ein. Stelle sicher, dass du die richtige Festplattennummer verwendest. Zum Beispiel /mnt1 oder /mnt2 anstelle von /data.

  3. Verwende SSH, um eine Verbindung zum Knoten herzustellen.

  4. Füge den Pfad /mnt1/yarn in der Eigenschaft yarn.nodemanager.local-dirs von /etc/hadoop/conf/yarn-site.xml an.
    Beispiel:

    <property>    <name>yarn.nodemanager.local-dirs</name>
        <value>/mnt/yarn,/mnt1/yarn</value>
    </property>
  5. Starte den NodeManager-Service neu:

    sudo stop hadoop-yarn-nodemanager
    sudo start hadoop-yarn-nodemanager
  6. Aktiviere den Beendigungsschutz.

Wenn du immer noch Probleme mit dem Festplattenspeicher hast, ergreife die folgenden Maßnahmen:

  • Entferne nicht benötigte Dateien.
  • Erhöhe den Schwellenwert für die Festplattenauslastung von 90 % auf 99 %. Ändere dazu die Eigenschaft yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage in yarn-default.xml auf allen Knoten. Starte dann den hadoop-yarn-nodemanager-Service neu.

Ähnliche Informationen

Der Amazon-EMR-Cluster wird mit NO_SLAVE_LEFT und Core-Knoten NO_SLAVE_LEFT beendet

Warum geht dem Core-Knoten in meinem Amazon-EMR-Cluster der Speicherplatz aus?

AWS OFFICIALAktualisiert vor 4 Monaten