Ricerca nel sito web

Come installare Hadoop Single Node Cluster (Pseudonode) su CentOS 7


Hadoop è un framework open source ampiamente utilizzato per gestire Bigdata. La maggior parte dei progetti Bigdata/Data Analytics si basa sull'ecosistema Hadoop. È composto da due livelli, uno per la memorizzazione dei dati e un altro per l'elaborazione dei dati.

L'archiviazione sarà gestita dal proprio file system chiamato HDFS (Hadoop Distributed Filesystem) e verrà eseguita l'elaborazione cura di YARN (Yet Another Resource Negotiator). Mapreduce è il motore di elaborazione predefinito dell'ecosistema Hadoop.

Questo articolo descrive il processo per installare l'installazione Pseudonode di Hadoop, dove verranno installati tutti i demoni (JVM). con cluster a nodo singolo su CentOS 7.

Questo è principalmente per i principianti che vogliono imparare Hadoop. In tempo reale, Hadoop verrà installato come un cluster multinodo in cui i dati verranno distribuiti tra i server come blocchi e il lavoro verrà eseguito in modo parallelo.

Prerequisiti

  • Un'installazione minima del server CentOS 7.
  • Versione Java v1.8.
  • Versione stabile di Hadoop 2.x.

Su questa pagina

  • Come installare Java su CentOS 7
  • Configura l'accesso senza password su CentOS 7
  • Come installare Hadoop Single Node in CentOS 7
  • Come configurare Hadoop in CentOS 7
  • Formattazione del file system HDFS tramite NameNode

Installazione di Java su CentOS 7

1. Hadoop è un ecosistema composto da Java. Abbiamo bisogno che Java sia installato obbligatoriamente nel nostro sistema per installare Hadoop.

yum install java-1.8.0-openjdk

2. Successivamente, verifica la versione installata di Java sul sistema.

java -version

Configura l'accesso senza password su CentOS 7

Dobbiamo avere ssh configurato nella nostra macchina, Hadoop gestirà i nodi con l'uso di SSH. Il nodo master utilizza la connessione SSH per connettere i suoi nodi slave ed eseguire operazioni come l'avvio e l'arresto.

Dobbiamo impostare ssh senza password in modo che il master possa comunicare con gli slave utilizzando ssh senza password. Altrimenti per ogni creazione di connessione è necessario inserire la password.

In questo singolo nodo, i servizi Master (Namenode, Secondary Namenode e Resource Manager) e Slave< (Datanode e Nodemanager) verranno eseguiti come JVM separati. Anche se si tratta di un nodo singolo, abbiamo bisogno di un ssh senza password per fare in modo che Master comunichi con Slave senza autenticazione.

3. Configura un accesso SSH senza password utilizzando i seguenti comandi sul server.

ssh-keygen
ssh-copy-id -i localhost

4. Dopo aver configurato l'accesso SSH senza password, prova ad accedere nuovamente, sarai connesso senza password.

ssh localhost

Installazione di Hadoop su CentOS 7

5. Vai al sito web Apache Hadoop e scarica la versione stabile di Hadoop utilizzando il seguente comando wget.

wget https://archive.apache.org/dist/hadoop/core/hadoop-2.10.1/hadoop-2.10.1.tar.gz
tar xvpzf hadoop-2.10.1.tar.gz

6. Successivamente, aggiungi le variabili di ambiente Hadoop nel file ~/.bashrc come mostrato.

HADOOP_PREFIX=/root/hadoop-2.10.1
PATH=$PATH:$HADOOP_PREFIX/bin
export PATH JAVA_HOME HADOOP_PREFIX

7. Dopo aver aggiunto le variabili di ambiente al file ~/.bashrc, esegui l'origine del file e verifica Hadoop eseguendo i seguenti comandi.

source ~/.bashrc
cd $HADOOP_PREFIX
bin/hadoop version

Configurazione di Hadoop in CentOS 7

