Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Debug migliorato delle fasi
Se una fase di Amazon EMR ha esito negativo e hai inviato il lavoro utilizzando l'operazione API Step con un'AMI versione 5.x o successiva, in alcuni casi Amazon EMR può identificare e restituire la causa principale dell'errore nella fase insieme al nome del file di log pertinente e una parte della traccia di stack dell'applicazione mediante l'API. Ad esempio, è possibile identificare i seguenti errori:
-
Un errore Hadoop comune come una directory di output già esistente, una directory di input inesistente o un'applicazione con memoria insufficiente.
-
Errori Java, ad esempio un'applicazione compilata con una versione incompatibile di Java o eseguita con una classe principale introvabile.
-
Un problema di accesso agli oggetti archiviati in Amazon S3.
Queste informazioni sono disponibili utilizzandoDescribeStepeListStepsOperazioni API. LaFailureDetailscampo delStepSummaryrestituiti da tali operazioni. Per accedere alFailureDetailsinformazioni, usa ilAWSCLI, console oAWSSDK.
Abbiamo riprogettato la console Amazon EMR per facilitarne l'utilizzo. Per scoprire le differenze tra la vecchia e la nuova esperienza sulla console, consulta la sezione Novità della console.
- New console
-
La nuova console Amazon EMR non offre il debug delle fasi. Tuttavia, è possibile visualizzare i dettagli della terminazione del cluster con la procedura seguente.
Visualizzazione dei dettagli sugli errori con la nuova console
-
Accedi alAWS Management Consolee apri la console Amazon EMR all'indirizzohttps://console.aws.amazon.com/emr.
-
In EMR on EC2 (EMR su EC2), nel riquadro di navigazione a sinistra, scegli Clusters (Cluster) e seleziona il cluster da visualizzare.
-
Prendi nota del valore Status (Stato) nella sezione Summary (Riepilogo) della pagina dei dettagli del cluster. Se lo stato è Terminated with errors (Terminato con errori), passa con il mouse sul testo per visualizzare i dettagli degli errori del cluster.
- Old console
-
Visualizzazione dei dettagli sugli errori con la vecchia console
Accedi alla nuova console Amazon EMR e selezionaPassa alla vecchia consoledalla navigazione laterale. Per ulteriori informazioni su cosa aspettarsi quando si passa alla vecchia console, consultaUtilizzo della vecchia console.
-
Scegliere Cluster List (Elenco cluster) e selezionare un cluster.
-
Selezionare l'icona a forma di freccia accanto a ogni fase per visualizzare ulteriori dettagli. Se la fase non è andata a buon fine e Amazon EMR è in grado di identificare la causa principale, vengono visualizzati i dettagli dell'errore.
- CLI
-
Visualizzazione dei dettagli sugli errori con la AWS CLI
-
Per ottenere i dettagli sugli errori di una fase con la AWS CLI, utilizza il comando describe-step
.
aws emr describe-step --cluster-id j-1K48XXXXXHCB --step-id s-3QM0XXXXXM1W
L'output risulterà simile al seguente:
{
"Step": {
"Status": {
"FailureDetails": {
"LogFile": "s3://myBucket/logs/j-1K48XXXXXHCB/steps/s-3QM0XXXXXM1W/stderr.gz",
"Message": "org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory s3://myBucket/logs/beta already exists",
"Reason": "Output directory already exists."
},
"Timeline": {
"EndDateTime": 1469034209.143,
"CreationDateTime": 1469033847.105,
"StartDateTime": 1469034202.881
},
"State": "FAILED",
"StateChangeReason": {}
},
"Config": {
"Args": [
"wordcount",
"s3://myBucket/input/input.txt",
"s3://myBucket/logs/beta"
],
"Jar": "s3://myBucket/jars/hadoop-mapreduce-examples-2.7.2-amzn-1.jar",
"Properties": {}
},
"Id": "s-3QM0XXXXXM1W",
"ActionOnFailure": "CONTINUE",
"Name": "ExampleJob"
}
}