Come installare e configurare Apache Hadoop su un singolo nodo in CentOS 7
Apache Hadoop è un framework open source creato per l'archiviazione distribuita di Big Data e l'elaborazione dei dati tra cluster di computer. Il progetto si basa sulle seguenti componenti:
- Hadoop Common: contiene le librerie e le utilità Java necessarie ad altri moduli Hadoop.
- HDFS – Hadoop Distributed File System – Un file system scalabile basato su Java distribuito su più nodi.
- MapReduce: framework YARN per l'elaborazione parallela di big data.
- Hadoop YARN: un framework per la gestione delle risorse del cluster.
Questo articolo ti guiderà su come installare Apache Hadoop su un cluster a nodo singolo in CentOS 7 (funziona anche per RHEL 7 e Fedora 23+ versioni). Questo tipo di configurazione viene anche definito modalità pseudo-distribuita Hadoop.
Passaggio 1: installa Java su CentOS 7
1. Prima di procedere con l'installazione di Java, accedi innanzitutto con l'utente root o un utente con privilegi root imposta il nome host della tua macchina con il seguente comando.
hostnamectl set-hostname master
Inoltre, aggiungi un nuovo record nel file host con il nome FQDN della tua macchina in modo che punti all'indirizzo IP del tuo sistema.
vi /etc/hosts
Aggiungi la riga seguente:
192.168.1.41 master.hadoop.lan
Sostituisci il nome host e i record FQDN sopra indicati con le tue impostazioni.
2. Successivamente, vai alla pagina di download di Oracle Java e scarica l'ultima versione di Java SE Development Kit 8 sul tuo sistema con l'aiuto di curl comando:
curl -LO -H "Cookie: oraclelicense=accept-securebackup-cookie" “http://download.oracle.com/otn-pub/java/jdk/8u92-b14/jdk-8u92-linux-x64.rpm”
3. Al termine del download del binario Java, installa il pacchetto eseguendo il comando seguente:
rpm -Uvh jdk-8u92-linux-x64.rpm
Passaggio 2: installa Hadoop Framework in CentOS 7
4. Successivamente, crea un nuovo account utente sul tuo sistema senza poteri di root che lo utilizzeremo per il percorso di installazione di Hadoop e l'ambiente di lavoro. La directory home del nuovo account risiederà nella directory /opt/hadoop
.
useradd -d /opt/hadoop hadoop
passwd hadoop
5. Nel passaggio successivo visita la pagina Apache Hadoop per ottenere il collegamento per l'ultima versione stabile e scaricare l'archivio sul tuo sistema.
curl -O http://apache.javapipe.com/hadoop/common/hadoop-2.7.2/hadoop-2.7.2.tar.gz
6. Estrai l'archivio e copia il contenuto della directory nel percorso home dell'account Hadoop. Inoltre, assicurati di modificare di conseguenza le autorizzazioni dei file copiati.
tar xfz hadoop-2.7.2.tar.gz
cp -rf hadoop-2.7.2/* /opt/hadoop/
chown -R hadoop:hadoop /opt/hadoop/
7. Successivamente, accedi con l'utente hadoop e configura Hadoop e Variabili di ambiente Java sul tuo sistema modificando < codice>.bash_profile file.
su - hadoop
vi .bash_profile
Aggiungi le seguenti righe alla fine del file:
## JAVA env variables
export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
## HADOOP env variables
export HADOOP_HOME=/opt/hadoop
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
8. Ora inizializza le variabili di ambiente e controlla il loro stato immettendo i comandi seguenti:
source .bash_profile
echo $HADOOP_HOME
echo $JAVA_HOME
9. Infine, configura l'autenticazione basata sulla chiave ssh per l'account hadoop eseguendo i comandi seguenti (sostituisci il nome host o il FQDN rispetto al comando ssh-copy-id
di conseguenza).
Inoltre, lascia vuota la passphrase per accedere automaticamente tramite ssh.
ssh-keygen -t rsa
ssh-copy-id master.hadoop.lan