Je configure Hadoop dans Windows 7 à partir du tutoriel Il met en place un seul Node Cluster. Lors de l'exécution hdfs namenode -format
pour formater le namenode, il lance une exception comme: Et quand start-all.cmd
le windows namenode auto forcé alors je peux ouvrir l'interface graphique du namenode dans l'adresse - http: // localhost: 5007 .
16/01/19 15:18:58 WARN namenode.FSEditLog: No class configured for C, dfs.namenode.edits.journal-plugin.C is empty
16/01/19 15:18:58 ERROR namenode.NameNode: Failed to start namenode. Java.lang.IllegalArgumentException: No class configured for C at org.Apache.hadoop.hdfs.server.namenode.FSEditLog.getJournalClass(FSEditLog.Java:1615) at org.Apache.hadoop.hdfs.server.namenode.FSEditLog.createJournal(FSEditLog.Java:1629) at org.Apache.hadoop.hdfs.server.namenode.FSEditLog.initJournals(FSEditLog.Java:282) at org.Apache.hadoop.hdfs.server.namenode.FSEditLog.initJournalsForWrite(FSEditLog.Java:247) at org.Apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.Java:985) at org.Apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.Java:1429) at org.Apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.Java:1554) 16/01/19 15:18:58 INFO util.ExitUtil: Exiting with status 1 16/01/19 15:18:58 INFO namenode.NameNode: SHUTDOWN_MSG: /************************************************************
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>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>C:/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>C:/hadoop/data/datanode</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml
<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>
</configuration>
Modifiez vos propriétés suivantes de:
<property>
<name>dfs.namenode.name.dir</name>
<value>C:/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>C:/hadoop/data/datanode</value>
</property>
À:
<property>
<name>dfs.namenode.name.dir</name>
<value>/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/hadoop/data/datanode</value>
</property>
Pour Windows, les répertoires doivent être similaires à ce format /c:/path/to/dir
ou file:///D:/path/to/dir
:
J'ai essayé d'utiliser "/ hadoop/data/namenode" qui empêche le démarrage de namenode en raison de la non existence du répertoire de namenode spécifié. dfs, il va résoudre les chemins par rapport au lecteur sur lequel réside la source hadoop.
J'ai changé pour utiliser ce qui suit et cela a bien fonctionné:
<property>
<name>dfs.namenode.name.dir</name>
<value>/d:/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/d:/hadoop/data/datanode</value>
</property>
Astuce: N'oubliez pas la barre oblique du préfixe avant le nom du lecteur /d:/