Recherche de site Web

Comment installer un cluster à nœud unique Hadoop (pseudonode) sur CentOS 7


Hadoop est un framework open source largement utilisé pour gérer le Bigdata. La plupart des projets Bigdata/Data Analytics sont construits sur l'écosystème Hadoop. Il se compose de deux couches, l'une pour le stockage des données et l'autre pour le traitement des données.

Le stockage sera pris en charge par son propre système de fichiers appelé HDFS (Hadoop Distributed Filesystem) et le traitement sera pris en charge. pris en charge par YARN (Yet Another Resource Négociateur). Mapreduce est le moteur de traitement par défaut de l'écosystème Hadoop.

Cet article décrit le processus d'installation de l'installation Pseudonode de Hadoop, où tous les démons (JVM) seront exécutant un cluster à nœud unique sur CentOS 7.

C'est principalement destiné aux débutants qui souhaitent apprendre Hadoop. En temps réel, Hadoop sera installé sous forme de cluster multi-nœuds où les données seront distribuées entre les serveurs sous forme de blocs et le travail sera exécuté de manière parallèle.

Conditions préalables

  • Une installation minimale du serveur CentOS 7.
  • Version Java v1.8.
  • Version stable de Hadoop 2.x.

Sur cette page

  • Comment installer Java sur CentOS 7
  • Configurer la connexion sans mot de passe sur CentOS 7
  • Comment installer un nœud unique Hadoop dans CentOS 7
  • Comment configurer Hadoop dans CentOS 7
  • Formatage du système de fichiers HDFS via le NameNode

Installer Java sur CentOS 7

1. Hadoop est un écosystème composé de Java. Nous avons obligatoirement besoin de Java installé dans notre système pour installer Hadoop.

yum install java-1.8.0-openjdk

2. Ensuite, vérifiez la version installée de Java sur le système.

java -version

Configurer la connexion sans mot de passe sur CentOS 7

Nous devons avoir configuré SSH sur notre machine, Hadoop gérera les nœuds à l'aide de SSH. Le nœud maître utilise une connexion SSH pour connecter ses nœuds esclaves et effectuer des opérations telles que le démarrage et l'arrêt.

Nous devons configurer SSH sans mot de passe afin que le maître puisse communiquer avec les esclaves en utilisant ssh sans mot de passe. Sinon pour chaque établissement de connexion, il faudra saisir le mot de passe.

Dans ce nœud unique, les services Maître (Namenode, Secondary Namenode & Resource Manager) et Slave< Les services (Datanode et Nodemanager) fonctionneront en tant que JVM distinctes. Même s'il s'agit d'un seul nœud, nous avons besoin d'un ssh sans mot de passe pour que le Maître puisse communiquer avec l'Esclave sans authentification.

3. Configurez une connexion SSH sans mot de passe à l'aide des commandes suivantes sur le serveur.

ssh-keygen
ssh-copy-id -i localhost

4. Après avoir configuré la connexion SSH sans mot de passe, essayez de vous connecter à nouveau, vous serez connecté sans mot de passe.

ssh localhost

Installation de Hadoop dans CentOS 7

5. Accédez au site Web Apache Hadoop et téléchargez la version stable de Hadoop à l'aide de la commande wget suivante.

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. Ensuite, ajoutez les variables d'environnement Hadoop dans le fichier ~/.bashrc comme indiqué.

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

7. Après avoir ajouté des variables d'environnement à ~/.bashrc le fichier, sourcez le fichier et vérifiez Hadoop en exécutant les commandes suivantes.

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

Configuration de Hadoop dans CentOS 7

Nous devons configurer ci-dessous les fichiers de configuration Hadoop afin de les adapter à votre machine. Dans Hadoop, chaque service possède son propre numéro de port et son propre répertoire pour stocker les données.

  • Fichiers de configuration Hadoop – core-site.xml, hdfs-site.xml, mapred-site.xml et Yarn-site.xml

8. Tout d'abord, nous devons mettre à jour JAVA_HOME et le chemin Hadoop dans le fichier hadoop-env.sh comme indiqué. .

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

Entrez la ligne suivante au début du fichier.

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

9. Ensuite, modifiez le fichier core-site.xml.

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

Collez ce qui suit entre les balises <configuration> comme indiqué.

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

10. Créez les répertoires ci-dessous sous le répertoire personnel de l'utilisateur tecmint, qui sera utilisé pour le stockage NN et DN.

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

10. Ensuite, modifiez le fichier hdfs-site.xml.

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

Collez ce qui suit entre les balises <configuration> comme indiqué.

<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. Encore une fois, modifiez le fichier mapred-site.xml.

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

Collez ce qui suit entre les balises <configuration> comme indiqué.

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

12. Enfin, modifiez le fichier yarn-site.xml.

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

Collez ce qui suit entre les balises <configuration> comme indiqué.

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

Formatage du système de fichiers HDFS via le NameNode

13. Avant de démarrer le Cluster, nous devons formater le Hadoop NN dans notre système local où il a été installé. Habituellement, cela sera fait dans la phase initiale avant de démarrer le cluster pour la première fois.

Le formatage du NN entraînera une perte de données dans le métastore NN, nous devons donc être plus prudents, nous ne devons pas formater le NN pendant que le cluster est en cours d'exécution, à moins que cela ne soit intentionnellement requis.

cd $HADOOP_PREFIX
bin/hadoop namenode -format

14. Démarrez le démon NameNode et le démon DataNode : (port 50070).

cd $HADOOP_PREFIX
sbin/start-dfs.sh

15. Démarrez le démon ResourceManager et le démon NodeManager : (port 8088).

sbin/start-yarn.sh

16. Arrêter tous les services.

sbin/stop-dfs.sh
sbin/stop-dfs.sh
Résumé

Résumé
Dans cet article, nous avons parcouru le processus étape par étape pour configurer le Pseudonode Hadoop (Nœud unique) Cluster. Si vous avez des connaissances de base de Linux et suivez ces étapes, le cluster sera opérationnel dans 40 minutes.

Cela peut être très utile pour le débutant pour commencer à apprendre et à pratiquer Hadoop ou cette version vanille de Hadoop peut être utilisée à des fins de développement. Si nous voulons avoir un cluster en temps réel, soit nous avons besoin d'au moins 3 serveurs physiques en main, soit nous devons provisionner le Cloud pour avoir plusieurs serveurs.