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_SLAVE_LEFT e i nodi principali FAILED_BY_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, YARNNodeManageril servizio sanitario segnala il nodo comeUNHEALTHY
. Mentre è in questo stato, Amazon EMR elenca come negato il nodo e non assegna i container YARN a tale nodo. Se il nodo rimane nello stato non integro per 45 minuti, Amazon EMR contrassegna l'istanza Amazon EC2 associata per la terminazione come FAILED_BY_MASTER
. Quando tutte le istanze Amazon EC2 associate con i nodi principali sono contrassegnate per la terminazione, il cluster viene terminato con lo stato NO_SLAVE_LEFT
perché non vi sono risorse per l'esecuzione dei processi.
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 di HDFS, è probabile che anche altri nodi siano vicini alla soglia. Il primo nodo supera la soglia di utilizzo del disco, quindi Amazon EMR lo elenca come negato. Ciò aumenta il carico di utilizzo del disco per i nodi rimanenti perché questi iniziano a replicare tra loro i dati HDFS che hanno perso sul nodo elencato come 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, accertati che vi sia un numero sufficiente di nodi principali e che ogni nodo disponga di volumi adeguati di storage EBS e instance store per HDFS. Per ulteriori informazioni, consulta Calcolo della capacità HDFS richiesta di un cluster. 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 è elencato come negato, puoi connetterti all'istanza Amazon EC2 associata utilizzando SSH per risolvere i problemi relativi ai dati e recuperare i dati. Se abiliti la protezione da cessazione, ricorda che Amazon EMR non sostituisce l'istanza Amazon EC2 con una nuova istanza. Per ulteriori informazioni, consulta Utilizzo della protezione da cessazione.
Crea un allarme per la risonanza magneticaUnhealthyNodes CloudWatchmetrico
Questo parametro indica il numero di nodi con stato UNHEALTHY
. È equivalente al parametro YARN mapred.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 metriche di Amazon EMR conCloudWatch.
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 Guida ai rilasci di Amazon EMR. Puoi inoltre connetterti alle istanze Amazon EC2 associate ai nodi principali tramite SSH, quindi aggiungere i valori in /etc/hadoop/conf.empty/yarn-site.xml
utilizzando un editor di testo. Dopo aver apportato la modifica, è necessario riavviarehadoop-yarn-nodemanagercome mostrato di seguito.
Importante
Quando si riavvia ilNodeManagerservizio, i contenitori YARN attivi vengono interrotti a meno cheyarn.nodemanager.recovery.enabled
è impostato sutrue
utilizzando ilyarn-site
classificazione della 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 proprietà yarn-site
correnti e i valori predefiniti, consulta la pagina delle impostazioni predefinite di YARN
Proprietà | Valore predefinito | Descrizione |
---|---|---|
yarn.gestore di nodi.disk-health-checker.intervallo-ms |
120000 |
La frequenza (in secondi) con cui viene eseguito il controllo dello stato del disco. |
yarn.gestore di nodi.disk-health-checker.min-healthy-disks |
0.25 |
La frazione minima del numero di dischi che devono essere integri perNodeManagerper lanciare nuovi contenitori. Ciò corrisponde sia a yarn.nodemanager.local-dirs (per impostazione predefinita |
|
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,NodeManagerverifica la presenza di un disco pieno. Ciò è valido per |
|
0 |
Lo spazio minimo che deve essere disponibile su un disco affinché possa essere utilizzato. Ciò è valido per |