

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.

# Fehlerbehebung bei einem Amazon EMR-Cluster, der mit einem Fehlercode ausgefallen ist
<a name="emr-troubleshoot-failed"></a>

 In diesem Abschnitt werden Sie durch den Vorgang zur Fehlerbehebung eines Cluster geführt, der ausgefallen ist. Das bedeutet, dass der Cluster mit einem Fehlercode beendet wurde.

**Anmerkung**  
Wenn ein EMR-Cluster mit einem Fehler beendet wird, werden ein Fehlercode und eine Fehlermeldung `ListClusters` APIs zurückgegeben. `DescribeCluster` Bei einigen Clusterfehlern kann Ihnen das `ErrorDetail`-Datenarray bei der Behebung des Fehlers helfen. Weitere Informationen finden Sie unter [Fehlercodes mit ErrorDetail Informationen in Amazon EMR](emr-troubleshoot-error-errordetail.md).

Wenn Ihr Cluster ausgeführt wird, aber lange braucht, bis Ergebnisse zurückgegeben werden, finden Sie unter [Fehlerbehebung bei einem langsamen Amazon EMR-Cluster](emr-troubleshoot-slow.md). 

**Topics**
+ [Schritt 1: Sammeln Sie Daten über das Problem mit dem Amazon EMR-Cluster](emr-troubleshoot-failed-1.md)
+ [Schritt 2: Die Umgebung prüfen](emr-troubleshoot-failed-2.md)
+ [Schritt 3: Die letzte Statusänderung überprüfen](emr-troubleshoot-failed-3.md)
+ [Schritt 4: Untersuchen Sie die Amazon EMR-Protokolldateien](emr-troubleshoot-failed-4.md)
+ [Schritt 5: Testen Sie den Amazon EMR-Cluster Schritt für Schritt](emr-troubleshoot-failed-5-test-steps.md)

# Schritt 1: Sammeln Sie Daten über das Problem mit dem Amazon EMR-Cluster
<a name="emr-troubleshoot-failed-1"></a>

 Der erste Schritt bei der Fehlerbehebung bei einem Cluster besteht darin, Informationen darüber zu sammeln, was schief gelaufen ist, sowie über den aktuellen Status und die Konfiguration des Clusters. Diese Informationen werden in den folgenden Schritten verwendet, um mögliche Ursachen des Problems zu bestätigen oder auszuschließen. 

## Definieren des Problems
<a name="emr-troubleshoot-failed-1-problem"></a>

 Eine klare Definition des Problems ist der erste Ausgangspunkt. Einige Fragen, die Sie sich stellen sollten: 
+  Was habe ich erwartet? Was ist stattdessen passiert? 
+  Wann ist dieses Problem zum ersten Mal aufgetreten? Wie oft ist es seitdem passiert? 
+  Hat sich etwas an der Konfiguration oder Ausführung meines Clusters geändert? 

## Cluster-Details
<a name="emr-troubleshoot-failed-1-cluster"></a>

 Die folgenden Clusterdetails sind hilfreich, um Probleme aufzuspüren. Weitere Informationen zum Sammeln dieser Informationen finden Sie unter [Status und Details des Amazon EMR-Clusters anzeigen](emr-manage-view-clusters.md). 
+  Die Cluster-ID. (Wird auch als Job-Flow-Identifier bezeichnet.) 
+  AWS-Region und Availability Zone, in der der Cluster gestartet wurde. 
+  Status des Clusters, einschließlich Details zur letzten Statusänderung. 
+  Typ und Anzahl der EC2-Instances, die für die Master-, Core- und Aufgabenknoten angegeben wurden. 

# Schritt 2: Die Umgebung prüfen
<a name="emr-troubleshoot-failed-2"></a>

Amazon EMR wird als Teil eines Ökosystems von Web-Services und Open-Source-Software betrieben. Faktoren, die sich auf diese Abhängigkeiten auswirken, können die Leistung von Amazon EMR beeinträchtigen.

