Video: How to Setup Multinode Hadoop 2 on CentOS/RHEL Using VirtualBox 2025
In un universo Hadoop, i nodi slave sono i luoghi in cui sono archiviati i dati Hadoop e dove avviene l'elaborazione dei dati. I seguenti servizi consentono ai nodi slave di memorizzare ed elaborare i dati:
-
NodeManager: Coordina le risorse per un singolo nodo slave e riporta al Resource Manager.
-
ApplicationMaster: Tiene traccia dell'avanzamento di tutte le attività in esecuzione sul cluster Hadoop per un'applicazione specifica. Per ogni applicazione client, Resource Manager distribuisce un'istanza del servizio ApplicationMaster in un contenitore su un nodo slave. (Ricordare che qualsiasi nodo su cui è in esecuzione il servizio NodeManager è visibile a Resource Manager.)
-
Contenitore: Una raccolta di tutte le risorse necessarie per eseguire singole attività per un'applicazione. Quando un'applicazione è in esecuzione sul cluster, Resource Manager pianifica le attività per l'esecuzione dell'applicazione come servizi contenitore sui nodi slave del cluster.
-
TaskTracker: Gestisce la singola mappa e riduce le attività eseguite su un nodo slave per i cluster Hadoop 1. In Hadoop 2, questo servizio è obsoleto ed è stato sostituito dai servizi YARN.
-
DataNode: Servizio HDFS che consente a NameNode di memorizzare blocchi sul nodo slave.
-
RegionServer: Memorizza i dati per il sistema HBase. In Hadoop 2, HBase utilizza Hoya, che consente di eseguire istanze di RegionServer in contenitori.
Qui, ogni nodo slave esegue sempre un'istanza DataNode (che consente a HDFS di archiviare e recuperare blocchi di dati sul nodo slave) e un'istanza NodeManager (che consente al Resource Manager di assegnare attività dell'applicazione al nodo slave per l'elaborazione). I processi contenitore sono attività individuali per le applicazioni in esecuzione nel cluster.
Ogni applicazione in esecuzione ha un'attività ApplicationMaster dedicata, che viene eseguita anche in un contenitore e tiene traccia dell'esecuzione di tutte le attività in esecuzione sul cluster fino al termine dell'applicazione.
Con HBase su Hadoop 2, il modello di contenitore è ancora seguito, come puoi vedere:
HBase su Hadoop 2 viene avviato dal Master applicazioni Hoya, che richiede contenitori per i servizi HMaster. (Sono necessari più servizi HMaster per la ridondanza.) Il Master applicazioni Hoya richiede anche risorse per RegionServer, che vengono eseguiti anche in contenitori speciali.
La figura seguente mostra i servizi distribuiti su nodi slave Hadoop 1.
Per Hadoop 1, ogni nodo slave esegue sempre un'istanza DataNode (che consente a HDFS di archiviare e recuperare blocchi di dati sul nodo slave) e un'istanza TaskTracker (che abilita JobTracker ad assegnare la mappa e ridurre le attività al nodo slave per l'elaborazione).
I nodi slave hanno un numero fisso di slot di mappa e riducono gli slot per l'esecuzione della mappa e riducono le attività rispettivamente. Se il proprio cluster esegue HBase, un numero di nodi slave dovrà eseguire un servizio RegionServer. Più dati memorizzi in HBase, più istanze di RegionServer ti serviranno.
I criteri hardware per i nodi slave sono piuttosto diversi da quelli per i nodi master; in effetti, i criteri non corrispondono a quelli trovati nelle architetture di riferimento hardware tradizionali per i server di dati. Gran parte del clamore che circonda Hadoop è dovuto all'uso di hardware di base nei criteri di progettazione dei cluster Hadoop, ma tieni presente che l'hardware di materie prime non si riferisce all'hardware di tipo consumer.
I nodi slave Hadoop richiedono ancora hardware di livello enterprise, ma all'estremità inferiore dello spettro dei costi, in particolare per lo storage.
