Déployer un déploiement Hadoop 3.0 à hautes performances en cluster et pseudo-distribué

Annuaire

 Présentation:

1. Construction de l'environnement

 (1) Préparez l'expérience et installez une machine virtuelle CentOS7 sur VMware. L'IP et le nom de la machine virtuelle sont les suivants (cette étape peut être ignorée après l'installation)

 (2) Configurez le fichier d'hôtes sur la machine pour réaliser la correspondance entre le nom de domaine et l'adresse IP, comme suit: (configuré sur le serveur DNS dans le système de production réel) 

(3) Créez et exécutez le compte utilisateur hadoop et le répertoire Hadoop.

(4) Installer l'environnement Java JDK

(4) Désactivez le pare-feu et ne le redémarrez pas. Si vous souhaitez le démarrer, vous pouvez utiliser les frais pour activer:

(5) Configurer l'accès sans mot de passe (une seule machine doit également définir un accès sans mot de passe)

Deuxièmement, l'installation et la configuration de Hadoop

(1) Téléchargez hadoop-3.0.0.tar.gz sur le répertoire server / home / hadoop /

(2) Créer un répertoire de travail lié à hadoop

(3) Configurer Hadoop: 7 fichiers de configuration doivent être modifiés.

1) Le fichier de configuration hadoop-env.sh spécifie l'environnement d'exécution java de hadoop

2) Fichier de configuration yarn-env.sh, enregistrez l'environnement d'exécution du framework Yarn (seule vue, aucune modification requise)

3) Fichier de configuration core-site.xml, spécifiez le chemin d'accès à l'interface web hadoop

4) Fichier de configuration hdfs-site.xml

5) Fichier de configuration mapred-site.xml

6) Configurer le nœud yarn-site.xml

7) Modifiez l'hôte du nœud de datanode et modifiez le fichier de travail

3. Démarrez Hadoop sur hadoop163

1) L'initialisation du hadoop namenode ne doit être initialisée que la première fois, après quoi elle n'est pas nécessaire

2) Démarrez hdfs: ./sbin/start-dfs.sh, qui démarre le stockage distribué HDFS

3) Démarrer le fil: ./sbin/start-yarn.sh C'est-à-dire, commencer le calcul distribué

4) Démarrez le service de stockage et le service maître de gestion des ressources sur le nœud maître.

5) Démarrer: service d'historique des travaux, vérifier l'état de fonctionnement de mapreduce

Quatre, voir sur le web


 

 Présentation:

Hadoop3.0 peut réaliser un déploiement de cluster distribué. Mais parfois limité par des conditions expérimentales, un déploiement pseudo-distribué peut être effectué sur un serveur. Dans cette expérience, un déploiement pseudo-distribué est effectué sur une machine, puis un véritable déploiement de cluster distribué est effectué sur la base du déploiement pseudo-distribué.

 

