Namenode没有开始使用Hortonworks Sandbox

时间:2015-04-28 09:14:02

标签: java hadoop hdfs

我正在尝试运行HDFS,但是namenode还没有开始,我也尝试通过命令启动它,如

sudo -l /usr/hdp/hadoop/sbin/hadoop-daemon.sh --config /usr/hdp/hadoop/conf start namenode

但它没有开始。我看过hadoop日志并得到以下错误:

错误

2015-04-28 10:36:04,752 FATAL namenode.NameNode (NameNode.java:main(1509)) - Failed to start namenode.java.io.FileNotFoundException: /hadoop/hdfs/namenode/in_use.lock (Permission denied)
    at java.io.RandomAccessFile.open(Native Method)
    at java.io.RandomAccessFile.<init>(RandomAccessFile.java:241)
    at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.tryLock(Storage.java:706)
    at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.lock(Storage.java:678)
    at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.analyzeStorage(Storage.java:499)
    at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverStorageDirs(FSImage.java:308)
    at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:202)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFSImage(FSNamesystem.java:1022)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.loadFromDisk(FSNamesystem.java:741)at org.apache.hadoop.hdfs.server.namenode.NameNode.loadNamesystem(NameNode.java:536)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:595)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:762)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:746)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1438)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1504) 2015-04-28 10:36:04,755 INFO  util.ExitUtil (ExitUtil.java:terminate(124)) - Exiting with status 1 2015-04-28 10:36:04,834 INFO  namenode.NameNode (StringUtils.java:run(659)) - SHUTDOWN_MSG: /************************************************************

1 个答案:

答案 0 :(得分:1)

  

无法启动namenode.java.io.FileNotFoundException: /hadoop/hdfs/namenode/in_use.lock(权限被拒绝)       在java.io.RandomAccessFile.open(本机方法)

如果您不将namenode作为hadoop用户启动,则可能会出现此错误。实际上,您尝试以root用户身份运行它,但文件/hadoop/hdfs/namenode/in_use.lock由hadoop用户拥有。

不要使用sudo来启动hadoop processess。尝试在没有sudo的情况下启动它。试试这个:

/usr/hdp/hadoop/sbin/hadoop-daemon.sh --config /usr/hdp/hadoop/conf start namenode