Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
重新启动hadoop后,Namenode停止工作_Hadoop - Fatal编程技术网

重新启动hadoop后,Namenode停止工作

重新启动hadoop后,Namenode停止工作,hadoop,Hadoop,我有一个安装了Hadoop的服务器 我想更改一些配置(关于mapreduce.map.output.compress);因此,我更改了配置文件,并重新启动了Hadoop,其中包括: stop-all.sh start-all.sh 之后,我无法再次使用它,因为它处于安全模式: 报告的块仅为0,但阈值为0.9990,总块数为11313。安全模式将自动关闭 请注意,报告的块数为0,并且根本没有增加 因此,我强迫它离开安全模式: bin/hadoop dfsadmin -safemode leave

我有一个安装了Hadoop的服务器

我想更改一些配置(关于
mapreduce.map.output.compress
);因此,我更改了配置文件,并重新启动了Hadoop,其中包括:

stop-all.sh
start-all.sh
之后,我无法再次使用它,因为它处于安全模式:

报告的块仅为0,但阈值为0.9990,总块数为11313。安全模式将自动关闭

请注意,报告的块数为0,并且根本没有增加

因此,我强迫它离开安全模式:

bin/hadoop dfsadmin -safemode leave
现在,我得到如下错误:

2014-03-09 18:16:40,586 [Thread-1] ERROR org.apache.hadoop.hdfs.DFSClient - Failed to close file /tmp/temp-39739076/tmp2073328134/GQL.jar
org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /tmp/temp-39739076/tmp2073328134/GQL.jar could only be replicated to 0 nodes, instead of 1
如果有帮助,我的
hdfs site.xml
是:

<configuration>
<property>
        <name>dfs.replication</name>
        <value>1</value>
</property>
<property>
    <name>dfs.name.dir</name>
    <value>/home/hduser/hadoop/name/data</value>
</property>


</configuration>

dfs.replication
1.
dfs.name.dir
/home/hduser/hadoop/name/data

我已经多次遇到这个问题。每当出现错误,说明只能将
x复制到0个节点,而不是1个节点时,应通过以下步骤解决此问题:

Stop all Hadoop services with: stop-all.sh
Delete the dfs/name and dfs/data directories
Format the NameNode with: hadoop namenode -format
Start Hadoop again with: start-all.sh

对不起,事实上我就是这么做的。我粘贴了一个错误的命令。对不起,更新了我的答案。您实际上需要格式化您的NameNode。好的,非常感谢。格式化HDFS会丢失所有hadoop文件吗?如果是这样,有没有一种简单的方法来避免它?是的,你会的。您可以使用
hadoop-dfs-copyToLocal~/*~/localDir
将HDFS的内容复制到本地目录,然后使用
hadoop-dfs-copyFromLocal~/localDir~
格式将其移回。不,不幸的是,它不起作用,因为我无法从HDFS复制任何文件。我总是得到:
copyToLocal:null