Dobbiamo configurare i file di configurazione Hadoop di seguito per adattarli alla tua macchina. In Hadoop ogni servizio ha il proprio numero di porta e la propria directory per archiviare i dati.

  • File di configurazione Hadoop: core-site.xml, hdfs-site.xml, mapred-site.xml e Yarn-site.xml

8. Innanzitutto, dobbiamo aggiornare JAVA_HOME e il percorso Hadoop nel file hadoop-env.sh come mostrato .

cd $HADOOP_PREFIX/etc/hadoop
vi hadoop-env.sh

Immettere la riga seguente all'inizio del file.

export JAVA_HOME=/usr/lib/jvm/java-1.8.0/jre
export HADOOP_PREFIX=/root/hadoop-2.10.1

9. Successivamente, modifica il file core-site.xml.

cd $HADOOP_PREFIX/etc/hadoop
vi core-site.xml

Incolla quanto segue tra i tag <configuration> come mostrato.

<configuration>
            <property>
                   <name>fs.defaultFS</name>
                   <value>hdfs://localhost:9000</value>
           </property>
</configuration>

10. Crea le directory seguenti nella directory home dell'utente tecmint, che verrà utilizzata per l'archiviazione NN e DN.

mkdir -p /home/tecmint/hdata/
mkdir -p /home/tecmint/hdata/data
mkdir -p /home/tecmint/hdata/name

10. Successivamente, modifica il file hdfs-site.xml.

cd $HADOOP_PREFIX/etc/hadoop
vi hdfs-site.xml

Incolla quanto segue tra i tag <configuration> come mostrato.

<configuration>
<property>
        <name>dfs.replication</name>
        <value>1</value>
 </property>
  <property>
        <name>dfs.namenode.name.dir</name>
        <value>/home/tecmint/hdata/name</value>
  </property>
  <property>
          <name>dfs .datanode.data.dir</name>
          <value>home/tecmint/hdata/data</value>
  </property>
</configuration>

11. Ancora una volta, modifica il file mapred-site.xml.

cd $HADOOP_PREFIX/etc/hadoop
cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml

Incolla quanto segue tra i tag <configuration> come mostrato.

<configuration>
                <property>
                        <name>mapreduce.framework.name</name>
                        <value>yarn</value>
                </property>
</configuration>

12. Infine, modifica il file yarn-site.xml.

cd $HADOOP_PREFIX/etc/hadoop
vi yarn-site.xml

Incolla quanto segue tra i tag <configuration> come mostrato.

<configuration>
                <property>
                       <name>yarn.nodemanager.aux-services</name>
                       <value>mapreduce_shuffle</value>
                </property>
</configuration>

Formattazione del file system HDFS tramite NameNode

13. Prima di avviare il Cluster, dobbiamo formattare Hadoop NN nel nostro sistema locale dove è stato installato. Di solito, verrà eseguita nella fase iniziale prima di avviare il cluster per la prima volta.

La formattazione di NN causerà la perdita di dati nel metastore NN, quindi dobbiamo essere più cauti, non dovremmo formattare NN mentre il cluster è in esecuzione a meno che non sia richiesto intenzionalmente.

cd $HADOOP_PREFIX
bin/hadoop namenode -format

14. Avvia il demone NameNode e il demone DataNode: (porta 50070).

cd $HADOOP_PREFIX
sbin/start-dfs.sh

15. Avvia il demone ResourceManager e il demone NodeManager: (porta 8088).

sbin/start-yarn.sh

16. Per interrompere tutti i servizi.

sbin/stop-dfs.sh
sbin/stop-dfs.sh
Riepilogo

Riepilogo
In questo articolo, abbiamo seguito il processo passo passo per impostare il cluster Hadoop Pseudonode (nodo singolo). Se hai una conoscenza di base di Linux e segui questi passaggi, il cluster sarà ATTIVO in 40 minuti.

Questo può essere molto utile per i principianti per iniziare a imparare e fare pratica con Hadoop oppure questa versione vanilla di Hadoop può essere utilizzata per scopi di sviluppo. Se vogliamo avere un cluster in tempo reale, abbiamo bisogno di almeno 3 server fisici a disposizione o dobbiamo fornire il Cloud per avere più server.