在Windows 10中首次运行Hadoop时datanode执行时出错

时间:2018-09-02 16:14:41

标签: windows hadoop datanode

我正在尝试在Windows 10计算机上运行Hadoop 3.1.1。我修改了所有文件:

  • hdfs-site.xml
  • mapred-site.xml
  • core-site.xml
  • yarn-site.xml

然后,我执行了以下命令:

C:\hadoop-3.1.1\bin> hdfs namenode -format

格式正确运行,所以我指示C:\hadoop-3.1.1\sbin执行以下命令:

C:\hadoop-3.1.1\sbin> start-dfs.cmd

命令提示符将打开2个新窗口:一个用于datanode,另一个用于namenode。

namenode窗口继续运行:

2018-09-02 21:37:06,232 INFO ipc.Server: IPC Server Responder: starting
2018-09-02 21:37:06,232 INFO ipc.Server: IPC Server listener on 9000: starting
2018-09-02 21:37:06,247 INFO namenode.NameNode: NameNode RPC up at: localhost/127.0.0.1:9000
2018-09-02 21:37:06,247 INFO namenode.FSNamesystem: Starting services required for active state
2018-09-02 21:37:06,247 INFO namenode.FSDirectory: Initializing quota with 4 thread(s)
2018-09-02 21:37:06,247 INFO namenode.FSDirectory: Quota initialization completed in 3 milliseconds
name space=1
storage space=0
storage types=RAM_DISK=0, SSD=0, DISK=0, ARCHIVE=0, PROVIDED=0
2018-09-02 21:37:06,279 INFO blockmanagement.CacheReplicationMonitor: Starting CacheReplicationMonitor with interval 30000 milliseconds

数据节点出现以下错误:

ERROR: datanode.DataNode: Exception in secureMain
org.apache.hadoop.util.DiskChecker$DiskErrorException: Too many failed volumes - current valid volumes: 0, volumes configured: 1, volumes failed: 1, volume failures tolerated: 0
at org.apache.hadoop.hdfs.server.datanode.checker.StorageLocationChecker.check(StorageLocationChecker.java:220)
at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:2762)
at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:2677)
at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:2719)
at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:2863)
at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:2887)
2018-09-02 21:37:04,250 INFO util.ExitUtil: Exiting with status 1: org.apache.hadoop.util.DiskChecker$DiskErrorException: Too many failed volumes - current valid volumes: 0, volumes configured: 1, volumes failed: 1, volume failures tolerated: 0
2018-09-02 21:37:04,250 INFO datanode.DataNode: SHUTDOWN_MSG:

然后,datanode关闭!我尝试了几种方法来克服此错误,但这是我第一次在Windows上安装Hadoop,不知道下一步该怎么做!

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,对我有用的是按如下方式编辑hdfs-site.xml:

 <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:///C:/Hadoop/hadoop-3.1.2/data/namenode</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>/C:/Hadoop/hadoop-3.1.2/data/datanode</value>
  </property>

答案 1 :(得分:0)

在删除hdfs-site.xml中datanode的文件系统引用后,我的工作正常了。我发现启用该软件可以创建和初始化自己的datanode,然后将其弹出到sbin中。之后,我可以毫无障碍地使用hdfs。以下是适用于Windows上Hadoop 3.1.3的内容:

<configuration>

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

<property> 
<name>dfs.namenode.name.dir</name> 
<value>file:///C:/Users/myusername/hadoop/hadoop-3.1.3/data/namenode</value>
</property> 

<property> 
<name>dfs.datanode.data.dir</name> 
<value>datanode</value>
</property> 

</configuration>

干杯, MV