Il cluster termina con NO_ _ e i nodi principali _BY_ SLAVE LEFT FAILED MASTER - Amazon EMR

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à.

Il cluster termina con NO_ _ e i nodi principali _BY_ SLAVE LEFT FAILED MASTER

In genere, ciò accade perché la protezione da cessazione è disabilitata e tutti i nodi principali superano la capacità di storage su disco come specificato da una soglia di utilizzo massimo nella classificazione di configurazione yarn-site, che corrisponde al file yarn-site.xml. Per impostazione predefinita, questo valore è 90%. Quando l'utilizzo del disco per un nodo principale supera la soglia di utilizzo, il servizio sanitario segnala il YARN NodeManager nodo come. UNHEALTHY Mentre si trova in questo stato, Amazon EMR deny elenca il nodo e non gli assegna YARN contenitori. Se il nodo non è integro per 45 minuti, Amazon EMR contrassegna l'EC2istanza Amazon associata per la terminazione come. FAILED_BY_MASTER Quando tutte le EC2 istanze Amazon associate ai nodi principali sono contrassegnate per la chiusura, il cluster termina con lo stato NO_SLAVE_LEFT perché non ci sono risorse per eseguire i job.

Il superamento dell'utilizzo del disco su un nodo principali potrebbe causare una reazione a catena. Se un singolo nodo supera la soglia di utilizzo del disco a causa diHDFS, è probabile che anche altri nodi si trovino vicini alla soglia. Il primo nodo supera la soglia di utilizzo del disco, quindi Amazon EMR deny lo elenca. Ciò aumenta il carico di utilizzo del disco per i nodi rimanenti, in quanto questi ultimi iniziano a replicare tra loro i HDFS dati persi sul nodo negato. Di conseguenza, ogni nodo diventa UNHEALTHY nello stesso modo e infine il cluster viene terminato.

Best practice e raccomandazioni

Configurazione di hardware cluster con archiviazione adeguata

Quando crei un cluster, assicurati che ci siano abbastanza nodi principali e che ciascuno di essi disponga di un archivio di istanze e di volumi di storage adeguati per. EBS HDFS Per ulteriori informazioni, consulta Calcolo della capacità richiesta di un cluster HDFS. Puoi inoltre aggiungere istanze principali ai gruppi di istanze esistenti manualmente o utilizzando il dimensionamento automatico. Le nuove istanze hanno la stessa configurazione di storage delle altre istanze nel gruppo di istanze. Per ulteriori informazioni, consulta Uso del dimensionamento del cluster.

Abilitare la protezione da cessazione

Abilita la protezione da cessazione. In questo modo, se un nodo principale è in elenco negato, puoi connetterti all'EC2istanza Amazon associata utilizzando SSH per la risoluzione dei problemi e il ripristino dei dati. Se abiliti la protezione dalla terminazione, tieni presente che Amazon EMR non sostituisce l'EC2istanza Amazon con una nuova istanza. Per ulteriori informazioni, consulta Utilizzo della protezione da cessazione.

Crea un allarme per la metrica MRUnhealthyNodes CloudWatch

Questo parametro indica il numero di nodi con stato UNHEALTHY. È equivalente alla YARN metricamapred.resourcemanager.NoOfUnhealthyNodes. Puoi impostare una notifica per questo allarme in modo che ti vengano segnalati i nodi non integri prima che venga raggiunto il timeout di 45 minuti. Per ulteriori informazioni, consulta Monitoraggio delle EMR metriche di Amazon con CloudWatch.

Impostazioni Tweak mediante yarn-site

Le impostazioni riportate di seguito possono essere regolate in base ai requisiti dell'applicazione. Ad esempio, potresti voler aumentare la soglia di utilizzo del disco in base alla quale un nodo segnala lo stato UNHEALTHY aumentando il valore di yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage.

Puoi impostare questi valori quando crei un cluster utilizzando la classificazione di configurazione yarn-site. Per ulteriori informazioni, consulta Configurazione delle applicazioni nella Amazon EMR Release Guide. Puoi anche connetterti alle EC2 istanze Amazon associate ai nodi principali utilizzando e SSH quindi aggiungere i valori /etc/hadoop/conf.empty/yarn-site.xml utilizzando un editor di testo. Dopo aver apportato la modifica, è necessario riavviare il sistema hadoop-yarn-nodemanager come illustrato di seguito.

Importante

Quando si riavvia il NodeManager servizio, YARN i contenitori attivi vengono interrotti a meno che non yarn.nodemanager.recovery.enabled sia impostato l'trueutilizzo della classificazione di yarn-site configurazione al momento della creazione del cluster. Devi inoltre specificare la directory in cui memorizzare lo stato del container utilizzando la proprietà yarn.nodemanager.recovery.dir.

sudo /sbin/stop hadoop-yarn-nodemanager sudo /sbin/start hadoop-yarn-nodemanager

Per ulteriori informazioni sulle yarn-site proprietà correnti e sui valori predefiniti, consultate le impostazioni YARN predefinite nella documentazione di Apache Hadoop.

Proprietà Valore predefinito Descrizione

yarn.nodemanager. disk-health-checker.intervallo-ms

120000

La frequenza (in secondi) con cui viene eseguito il controllo dello stato del disco.

yarn.nodemanager. disk-health-checker. min-healthy-disks

0.25

La frazione minima del numero di dischi che devono essere integri per NodeManager poter avviare nuovi contenitori. Corrisponde sia a yarn.nodemanager.local-dirs (per impostazione predefinita, in Amazon) che a yarn.nodemanager.log-dirs (per impostazione predefinita, /mnt/yarn a cui è collegato un simbolo in EMR Amazon). /var/log/hadoop-yarn/containers mnt/var/log/hadoop-yarn/containers EMR

yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage

90,0

La percentuale massima di utilizzo dello spazio su disco consentita dopo che un disco viene contrassegnato come difettoso. I valori possono andare da 0,0 a 100,0. Se il valore è maggiore o uguale a 100, verifica la presenza di un disco completo. NodeManager Ciò è valido per yarn-nodemanager.local-dirs e yarn.nodemanager.log-dirs.

yarn.nodemanager.disk-health-checker.min-free-space-per-disk-mb

0

Lo spazio minimo che deve essere disponibile su un disco affinché possa essere utilizzato. Ciò è valido per yarn-nodemanager.local-dirs e yarn.nodemanager.log-dirs.