我在Windows 7 from tutorial中配置Hadoop
它设置单节点群集。
当运行hdfs namenode -format
格式化namenode时,它会抛出异常,如:
当start-all.cmd
windows namenode auto forced时,我可以在地址中打开namenode GUI - http://localhost:50070。
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: /************************************************************
核心-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>
纱-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>
答案 0 :(得分:37)
从以下位置更改以下属性:
config.For<IJITService>()
.Use<JITService>()
.Ctor<string>("baseAdress")
.Is(_JITService);
要:
<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>
答案 1 :(得分:7)
对于Windows,目录应类似于此格式/c:/path/to/dir
或file:///D:/path/to/dir
:
我尝试过使用“/ hadoop / data / namenode”来防止由于没有指定的namenode目录而启动namenode ..我发现在使用“/ hadoop / data / namenode”时它是在c盘中存储文件但是当启动dfs时,它将解决相对于hadoop源所在的驱动器的路径。
我已切换到使用以下内容并且工作正常:
<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>
提示:不要忘记驱动器名称/d:/
答案 2 :(得分:0)
我能够通过在hadoop根目录位置添加namenode和datanode并使用
来解决此问题android:layout_height="wrap_content"
不要使用反斜杠,而应使用正斜杠
<property>
<name>dfs.namenode.name.dir</name>
<value>F:\hadoop-2.7.2\data\namenode</value>
</property>
或者将其设置为有效的URI
F:/hadoop-2.7.2/data/namenode