Introduction
Hadoop est un cadre (framework) open-source populaire pour le stockage et le traitement distribués de grands ensembles de données. Dans ce tutoriel, nous vous guiderons tout au long du processus de démarrage des services Hadoop NameNode et DataNode, qui sont les composants essentiels d'un cluster Hadoop. À la fin de cet article, vous aurez une bonne compréhension de la manière de faire fonctionner votre infrastructure Hadoop.
Hadoop Fundamentals
Qu'est-ce que Hadoop ?
Hadoop est un cadre (framework) open-source pour le stockage et le traitement distribués de grands ensembles de données. Il est conçu pour passer d'un seul serveur à des milliers de machines, chacune offrant des capacités de calcul et de stockage locales. Hadoop est basé sur le Google File System (GFS) et le modèle de programmation MapReduce.
Composants clés de Hadoop
Hadoop se compose de deux composants principaux :
Hadoop Distributed File System (HDFS) : HDFS est un système de fichiers distribué qui offre un accès à haut débit aux données des applications. Il est conçu pour fonctionner sur du matériel de base et offre une tolérance aux pannes, une haute disponibilité et une évolutivité.
Hadoop MapReduce : Hadoop MapReduce est un modèle de programmation et un cadre (framework) logiciel pour écrire des applications qui traitent rapidement d'énormes quantités de données en parallèle sur de grands clusters de nœuds de calcul.
Architecture Hadoop
Hadoop suit une architecture maître-esclave, où le nœud maître est responsable de la gestion du cluster et les nœuds esclaves sont chargés d'exécuter les tâches.
graph TD
Master[Master Node] --> DataNode[DataNode]
Master --> NameNode[NameNode]
DataNode --> Worker[Worker Nodes]
NameNode --> HDFS[HDFS]
Cas d'utilisation de Hadoop
Hadoop est largement utilisé dans diverses industries et applications, notamment :
- L'analyse de gros données (big data analytics)
- L'apprentissage automatique (machine learning) et l'intelligence artificielle
- Le traitement et l'analyse des journaux (log processing and analysis)
- L'analyse des flux de clics (clickstream analysis)
- La recherche en génomique
- Les systèmes de recommandation
Installation de Hadoop sur Ubuntu 22.04
Pour installer Hadoop sur Ubuntu 22.04, suivez ces étapes :
- Mettez à jour l'index des paquets :
sudo apt-get update
- Installez les paquets nécessaires :
sudo apt-get install openjdk-11-jdk hadoop
- Configurez les variables d'environnement Hadoop :
export HADOOP_HOME=/usr/lib/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
Maintenant que vous avez une compréhension de base de Hadoop, passons à la mise en route des services NameNode et DataNode.
Lancement du Hadoop NameNode
Comprendre le NameNode
Le NameNode est le nœud maître dans le cluster Hadoop et est responsable de la gestion de l'espace de noms du système de fichiers, y compris l'ouverture, la fermeture et le renommage de fichiers et de répertoires. Il détermine également la correspondance entre les blocs et les DataNodes.
Démarrer le NameNode
Pour démarrer le NameNode, suivez ces étapes :
- Initialisez le NameNode :
hdfs namenode -format
- Démarrez le service NameNode :
hadoop-daemon.sh start namenode
Vous pouvez vérifier que le NameNode est en cours d'exécution en consultant l'interface web à l'adresse http://localhost:9870.
Configuration du NameNode
La configuration du NameNode est stockée dans les fichiers $HADOOP_HOME/etc/hadoop/core-site.xml et $HADOOP_HOME/etc/hadoop/hdfs-site.xml.
Voici un exemple de configuration :
<!-- core-site.xml -->
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
<!-- hdfs-site.xml -->
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/path/to/namenode/data</value>
</property>
</configuration>
Ces configurations définissent le système de fichiers par défaut sur HDFS, le facteur de réplication à 3 et l'emplacement du répertoire de données du NameNode.
Maintenant que le NameNode est démarré et fonctionne, passons au lancement des services DataNode.
Lancement du Hadoop DataNode
Comprendre le DataNode
Le DataNode est un nœud esclave dans le cluster Hadoop et est responsable du stockage et de la gestion des blocs de données. Il communique avec le NameNode pour signaler la liste des blocs disponibles et recevoir des instructions pour la réplication des données et la gestion des blocs.
Démarrer le DataNode
Pour démarrer le DataNode, suivez ces étapes :
- Formatez le répertoire de stockage du DataNode :
hdfs datanode -format
- Démarrez le service DataNode :
hadoop-daemon.sh start datanode
Vous pouvez vérifier que le DataNode est en cours d'exécution en consultant l'interface web à l'adresse http://localhost:9864.
Configuration du DataNode
La configuration du DataNode est stockée dans le fichier $HADOOP_HOME/etc/hadoop/hdfs-site.xml.
Voici un exemple de configuration :
<!-- hdfs-site.xml -->
<configuration>
<property>
<name>dfs.data.dir</name>
<value>/path/to/datanode/data</value>
</property>
</configuration>
Cette configuration définit l'emplacement du répertoire de données du DataNode.
Surveillance du cluster Hadoop
Vous pouvez surveiller le cluster Hadoop à l'aide des interfaces web fournies par le NameNode et le DataNode :
- Interface web du NameNode :
http://localhost:9870 - Interface web du DataNode :
http://localhost:9864
Ces interfaces fournissent des informations sur l'état du cluster, les tâches en cours d'exécution et l'utilisation des ressources.
Félicitations ! Vous avez maintenant lancé avec succès les services Hadoop NameNode et DataNode. Grâce à ces connaissances, vous pouvez commencer à développer et exécuter vos applications basées sur Hadoop.
Résumé
Maîtriser le démarrage des services Hadoop NameNode et DataNode est une étape cruciale pour la mise en place d'un environnement de traitement de gros données solide. Dans ce tutoriel, nous avons abordé les concepts fondamentaux de Hadoop et fourni des instructions étape par étape sur la manière de lancer ces services essentiels. Grâce à ces connaissances, vous pouvez désormais déployer et gérer avec confiance votre cluster Hadoop pour répondre aux besoins croissants en données de votre organisation.