1. Construction de l'environnement

 (1) Préparez l'expérience et installez une machine virtuelle CentOS7 sur VMware. L'IP et le nom de la machine virtuelle sont les suivants ( cette étape peut être ignorée après l'installation )

        Nom d'hôte Adresse IP Rôle

hadoop163.cn 192.168.150.163 NameNode / DataNode

 

 (2) Configurez le fichier d'hôtes sur la machine pour réaliser la correspondance entre le nom de domaine et l'adresse IP, comme suit: ( configuré sur le serveur DNS dans le système de production réel ) 

  Vérifiez votre IP: ifconfig 

# vim  /etc/hosts

 

Test, vous pouvez cingler:

 

(3) Créez et exécutez le compte utilisateur hadoop et le répertoire Hadoop.

Créez un compte hadoop:

#为了保障,在其它服务器上创建的hadoop用户ID保持一致,创建时,尽量把UID调大
[root@hadoop163 ~]# useradd -u 8000  hadoop  

#设置用户密码
[root@ hadoop163 ~]# echo 123456 | passwd --stdin hadoop

Remarque: Lors de la création d'un hadoop utilisateur, vous ne pouvez pas utiliser le paramètre -s / sbin / nologin, car plus tard nous devrons su-hadoop pour changer d'utilisateur

 

 

(4) Installer l'environnement Java JDK

Utilisez FileZilla pour télécharger le package JDK dans le dossier racine et le package hadoop dans le dossier hadoop , et affichez-le.

Pour télécharger FileZilla, veuillez vérifier:

Pour utiliser FileZilla, veuillez vérifier:

Impossible de se connecter à la machine virtuelle, veuillez vérifier:

Pour télécharger deux packages, veuillez vérifier:

Une fois le téléchargement réussi, entrez dans le répertoire racine pour afficher le fichier JDK:

Accédez au répertoire hadoop pour afficher les packages compressés utilisés ultérieurement:

Installez jdk:

 rpm -ivh jdk-8u161-linux-x64.rpm

 

Vérifiez l'emplacement d'installation : [Vous pouvez connaître le répertoire d'installation de jdk dans / usr / java en affichant les informations de jdk] (notez l'emplacement et utilisez-le plus tard)

rpm -pql  /root/jdk-8u161-linux-x64.rpm  

 (Pas seulement celui montré sur l'image)

Vérifiez la version JDK : trouvez que la version n'est pas la version que vous venez d'installer, puis configurez la variable d'environnement java pour faire de la version la version que vous venez d'installer

java -version

 

 

Configurez les variables d'environnement JAVA:

vim /etc/profile   

#在文件的最后添加以下内容:
#----------------------------------------------------------------------------------------

export JAVA_HOME=/usr/java/jdk1.8.0_161

export JAVA_BIN=/usr/java/jdk1.8.0_161/bin

export PATH=${JAVA_HOME}/bin:$PATH

export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar

#----------------------------------------------------------------------------------------

#使配置文件生效
source /etc/profile 

 

 

Vérifiez à nouveau la version java pour vérifier si l'installation a réussi:

Si la version correspondante de l'installation apparaît, l'environnement d'exécution java a été installé avec succès.

Remarque: Seule la version de jdk est mise à niveau ici, car jdk est déjà installé sur le système que j'ai installé.

 

(4) Désactivez le pare-feu et ne le redémarrez pas. Si vous souhaitez le démarrer, vous pouvez utiliser les frais pour activer:

[root@ hadoop163 ~]# systemctl stop firewalld.service

[root@ hadoop163 ~]# systemctl disable firewalld.service

(5) Configurer l'accès sans mot de passe (une seule machine doit également définir un accès sans mot de passe)

   Tout d'abord, passez au compte hadoop:

# 生成秘钥
[Hadoop@hadoop163 ~]$ ssh-keygen 


# 分发秘钥
[Hadoop@hadoop163 ~]$ ssh-copy-id  192.168.150.163  

Générez la clé (appuyez toujours sur Entrée jusqu'à ce qu'elle soit terminée):

 

Clé de distribution :

Ssh-copy-id doit suivre sa propre adresse IP ( peut être consultée via ifconfig ), vous permet de choisir oui lorsque vous continuez, et lorsque vous entrez le mot de passe, entrez le mot de passe défini lors de la création de l'utilisateur.

 

Deuxièmement, l'installation et la configuration de Hadoop

 

(1) Téléchargez hdoop-3.0.0.tar.gz sur le répertoire server / home / hadoop /

Répertoire d'installation de Hadoop: /home/hadoop/hadoop-3.0.0

Remarque: les étapes suivantes utilisent le fonctionnement du compte Hadoop .

[root@hadoop163 ~]# su - hadoop     

#只要解压文件就可以,不需要编译安装
[hadoop@hadoop163 ~]$ tar zxvf hadoop-3.0.0.tar.gz   

 Après la décompression, il y aura un répertoire:

(2) Créer un répertoire de travail lié à hadoop

Créez trois répertoires de travail sous hadoop:

nom 、 données 、 tmp

[hadoop@hadoop163 ~]$ mkdir -p  /home/hadoop/dfs/name  

[hadoop@hadoop163 ~]$ mkdir -p  /home/hadoop/dfs/data

[hadoop@hadoop163 ~]$ mkdir -p  /home/hadoop/tmp

[hadoop@hadoop163 ~]$ ls

 

 

(3) Configurer Hadoop: 7 fichiers de configuration doivent être modifiés.

Emplacement du fichier: /home/hadoop/hadoop-3.0.0/etc/hadoop/

Nom du sujet de texte: hadoop-env.sh, yarn-evn.sh, workers, core-site.xml, hdfs-site.xml, mapred-site.xml, yarn-site.xml

 

1) Le fichier de configuration hadoop-env.sh spécifie l'environnement d'exécution java de hadoop

Ce fichier est la configuration de l'environnement de base dans lequel Hadoop s'exécute et l'emplacement de la machine virtuelle java qui doit être modifiée.

[hadoop@ hadoop163 hadoop]$ vim /home/hadoop/hadoop-3.0.0/etc/hadoop/hadoop-env.sh

Laissez le fichier afficher le nombre de lignes pour un affichage facile. La position à modifier est la ligne 54: Remarque: Spécifiez la variable d'environnement d'exécution Java

2) Fichier de configuration yarn-env.sh, enregistrez l'environnement d'exécution du framework Yarn ( seule vue, aucune modification requise )

