Le but est d'installer un cluster hadoop.7 (version communautaire Apache).
Le cluster est constitué de 3 noeuds :
Host IP Fonction ----------------------- --------------- -------------------------------------------- hadoop01.datalbi.com 192.168.56.201 namenode (HDFS) + resourcemanager (YARN) hadoop02.datalbi.com 192.168.56.202 datanode (HDFS) + nodemanager (YARN) hadoop03.datalbi.com 192.168.56.203 datanode (HDFS) + nodemanager (YARN)
CPU : un processeur est suffisant
Mémoire : 4 Go minimum, 8 Go conseillé
On part d'une installation minimale de CentOS 7.1.
Les prérequis pour Hadoop sont les suivants :
Installer le jdk 7 que l'on aura préalablement téléchargé:
cd /opt tar xf /root/jdk-7u80-linux-x64.tar
Le DNS utilisé se trouve dans le fichier /etc/resolv.conf
cat /etc/resolv.conf # Generated by NetworkManager search datalbi.com nameserver 192.168.56.201
Si le firewall est activé, le désactiver :
systemctl disable firewalld systemctl stop firewalld
A l'heure ou est écrit cet article, il n'existe pas de paquetage rpm pour installer Hadoop en version communautaire. On doit donc installer les fichiers manuellement.
Télécharger le fichier hadoop-2.7.2.tar à l'adresse http://hadoop.apache.org/releases.html
Extraire le contenu du fichier :
su - cd /opt tar xf /root/hadoop-2.7.2.tar
Mettre à jour les variables d'environnement :
vi /etc/bashrc # Ajouter les lignes suivantes export JAVA_HOME=/opt/jdk1.7.0_80 export HADOOP_PREFIX=/opt/hadoop-2.7.2 export PATH=$JAVA_HOME/bin:$PATH
Modifier la taille max des jvm exprimée en Mo :
vi /opt/hadoop-2.7.2/etc/hadoop/hadoop-env.sh # Modifier la ligne suivante export HADOOP_HEAPSIZE=512 vi /opt/hadoop-2.7.2/etc/hadoop/yarn-env.sh # Modifier la ligne suivante YARN_HEAPSIZE=512
Renseigner l'URI du namenode
vi /opt/hadoop-2.7.2/etc/hadoop/core-site.xml fs.defaultFS hdfs://hadoop01.datalbi.com:50070/ URI of namenode
Créer le répertoire de donnees du namenode et datanode
# A faire sur hadoop01 mkdir /hadoop_name_dir # A faire sur hadoop02 et hadoop03 mkdir /hadoop_data_dir
Configurer l'emplacement du répertoire de donnees du namenode et datanode
# A faire sur les 3 noeuds, fichier de configuration a l'identique. vi /opt/hadoop-2.7.2/etc/hadoop/hdfs-site.xml dfs.namenode.name.dir /hadoop_name_dir Namenode : Location for fsimage and editlog dfs.datanode.data.dir /hadoop_data_dir Datanode : Location for local files dfs.namenode.rpc-address hadoop01.datalbi.com:5000 s
Formater le HDFS sur le namenode en donnant un nom au HDFS :
# A faire sur hadoop01 $HADOOP_PREFIX/bin/hdfs namenode -format hdfs_datalbi
# hadoop01 # start HDFS name node $HADOOP_PREFIX/sbin/hadoop-daemon.sh --config $HADOOP_PREFIX/etc/hadoop --script hdfs start namenode # start YARN resource manager $HADOOP_PREFIX/sbin/yarn-daemon.sh --config $HADOOP_PREFIX/etc/hadoop start resourcemanager # hadoop02 et hadoop03 # start HDFS data node $HADOOP_PREFIX/sbin/hadoop-daemons.sh --config $HADOOP_PREFIX/etc/hadoop --script hdfs start datanode # start YARN node manager : $HADOOP_PREFIX/sbin/yarn-daemons.sh --config $HADOOP_PREFIX/etc/hadoop start nodemanager
Vérifier l'interface web HDFS : http://hadoop01.datalbi.com:50070/
Vérifier l'interface web YARN : http://hadoop01.datalbi.com:8088/
# hadoop01 # stop HDFS name node $HADOOP_PREFIX/sbin/hadoop-daemon.sh --config $HADOOP_PREFIX/etc/hadoop --script hdfs stop namenode # stop YARN resource manager $HADOOP_PREFIX/sbin/yarn-daemon.sh --config $HADOOP_PREFIX/etc/hadoop stop resourcemanager # hadoop02 et hadoop03 # stop HDFS data node $HADOOP_PREFIX/sbin/hadoop-daemons.sh --config $HADOOP_PREFIX/etc/hadoop --script hdfs stop datanode # stop YARN node manager : $HADOOP_PREFIX/sbin/yarn-daemons.sh --config $HADOOP_PREFIX/etc/hadoop stop nodemanager