NameNode没有使用start-all.sh开始

时间:2015-07-15 14:39:02

标签: java ubuntu hadoop hdfs hadoop2

我试图在我的机器上运行Hadoop作为单节点集群。我做了安装步骤,所以Hadoop已经在我的系统上了。

但是,当我运行start-all.sh之后,如果jps正在运行,我会检查NameNode,这就是我得到的结果:

20053 Jps
19944 NodeManager

我已尝试首先运行start-dfs.sh然后start-yarn.sh,但这不起作用。

我还尝试使用

格式化NameNode
hadoop namenode -format

但是我不能这样做,我得到了错误:

15/07/15 16:34:19 WARN namenode.NameNode: Encountered exception during format: 
java.io.IOException: Cannot remove current directory: /usr/local/hadoop_store/hdfs/namenode/current
    at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.clearDirectory(Storage.java:335)
    at org.apache.hadoop.hdfs.server.namenode.NNStorage.format(NNStorage.java:548)
    at org.apache.hadoop.hdfs.server.namenode.NNStorage.format(NNStorage.java:569)
    at org.apache.hadoop.hdfs.server.namenode.FSImage.format(FSImage.java:161)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:991)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1429)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1554)
15/07/15 16:34:19 ERROR namenode.NameNode: Failed to start namenode.
java.io.IOException: Cannot remove current directory: /usr/local/hadoop_store/hdfs/namenode/current
    at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.clearDirectory(Storage.java:335)
    at org.apache.hadoop.hdfs.server.namenode.NNStorage.format(NNStorage.java:548)
    at org.apache.hadoop.hdfs.server.namenode.NNStorage.format(NNStorage.java:569)
    at org.apache.hadoop.hdfs.server.namenode.FSImage.format(FSImage.java:161)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.format(NameNode.java:991)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1429)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1554)
15/07/15 16:34:19 INFO util.ExitUtil: Exiting with status 1
15/07/15 16:34:19 INFO namenode.NameNode: SHUTDOWN_MSG: 
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at user/127.0.1.1
************************************************************/

我也尝试过:

sudo hadoop namenode -format

但这也不起作用,我仍然会遇到一些错误。

有人可以帮帮我吗?我好几天都在努力解决这个问题。

谢谢!

1 个答案:

答案 0 :(得分:0)

您有权限问题。

用于运行名称节点格式的用户需要与运行namenode进程的用户相同。您可以通过使用Unix文件系统权限来解决这个问题,但不应该

对于您的情况,您可以以root身份运行启动脚本,这不是一个好主意,但如果我们只是在讨论本地群集,则可能是可以接受的。

更好的做法是删除/usr/local/hadoop_store/hdfs/namenode/current并将格式重新运行为正确的用户。通常,这将是:

sudo su hdfs -c "hadoop namenode -format"