Ce fichier est la configuration de l'environnement d'exécution du framework Yarn, et il doit également modifier l'emplacement de la machine virtuelle Java.

yarn: le nouveau framework MapReduce de Hadoop Yarn est le nouveau principe de framework de réduction de carte (Yarn) de Hadoop depuis la version 0.23.0.

[hadoop@hadoop163 hadoop-3.0.0]$ vim /home/hadoop/hadoop-3.0.0/etc/hadoop/yarn-env.sh 

Afficher les règles de priorité:

3) Fichier de configuration core-site.xml, spécifiez le chemin d'accès à l'interface web hadoop

Il s'agit du fichier de configuration principal de hadoop. Ces deux propriétés doivent être configurées ici. Fs.default.name configure la dénomination du système HDFS de hadoop. L'emplacement est le port 9000 de l'hôte;

hadoop.tmp.dir configure l'emplacement racine du répertoire tmp de hadoop. Un emplacement qui n'est pas dans le système de fichiers est utilisé ici, alors utilisez d'abord la commande mkdir pour en créer un nouveau (nous l'avons créé plus tôt).

[hadoop@ hadoop163 hadoop]$ vim /home/hadoop/hadoop-3.0.0/etc/hadoop/core-site.xml

Entrez le fichier et ajoutez le code entre <configuration> </ configuration>:

<property>
      <name>fs.defaultFS</name>
          <value>hdfs://hadoop163.cn:9000</value>
 </property>

 <property>
     <name>io.file.buffer.size</name>
         <value>4096</value>
 </property>

 <property>
     <name>hadoop.tmp.dir</name>
         <value>file:/home/hadoop/tmp</value>
             <description>Abase for other temporary directories.</description>
 </property>

Comme indiqué:

 

Description: la valeur par défaut de io.file.buffer.size est 4096. Il s'agit de la taille de la mémoire tampon du fichier de séquence de lecture et d'écriture, ce qui peut réduire le nombre d'E / S. Dans un grand cluster Hadoop, la recommandation peut être définie sur 65536

 

4) Fichier de configuration hdfs-site.xml

Il s'agit du fichier de configuration hdfs, dfs.http.address configure l'emplacement d'accès http de hdfs;

dfs.replication configure le nombre de copies de blocs de fichiers, qui n'est généralement pas supérieur au nombre d'esclaves.

[root@ hadoop163 hadoop]# vim /home/hadoop/hadoop-3.0.0/etc/hadoop/hdfs-site.xml

Insérez du contenu entre <configuration> et </ configuration>:

<property>
      <name>dfs.namenode.secondary.http-address</name>
      <value>hadoop163.cn:9001</value> 
  </property>

  <property>
      <name>dfs.namenode.name.dir</name>
      <value>file:/home/hadoop/dfs/name</value>
  </property>

 <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/home/hadoop/dfs/data</value>
 </property>

 <property>
    <name>dfs.replication</name>
    <value>1</value>   
 </property>

 <property>
    <name>dfs.webhdfs.enabled</name>
        <value>true</value>
 </property>

<property>
    <name>dfs.http.address</name>
    <value> hadoop163.cn:50070</value>
 </property>

 

5) Fichier de configuration mapred-site.xml

Il s'agit de la configuration de la tâche mapreduce. Étant donné que hadoop2.x utilise le framework yarn, pour réaliser un déploiement distribué, il doit être configuré en tant que fil sous la propriété mapreduce.framework.name. mapred.map.tasks et mapred.reduce.tasks sont le nombre de tâches de mappage et de réduction, respectivement, et spécifient: Hadoop history server historyserver

Hadoop est fourni avec un serveur d'historique. Vous pouvez utiliser le serveur d'historique pour afficher les enregistrements de travaux Mapreduce terminés, tels que le nombre de mappes utilisées, le nombre de réductions utilisées, l'heure de soumission du travail, l'heure de début du travail, l'heure de fin du travail et d'autres informations. Par défaut, le serveur d'historique Hadoop n'est pas démarré.

[hadoop@hadoop hadoop-3.0.0]$ vim /home/hadoop/hadoop-3.0.0/etc/hadoop/mapred-site.xml

Insérez du contenu entre <configuration> et </ configuration>:

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

 <property>
     <name>mapreduce.jobhistory.address</name>
     <value>0.0.0.0:10020</value>
 </property>

 <property>
     <name>mapreduce.jobhistory.webapp.address</name>
     <value>0.0.0.0:19888</value>
 </property>

6) Configurer le nœud yarn-site.xml

Ce fichier est la configuration du framework de fil, principalement la position de départ de certaines tâches

[hadoop@hadoop163 hadoop]$ vim /home/hadoop/hadoop-3.0.0/etc/hadoop/yarn-site.xml