**Topics**
+ [Prüfen auf Service-Ausfälle](#emr-troubleshoot-failed-2-outages)
+ [Prüfen auf Nutzungsgrenzen](#emr-troubleshoot-failed-2-limits)
+ [Überprüfen der Version](#emr-troubleshoot-failed-2-ami)
+ [Prüfen der Amazon-VPC-Subnetzkonfiguration](#emr-troubleshoot-failed-2-vpc)

## Prüfen auf Service-Ausfälle
<a name="emr-troubleshoot-failed-2-outages"></a>

 Amazon EMR verwendet intern mehrere Amazon Web Services. Es betreibt virtuelle Server auf Amazon EC2, speichert Daten und Skripts auf Amazon S3 und meldet Metriken an CloudWatch. Ereignisse, die diese Services stören, sind selten – wenn sie jedoch auftreten, können sie zu Problemen in Amazon EMR führen. 

 Überprüfen Sie die [Übersicht zum Servicestatus](https://status.aws.amazon.com/), bevor Sie fortfahren. Prüfen Sie in der Region, in der Sie Ihren Cluster gestartet haben, ob es bei einem dieser Services zu Störungen gekommen ist. 

## Prüfen auf Nutzungsgrenzen
<a name="emr-troubleshoot-failed-2-limits"></a>

 Wenn Sie einen großen Cluster starten, viele Cluster gleichzeitig gestartet haben oder wenn Sie ein Benutzer sind, der sich einen Cluster AWS-Konto mit anderen Benutzern teilt, ist der Cluster möglicherweise ausgefallen, weil Sie ein AWS Service-Limit überschritten haben. 

 Amazon EC2 begrenzt die Anzahl der virtuellen Server-Instances, die in einer einzelnen AWS Region ausgeführt werden, auf 20 On-Demand-Instances oder Reserved Instances. Wenn Sie einen Cluster mit mehr als 20 Knoten starten oder einen Cluster starten, der dazu führt, dass die Gesamtzahl der auf Ihrem AWS-Konto Computer aktiven EC2-Instances 20 überschreitet, kann der Cluster nicht alle benötigten EC2-Instances starten und kann ausfallen. In diesem Fall gibt Amazon EMR einen `EC2 QUOTA EXCEEDED`-Fehler zurück. Sie können eine AWS Erhöhung der Anzahl der EC2-Instances, die Sie auf Ihrem Konto ausführen können, beantragen, indem Sie einen [Antrag auf Erhöhung des Amazon EC2 EC2-Instance-Limits](https://aws.amazon.com/contact-us/ec2-request/) einreichen. 

 Eine weitere Sache, die dazu führen kann, dass Sie Ihre Nutzungslimits überschreiten, ist die Verzögerung zwischen der Beendigung eines Clusters und der Freigabe aller seiner Ressourcen. Je nach Konfiguration kann es bis zu 5–20 Minuten dauern, bis ein Cluster vollständig beendet ist und zugewiesene Ressourcen freigibt. Wenn Sie beim Versuch, einen Custer zu starten, die Fehlermeldung `EC2 QUOTA EXCEEDED` erhalten, kann es daran liegen, dass Ressourcen eines kürzlich beendeten Clusters noch nicht zur Verfügung stehen. In diesem Fall können Sie entweder [eine Erhöhung Ihres Amazon-EC2-Kontingents](https://aws.amazon.com/contact-us/ec2-request/) beantragen oder zwanzig Minuten warten und den Cluster neu starten. 

 Amazon S3 begrenzt die Anzahl der auf einem Konto erstellten Buckets auf 100. Wenn Ihr Cluster einen neuen Bucket erstellt, der dieses Limit überschreitet, schlägt die Bucket-Erstellung fehl und kann dazu führen, dass der Cluster fehlschlägt. 

## Überprüfen der Version
<a name="emr-troubleshoot-failed-2-ami"></a>

Vergleichen Sie die Versionsbezeichnung, die Sie zum Start des Clusters verwendet haben, mit der aktuellen Amazon-EMR-Version. Jede Version von Amazon EMR beinhaltet Verbesserungen, wie z. B. neue Anwendungen, Features, Patches und Fehlerbehebungen. Das Problem, das Ihren Cluster betrifft, wurde in der aktuellen Version möglicherweise bereits behoben. Führen Sie Ihren Cluster wenn möglich mit der aktuellen Version erneut aus.

## Prüfen der Amazon-VPC-Subnetzkonfiguration
<a name="emr-troubleshoot-failed-2-vpc"></a>

Wenn Ihr Cluster in einem Amazon VPC-Subnetz gestartet wurde, muss das Subnetz wie unter [Konfiguration von Netzwerken in einer VPC für Amazon EMR](emr-plan-vpc-subnet.md) beschrieben konfiguriert werden. Überprüfen Sie außerdem, ob das Subnetz, in dem Sie den Cluster starten, über genügend freie elastische IP-Adressen verfügt, um jedem Knoten im Cluster eine zuzuweisen.

# Schritt 3: Die letzte Statusänderung überprüfen
<a name="emr-troubleshoot-failed-3"></a>

 Die letzte Statusänderung gibt Aufschluss darüber, welches Ereignis bei der letzten Statusänderung des Clusters aufgetreten ist. Häufig lassen sich Informationen gewinnen, die Hinweise darauf geben, welcher Fehler auftrat, als sich der Cluster-Status in `FAILED` änderte. Wenn Sie beispielsweise einen Streaming-Cluster starten und einen Ausgabespeicherort angeben, der in Amazon S3 bereits vorhanden ist, tritt beim Cluster ein Fehler auf und die letzte Statusänderung weist darauf hin, dass das Streaming-Ausgabeverzeichnis bereits vorhanden ist. 

 Sie können den Wert der letzten Statusänderung über die Konsole ermitteln, indem Sie den Detailbereich für den Cluster über die Befehlszeilenschnittstelle (CLI) mit dem Argument `list-steps` oder `describe-cluster` bzw. über die API mit den Aktionen `DescribeCluster` und `ListSteps` anzeigen. Weitere Informationen finden Sie unter [Status und Details des Amazon EMR-Clusters anzeigen](emr-manage-view-clusters.md). 

# Schritt 4: Untersuchen Sie die Amazon EMR-Protokolldateien
<a name="emr-troubleshoot-failed-4"></a>

 Der nächste Schritt besteht darin, die Protokolldateien zu untersuchen, um einen Fehlercode oder einen anderen Hinweis auf das Problem zu finden, das in Ihrem Cluster aufgetreten ist. Informationen zu den verfügbaren Protokolldateien, wo sie zu finden sind und wie Sie sie anzeigen können, finden Sie unter [Amazon EMR-Protokolldateien anzeigen](emr-manage-view-web-log-files.md). 

 Es kann einige Nachforschungen erfordern, um herauszufinden, was passiert ist. Hadoop führt die Arbeit der Aufträge in Aufgabenversuchen auf verschiedenen Knoten im Cluster aus. Amazon EMR kann spekulative Aufgabenversuche initiieren und die anderen Aufgabenversuche beenden, die nicht zuerst abgeschlossen werden. Dadurch werden umfangreiche Aktivitäten generiert, die in den Controller-, Stderr- und Syslog-Protokolldateien protokolliert werden. Darüber hinaus werden mehrere Aufgaben gleichzeitig ausgeführt, aber eine Protokolldatei kann die Ergebnisse nur linear anzeigen. 

 Überprüfen Sie zunächst die Bootstrap-Aktionsprotokolle auf Fehler oder unerwartete Konfigurationsänderungen beim Start des Clusters. Suchen Sie anschließend in den Schrittprotokollen nach Hadoop-Aufträgen, die als Teil eines fehlerhaften Schritts gestartet wurden. Untersuchen Sie die Hadoop-Auftragsprotokolle, um die fehlgeschlagenen Aufgabenversuche zu identifizieren. Das Protokoll der Aufgabenversuche wird Details darüber enthalten, was zum Fehlschlagen eines Aufgabenversuchs geführt hat. 

In den folgenden Abschnitten wird erläutert, wie die verschiedenen Protokolldateien verwendet werden, um Fehler in Ihrem Cluster zu identifizieren.

## Die Bootstrap-Aktionsprotokolle überprüfen
<a name="emr-troubleshoot-failed-4-bootstrap-logs"></a>

 Bootstrap-Aktionen führen Skripts auf dem Cluster aus, während dieser gestartet wird. Sie werden häufig verwendet, um zusätzliche Software auf dem Cluster zu installieren oder um Konfigurationseinstellungen gegenüber den Standardwerten zu ändern. Die Überprüfung dieser Protokolle kann Aufschluss über Fehler geben, die bei der Einrichtung des Clusters aufgetreten sind, sowie über Änderungen der Konfigurationseinstellungen, die sich auf die Leistung auswirken könnten. 

## Die Schrittprotokolle überprüfen
<a name="emr-troubleshoot-failed-4-step-logs"></a>

 Es gibt vier Arten von Schrittprotokollen. 
+ **Controller – ** Enthält von Amazon EMR (Amazon EMR) generierte Dateien, die auf Fehler zurückzuführen sind, die bei der Ausführung Ihres Schritts aufgetreten sind. Wenn Ihr Schritt beim Laden fehlschlägt, finden Sie den Stack-Trace in diesem Protokoll. Fehler beim Laden oder Zugreifen auf Ihre Anwendung werden hier häufig beschrieben, ebenso wie Fehler in der fehlenden Mapper-Datei. 
+  **stderr – ** Enthält Fehlermeldungen, die bei der Verarbeitung des Schritts aufgetreten sind. Fehler beim Laden von Anwendungen werden hier häufig beschrieben. Dieses Protokoll enthält manchmal einen Stack-Trace. 
+ **stdout – ** Enthält den Status, der von Ihren ausführbaren Mapper- und Reducer-Dateien generiert wurde. Fehler beim Laden von Anwendungen werden hier häufig beschrieben. Dieses Protokoll enthält manchmal Anwendungsfehlermeldungen.
+ **syslog – ** Enthält Protokolle von Software, die nicht von Amazon stammt, wie Apache und Hadoop. Streaming-Fehler werden hier häufig beschrieben.

 Überprüfen Sie stderr auf offensichtliche Fehler. Wenn stderr eine kurze Liste von Fehlern anzeigt, wurde der Schritt schnell beendet und es wurde ein Fehler ausgelöst. Dies wird meistens durch einen Fehler in den Mapper- und Reducer-Anwendungen verursacht, die im Cluster ausgeführt werden. 

 Untersuchen Sie die letzten Zeilen von Controller und Syslog auf Hinweise auf Fehler oder Ausfälle. Folgen Sie allen Hinweisen zu fehlgeschlagenen Aufgaben, insbesondere wenn dort „Auftrag fehlgeschlagen“ steht. 

## Die Aufgabenversuchsprotokolle überprüfen
<a name="emr-troubleshoot-failed-4-task-logs"></a>

 Wenn die vorherige Analyse der Schrittprotokolle eine oder mehrere fehlgeschlagene Aufgaben ergeben hat, suchen Sie in den Protokollen der entsprechenden Aufgabenversuche nach detaillierteren Fehlerinformationen. 

# Schritt 5: Testen Sie den Amazon EMR-Cluster Schritt für Schritt
<a name="emr-troubleshoot-failed-5-test-steps"></a>

 Eine nützliche Strategie zum Nachverfolgen der Ursache für einen Fehler besteht darin, den Cluster neu zu starten und die Schritte einzeln auszuführen. So können Sie die Ergebnisse für jeden Schritt überprüfen, bevor Sie die Verarbeitung des nächsten Schritts starten, und erhalten die Möglichkeit, einen fehlgeschlagenen Schritt zu korrigieren und erneut auszuführen. Dies hat den Vorteil, dass Sie Ihre Eingabedaten nur einmal laden müssen. 

**So testen Sie den Cluster Schritt für Schritt**

1.  Starten Sie einen neuen Cluster mit aktiviertem Keepalive und Beendigungsschutz. Keepalive sorgt dafür, dass der Cluster weiterhin ausgeführt wird, nachdem er alle ausstehenden Schritte verarbeitet hat. Der Beendigungsschutz verhindert, dass ein Cluster im Falle eines Fehlers heruntergefahren wird. Weitere Informationen erhalten Sie unter [Konfiguration eines Amazon EMR-Clusters zum Fortfahren oder Beenden nach der Ausführung des Schritts](emr-plan-longrunning-transient.md) und [Verwenden Sie den Kündigungsschutz, um Ihre Amazon EMR-Cluster vor einem versehentlichen Herunterfahren zu schützen](UsingEMR_TerminationProtection.md). 

1.  Senden Sie einen Schritt an den Cluster. Weitere Informationen finden Sie unter [Arbeit an einen Amazon EMR-Cluster einreichen](emr-work-with-steps.md). 

1.  Wenn die Verarbeitung des Schritts abgeschlossen ist, prüfen Sie die Schrittprotokolldateien auf Fehler. Weitere Informationen finden Sie unter [Schritt 4: Untersuchen Sie die Amazon EMR-Protokolldateien](emr-troubleshoot-failed-4.md). Die schnellste Möglichkeit zum Auffinden dieser Protokolldateien besteht darin, eine Verbindung mit dem Master-Knoten herzustellen und die Protokolldateien hier anzuzeigen. Die Schrittprotokolldateien werden erst angezeigt, wenn der Schritt einige Zeit ausgeführt wird, beendet wird oder ein Fehler auftritt. 

1.  Wenn der Schritt erfolgreich ohne Fehler abgeschlossen wurde, führen Sie den nächsten Schritt aus. Wenn Fehler vorliegen, ermitteln Sie den Fehler in den Protokolldateien. Wenn in Ihrem Code ein Fehler aufgetreten ist, korrigieren Sie ihn und führen Sie den Schritt erneut aus. Fahren Sie fort, bis alle Schritte ohne Fehler ausgeführt werden. 

1.  Wenn Sie das Debuggen des Clusters abgeschlossen haben, müssen Sie den Cluster ggf. manuell beenden. Dies ist erforderlich, da der Cluster mit aktiviertem Beendigungsschutz gestartet wurde. Weitere Informationen finden Sie unter [Verwenden Sie den Kündigungsschutz, um Ihre Amazon EMR-Cluster vor einem versehentlichen Herunterfahren zu schützen](UsingEMR_TerminationProtection.md). 