Apache Hadoop ou également connu sous le nom de Hadoop est un framework open source basé sur Java qui permet le traitement distribué de grands ensembles de données sur plusieurs ordinateurs. Il est utilisé pour stocker et traiter de grands ensembles de données. Il permet de regrouper plusieurs ordinateurs pour stocker et traiter les données plus rapidement au lieu d'utiliser un seul gros ordinateur. Hadoop se compose de quatre modules principaux :
– HDFS (Hadoop Distributed File System)
– YARN (Yet Another Resource Negotiator)
– MapReduce
– Hadoop Common
Dans ce tutoriel, nous allons vous expliquer comment installer Hadoop sur Debian 11.
Prérequis
- Debian 11
- Accès racine SSH ou utilisateur système normal avec privilèges sudo
Étape 1. Connectez-vous au serveur
Tout d'abord, connectez-vous à votre serveur Debian 11 via SSH en tant qu'utilisateur root :
ssh root@IP_Address -p Port_number
Remplacez "root" par un utilisateur disposant des privilèges sudo si nécessaire. De plus, remplacez "IP_Address" et "Port_Number" par l'adresse IP et le numéro de port SSH respectifs de votre serveur.
Vous pouvez vérifier si vous avez la bonne version de Debian installée sur votre serveur avec la commande suivante :
$ lsb_release -a
Vous devriez obtenir ce résultat :
Aucun module LSB n'est disponible. ID distributeur :DebianDescription :Debian GNU/Linux 11 (bullseye)Version :11Codename :bullseye
Avant de commencer, vous devez vous assurer que tous les packages du système d'exploitation Ubuntu installés sur le serveur sont à jour.
Vous pouvez le faire en exécutant les commandes suivantes :
$ sudo apt update -y$ sudo apt upgrade -y
Étape 2. Créer un utilisateur système et générer une clé SSH
Ce n'est pas une bonne idée d'exécuter Hadoop en tant que root, donc pour des raisons de sécurité, nous allons créer un nouvel utilisateur système :
$ sudo useradd -r hadoop -m -d /opt/hadoop --shell /bin/bash
Un utilisateur "hadoop" a été créé, connectons-nous en tant qu'utilisateur.
$ su - hadoop
Hadoop nécessite un accès ssh pour gérer ses nœuds, qu'ils soient distants ou locaux. Pour accéder aux nœuds sans mot de passe, nous pouvons générer une clé SSH et copier la clé publique dans le fichier ~/.ssh/authorized_keys.
$ ssh-keygen -t rsa
Vous obtiendrez une sortie comme celle-ci.
hadoop@debian11 :~$ ssh-keygen -t rsaGénération d'une paire de clés rsa publique/privée. Entrez le fichier dans lequel enregistrer la clé (/opt/hadoop/.ssh/id_rsa) :Répertoire créé '/opt/hadoop/ .ssh'.Enter passphrase (empty for no passphrase):Entrez à nouveau la même phrase secrète:Votre identification a été enregistrée dans /opt/hadoop/.ssh/id_rsaVotre clé publique a été enregistrée dans /opt/hadoop/.ssh/id_rsa.pubThe l'empreinte digitale de la clé est :SHA256:QYHlb6Is9n05OtnR+6i71t4MZeN9gVqGVCoa28aiUXg [email protected]'image aléatoire de la clé est :+---[RSA 3072]----+| o+. . || ooo || . Eo. o || o *oo . . || . +S+oo ++. || .o.oo. =+ o.|| o.o o =... o|| . o .o * o=.|| . o=+*o.+ |+----[SHA256]-----+
Ensuite, ajoutons la clé publique de hadoop au fichier de clé autorisé, pour permettre à l'utilisateur "hadoop" de se connecter au système sans mot de passe et d'utiliser uniquement la clé SSH.
$ cat ~/.ssh/id_rsa.pub> ~/.ssh/authorized_keys
Connectez-vous au système via SSH maintenant.
$ ssh localhost
Vous devriez maintenant pouvoir vous connecter à SSH sans mot de passe.
Quitter l'utilisateur "hadoop" puis passer à l'étape suivante.
$ quitter
Étape 3. Installer Java
Hadoop est écrit en Java, nous avons donc besoin de Java dans notre système pour pouvoir exécuter Hadoop. Exécutons cette commande ci-dessous pour installer le JDK pour Java par défaut à partir du référentiel.
$ sudo apt install default-jdk default-jre -y
Java devrait être installé maintenant, vous pouvez le vérifier en invoquant cette commande :
$ sudo java -version
Étape 4. Téléchargez et installez Hadoop
Au moment de la rédaction de cet article, la dernière version stable de Hadoop est la version 3.3.2. Vous pouvez vous rendre sur leur page de téléchargement à l'adresse https://hadoop.apache.org/releases.html pour vérifier la version la plus récente, le cas échéant.
Connectez-vous en tant qu'utilisateur "hadoop" pour le télécharger et l'extraire, nous n'avons donc pas besoin de modifier l'autorisation du fichier et du répertoire.
$ su - hadoop$ wget https://dlcdn.apache.org/hadoop/common/hadoop-3.2.3/hadoop-3.2.3.tar.gz -O hadoop-3.2.3.tar.gz$ tar -xzvf hadoop-3.2.3.tar.gz -C /opt/hadoop --strip-components=1
Avant de passer aux étapes suivantes, assurez-vous que JAVA_HOME pointe vers le bon répertoire, vous pouvez le vérifier en listant /usr/lib/jvm
$ ls /var/lib/jvm
Maintenant, éditons /opt/hadoop/.bashrc
$ nano /opt/hadoop/.bashrc
Insérez les lignes suivantes dans le fichier.
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64export HADOOP_HOME=/opt/hadoopexport PATH=$PATH:$HADOOP_HOME/binexport PATH=$PATH:$HADOOP_HOME/sbinexport HADOOP_MAPRED_HOME=$HADOOP_HOMEexport HADOOP_COMMON_HOME=$HADOOP_HOMEexport HADOOP_HDFS_HOME=$HADOOP_HOMEexport YARN_HOME=$HADOOP_HOMEexport HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/nativeexport HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
Enregistrez le fichier et quittez, puis exécutez la commande ci-dessous pour activer les variables d'environnement nouvellement ajoutées.
$ source ~/.bashrc
Étape 5. Configurer Hadoop
Hadoop peut être configuré pour s'exécuter dans un cluster à nœud unique ou à plusieurs nœuds. Dans ce didacticiel, nous allons vous montrer comment configurer un cluster Hadoop à nœud unique ou un mode pseudo-distribué. Il y a quelques fichiers que nous devons modifier dans cette étape, maintenant éditons d'abord le fichier d'environnement Hadoop.
$ nano /opt/hadoop/etc/hadoop/hadoop-env.sh
Ajoutez la ligne suivante au fichier.
exporter JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
Modifiez le fichier core-site.xml.
$ nano /opt/hadoop/etc/hadoop/core-site.xml
Ajoutez ces lignes à la balise de configuration.
fs.default.name hdfs://localhost:9000
Modifier le fichier hdfs-site.xml
$ nano /opt/hadoop/etc/hadoop/hdfs-site.xml
Ajoutez ces lignes à la balise de configuration.
dfs.replication 1 dfs.namenode.name.dir fichier :/opt/hadoop/hadoop_tmp/hdfs/namenode dfs.datanode.data.dir fichier :/opt/hadoop/hadoop_tmp/hdfs/datanode
Enregistrez le fichier en appuyant sur CTRL + O et quittez avec CTRL + X
Modifier le fichier Yarn-site.xml
$ nano /opt/hadoop/etc/hadoop/yarn-site.xml
Ajoutez ces lignes à la balise de configuration.
yarn.nodemanager.aux-services mapreduce_shuffle yarn.nodemanager.aux-services.mapreduce.shuffle. classe org.apache.hadoop.mapred.ShuffleHandler
Le dernier fichier à modifier est le mapred-site.xml.
$ nano /opt/hadoop/etc/hadoop/mapred-site.xml
Ajoutez ces lignes à la balise de configuration.
mapreduce.framework.name fil
N'oubliez pas d'enregistrer le fichier puis de quitter l'éditeur nano.
Les fichiers ci-dessus ont été modifiés, nous devons créer des répertoires, exécutez cette commande :
$ mkdir -p /opt/hadoop/hadoop_tmp/hdfs/{namenode,datanode}Avant de démarrer les services Hadoop pour la première fois, nous devons formater le namenode.
$ hdfs namenode -formatDémarrer namenode et datanode
$ start-dfs.shSi vous voyez ce message d'avertissement :
Impossible de charger la bibliothèque native-hadoop pour votre plate-forme... en utilisant les classes Java intégrées, le cas échéantCela signifie que le système d'exploitation de votre serveur est en 64 bits, mais que la bibliothèque native Hadoop est en 32 bits. Ceci est normal et vous pouvez ignorer l'avertissement. Si vous n'êtes pas à l'aise avec cela, vous pouvez télécharger le fichier source Hadoop puis le compiler pour obtenir la bibliothèque partagée 64 bits.
Commençons maintenant les gestionnaires de ressources et de nœuds YARN.
$ start-yarn.shLe dernier, exécutez cette commande :
$ jpsVous obtiendrez une sortie comme celle-ci :
106129 SecondaryNameNode108050 Jps105877 NameNode106375 ResourceManager105960 DataNode106458 NodeManager
À présent. vous pouvez aller sur http://YOUR_SERVER_IP_ADDRESS:9870/ et voir le namenode, le datanode, etc.
Pour consulter le portail Web YARN, vous pouvez accéder à http://YOUR_SERVER_IP_ADDRESS:8088/
C'est ça. Vous avez installé et configuré avec succès Hadoop sur Debian 11 VPS.
Bien sûr, vous n'êtes pas obligé d'installer Hadoop sur Debian 11 si vous avez un serveur Debian géré avec nous. Vous pouvez simplement demander à notre équipe d'assistance d'installer Hadoop sur Debian 11 pour vous. Ils sont disponibles 24h/24 et 7j/7 et pourront vous aider dans l'installation.
PS. Si vous avez apprécié la lecture de cet article de blog sur l'installation de Hadoop sur Debian 11, n'hésitez pas à le partager sur les réseaux sociaux en utilisant les raccourcis ci-dessous, ou laissez simplement un commentaire dans la section des commentaires. Merci.