Insérez du contenu entre <configuration> et </ configuration>:

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

 <property>
     <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value>
 </property>

 <property>
    <name>yarn.resourcemanager.address</name>
    <value>hadoop163.cn:8032</value>
 </property>

 <property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>hadoop163.cn:8030</value>
 </property>

 <property>
     <name>yarn.resourcemanager.resource-tracker.address</name>
     <value>hadoop163.cn:8031</value>
 </property>

 <property>
    <name>yarn.resourcemanager.admin.address</name>
    <value>hadoop163.cn:8033</value>
 </property>

 <property>
    <name>yarn.resourcemanager.webapp.address</name>
    <value>hadoop163.cn:8088</value>
 </property>

<property>
    <name>yarn.application.classpath</name>
    <value>/home/hadoop/hadoop-3.0.0/etc/hadoop:/home/hadoop/hadoop-3.0.0/share/hadoop/common/lib/*:/home/hadoop/hadoop-3.0.0/share/hadoop/common/*:/home/hadoop/hadoop-3.0.0/share/hadoop/hdfs:/home/hadoop/hadoop-3.0.0/share/hadoop/hdfs/lib/*:/home/hadoop/hadoop-3.0.0/share/hadoop/hdfs/*:/home/hadoop/hadoop-3.0.0/share/hadoop/mapreduce/*:/home/hadoop/hadoop-3.0.0/share/hadoop/yarn:/home/hadoop/hadoop-3.0.0/share/hadoop/yarn/lib/*:/home/hadoop/hadoop-3.0.0/share/hadoop/yarn/* </value>
</property>

7) Modifiez l'hôte du nœud de datanode et modifiez le fichier de travail

[hadoop@hadoop163 hadoop]$ vim /home/hadoop/hadoop-3.0.0/etc/hadoop/workers

Modifié en, car il s'agit d'une pseudo distribution, alors ajoutez la machine elle-même

 

3. Démarrez Hadoop sur hadoop163

Les utilisateurs Hadoop à exploiter:

1) L'initialisation du hadoop namenode ne doit être initialisée que la première fois, après quoi elle n'est pas nécessaire

[hadoop@hadoop163 hadoop-3.0.0]$ /home/hadoop/hadoop-3.0.0/bin/hdfs namenode -format

 

 

Voyez s'il y a un fichier généré automatiquement, s'il y en a, cela signifie le succès:

 

2) Démarrez hdfs: ./sbin/start-dfs.sh, qui démarre le stockage distribué HDFS

Le chemin du fichier de démarrage est: /home/hadoop/hadoop-3.0.0/sbin/

[root@hadoop163 ~]# /home/hadoop/hadoop-3.0.0/sbin/start-dfs.sh

3) Démarrer le fil: ./sbin/start-yarn.sh C'est-à-dire, commencer le calcul distribué

[hadoop@ hadoop163 hadoop-3.0.0]# /home/hadoop/hadoop-3.0.0/sbin/start-yarn.sh

Remarque: start-dfs.sh et start-yarn.sh peuvent être remplacés par start-all.sh.

开启:
[hadoop@hadoop163 ~]$ /home/hadoop/hadoop-3.0.0/sbin/start-all.sh

关闭:

[hadoop@hadoop163 ~]$ /home/hadoop/hadoop-3.0.0/sbin/stop-all.sh

 

A commencé cinq et réussi.

Afficher l'état avec jps:

4) Démarrez le service de stockage et le service maître de gestion des ressources sur le nœud maître.

Utilisez la commande: (Après avoir démarré avec start-all.sh, ces deux services ont été démarrés automatiquement, pas besoin de s'exécuter à nouveau)

#启动从存储服务
[hadoop@hadoop163 ~]$ /home/hadoop/hadoop-3.0.0/sbin/hadoop-daemon.sh start datanode                                

 #启动资源管理从服务
[hadoop@hadoop163 ~]$ /home/hadoop/hadoop-3.0.0/sbin/yarn-daemon.sh start nodemanager                           

5) Démarrer: service d'historique des travaux, vérifier l'état de fonctionnement de mapreduce

[hadoop@hadoop163 hadoop-3.0.0]# /home/hadoop/hadoop-3.0.0/sbin/mr-jobhistory-daemon.sh start historyserver

 

Quatre, voir sur le web

Entrez dans la barre de titre:

http://hadoop163.cn:8088

Peut être consulté, cela signifie qu'il a réussi.

 

Publié 6 articles originaux · gagné 3 · vues 1745

Je suppose que tu aimes

Origine blog.csdn.net/qq_41567921/article/details/105437960
conseillé
Classement