2 votes

Hadoop : processus datanode en cours d'exécution mais ne fonctionnant pas ?

Nous avons essayé d'installer un cluster Hadoop ces derniers jours. Parfois avec succès, mais la plupart du temps sans succès. Je fais la configuration selon le document officiel et quelques blogs de qualité.

Le problème que je rencontre est le suivant : Tous les processus (y compris namenode, datanode, nodemanager, resourcemanager) peuvent être vus par la commande : jps

Mais les esclaves ne travaillent pas. Je ne les vois pas dans l'interface web master:8088 ou master:50070.

Quelqu'un a dit que c'était dû à la répétition du format du noeud de nom et au conflit d'identification. Je pense que ce n'est pas mon problème puisque les datanodes ne fonctionnent pas depuis le début et que le dossier des datanodes est toujours vide.

Y a-t-il d'autres causes possibles à ce phénomène ? Je souffre vraiment de la mise en place du cluster.

Détail :

Version Hadoop : 3.0.0-alpha2

La sortie de hdfs dfsadmin -report est :

Configured Capacity: 492017770496 (458.23 GB)
Present Capacity: 461047037952 (429.38 GB)
DFS Remaining: 460770820096 (429.13 GB)
DFS Used: 276217856 (263.42 MB)
DFS Used%: 0.06%
Under replicated blocks: 10069
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0
Pending deletion blocks: 0

-------------------------------------------------
Live datanodes (1):

Name: 127.0.0.1:9866 (localhost)
Hostname: sr145.local.lan
Decommission Status : Normal
Configured Capacity: 492017770496 (458.23 GB)
DFS Used: 276217856 (263.42 MB)
Non DFS Used: 5954019328 (5.55 GB)
DFS Remaining: 460770820096 (429.13 GB)
DFS Used%: 0.06%
DFS Remaining%: 93.65%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Sun Jan 02 02:52:57 CST 2000

**Le seul nœud de données actif est le même que le nœud maître. Tous les autres nœuds esclaves ne sont pas actifs.

Détail de la configuration : 1,hdfs-site.xml :

<configuration>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>sr145:9001</value>
    </property>
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/opt/hadoop/hdfs/namenode</value>
    </property>

    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/opt/hadoop/hdfs/datanode</value>
    </property>
</configuration>

2,core-site.xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/opt/hadoop/tmp</value>
        <description>Abasefor other temporary directories.</description>
    </property>

</configuration>

3,yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <property>
                <name>yarn.manager.aux-services.mapreduce.shuffle.class</name>
                <value>org.apache.hadoop.mapred.ShuffleHandler</value>
        </property>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>sr145</value>
        </property>
        <property>
           <name>yarn.resourcemanager.address</name>
           <value>sr145:8032</value>
        </property>
        <property>
           <name>yarn.resourcemanager.scheduler.address</name>
           <value>sr145:8030</value>
        </property>
        <property>
           <name>yarn.resourcemanager.resource-tracker.address</name>
           <value>sr145:8035</value>
        </property>
        <property>
           <name>yarn.resourcemanager.admin.address</name>
           <value>sr145:8033</value>
        </property>
        <property>
           <name>yarn.resourcemanager.webapp.address</name>
           <value>sr145:8088</value>
        </property>
</configuration>

La configuration de tous les nœuds est presque la même, elle diffère seulement dans la configuration hdfs-site.xml natenode ou datanode. Le site workers y slaves Les fichiers de $HADOOP_HOME/etc/hadoop sont également modifiés. Aucun fichier n'est déplacé par rapport à l'état brut.

1voto

franklinsijo Points 9862

Le seul nœud de données vivant est le même que le nœud maître.

Seulement que datanode est conscient que namenode est lié à localhost tous les autres noeuds de données essaient de se connecter avec sr145 .

La valeur de l'hôte définie dans fs.defaultFS est l'endroit où le démon Namenode sera lancé.
Le régler sur localhost dans le noeud maître a permis au processus de se lier à l'IP de bouclage du noeud. Modifiez la valeur pour avoir le nom d'hôte ou l'adresse IP réelle, dans ce cas, ce sera

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

Cette propriété doit être identique dans tous les nœuds.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X