惭入佳境之HADOOP的NAMENODE不能正常启动的问题解决

注意到以下错误行不?

java.io.FileNotFoundException: /app/hadoop/tmp/dfs/name/current/VERSION (Permission denied)

印象中,刚才用ROOT帐号试着启动了一下。

X,我再换回HDUSER用户就不行了。

进入VERSION目录一看,原来每次启动之后,NAME目录下的属性会变成启动用户ROOT的。

于是更改回HDUSER。

一切OK。

 

~~~~~~~~~~~~~~~~~~~~~~~

2013-04-11 01:52:51,606 INFO org.apache.hadoop.hdfs.server.namenode.NameNode: STARTUP_MSG:

/************************************************************

STARTUP_MSG: Starting NameNode

STARTUP_MSG:   host = Master/192.168.7.238

STARTUP_MSG:   args = []

STARTUP_MSG:   version = 1.1.2

STARTUP_MSG:   build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.1 -r 1440782; compiled by 'hortonfo' on Thu Jan 31 02:03:24 UTC 2013

************************************************************/

2013-04-11 01:52:53,212 INFO org.apache.hadoop.metrics2.impl.MetricsConfig: loaded properties from hadoop-metrics2.properties

2013-04-11 01:52:53,324 INFO org.apache.hadoop.metrics2.impl.MetricsSourceAdapter: MBean for source MetricsSystem,sub=Stats registered.

2013-04-11 01:52:53,333 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: Scheduled snapshot period at 10 second(s).

2013-04-11 01:52:53,333 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: NameNode metrics system started

2013-04-11 01:52:55,098 INFO org.apache.hadoop.metrics2.impl.MetricsSourceAdapter: MBean for source ugi registered.

2013-04-11 01:52:55,408 INFO org.apache.hadoop.metrics2.impl.MetricsSourceAdapter: MBean for source jvm registered.

2013-04-11 01:52:55,442 INFO org.apache.hadoop.metrics2.impl.MetricsSourceAdapter: MBean for source NameNode registered.

2013-04-11 01:52:55,771 INFO org.apache.hadoop.hdfs.util.GSet: VM type       = 64-bit

2013-04-11 01:52:55,772 INFO org.apache.hadoop.hdfs.util.GSet: 2% max memory = 19.33375 MB

2013-04-11 01:52:55,772 INFO org.apache.hadoop.hdfs.util.GSet: capacity      = 2^21 = 2097152 entries

2013-04-11 01:52:55,772 INFO org.apache.hadoop.hdfs.util.GSet: recommended=2097152, actual=2097152

2013-04-11 01:52:56,135 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: fsOwner=hduser

2013-04-11 01:52:56,136 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: supergroup=supergroup

2013-04-11 01:52:56,136 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: isPermissionEnabled=true

2013-04-11 01:52:56,219 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: dfs.block.invalidate.limit=100

2013-04-11 01:52:56,220 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: isAccessTokenEnabled=false accessKeyUpdateInterval=0 min(s), accessTokenLifetime=0 min(s)

2013-04-11 01:52:58,978 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Registered FSNamesystemStateMBean and NameNodeMXBean

2013-04-11 01:52:59,185 INFO org.apache.hadoop.hdfs.server.namenode.NameNode: Caching file names occuring more than 10 times

2013-04-11 01:52:59,351 ERROR org.apache.hadoop.hdfs.server.namenode.FSNamesystem: FSNamesystem initialization failed.

java.io.FileNotFoundException: /app/hadoop/tmp/dfs/name/current/VERSION (Permission denied)

at java.io.RandomAccessFile.open(Native Method)

at java.io.RandomAccessFile.<init>(RandomAccessFile.java:233)

at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.read(Storage.java:219)

at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.read(Storage.java:215)

at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:314)

at org.apache.hadoop.hdfs.server.namenode.FSDirectory.loadFSImage(FSDirectory.java:100)

at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.initialize(FSNamesystem.java:411)

at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.<init>(FSNamesystem.java:379)

at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:284)

at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:536)

at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1410)

at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1419)

2013-04-11 01:52:59,418 ERROR org.apache.hadoop.hdfs.server.namenode.NameNode: java.io.FileNotFoundException: /app/hadoop/tmp/dfs/name/current/VERSION (Permission denied)

at java.io.RandomAccessFile.open(Native Method)

at java.io.RandomAccessFile.<init>(RandomAccessFile.java:233)

at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.read(Storage.java:219)

at org.apache.hadoop.hdfs.server.common.Storage$StorageDirectory.read(Storage.java:215)

at org.apache.hadoop.hdfs.server.namenode.FSImage.recoverTransitionRead(FSImage.java:314)

at org.apache.hadoop.hdfs.server.namenode.FSDirectory.loadFSImage(FSDirectory.java:100)

at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.initialize(FSNamesystem.java:411)

at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.<init>(FSNamesystem.java:379)

at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:284)

at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:536)

at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1410)

at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1419)

2013-04-11 01:52:59,437 INFO org.apache.hadoop.hdfs.server.namenode.NameNode: SHUTDOWN_MSG:

/************************************************************

SHUTDOWN_MSG: Shutting down NameNode at Master/192.168.7.238

************************************************************/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可能是以下原因导致hadoop namenode启动不了: 1.配置文件错误:检查hadoop配置文件中的参数是否正确设置,特别是hdfs-site.xml和core-site.xml文件。 2.权限问题:检查hadoop文件系统的权限是否正确设置,确保hadoop用户对文件系统有足够的权限。 3.端口冲突:检查hadoop namenode所使用的端口是否被其他进程占用,可以使用netstat命令查看端口占用情况。 4.磁盘空间不足:检查hadoop namenode所在的磁盘空间是否足够,如果磁盘空间不足,可能会导致hadoop namenode启动失败。 5.日志文件错误:检查hadoop namenode的日志文件,查看是否有错误信息,根据错误信息进行排查和解决。 希望以上信息能够帮助您解决hadoop namenode启动不了的问题。 ### 回答2: 首先,需要检查hadoop namenode的日志以查找任何错误信息。可以通过以下命令访问hadoop日志: cd /hadoop/logs tailf hadoop-hdfs-namenode-*.log 如果没有错误信息,则可以进一步检查以下内容: 1. 确认hadoop的配置文件是否正确配置。namenode的配置文件通常在/hadoop/etc/hadoop/hdfs-site.xml中。可以检查以下参数是否设置正确: <property> <name>dfs.namenode.rpc-address</name> <value>namenode-hostname:8020</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/hadoop/hdfs/name</value> </property> <property> <name>dfs.replication</name> <value>3</value> </property> 2. 检查hadoop的文件系统是否正确格式化。如果文件系统未正确格式化,则namenode可能无法启动。可以通过以下命令格式化文件系统: hadoop namenode -format 3. 检查系统资源是否足够。namenode需要足够的内存和硬盘空间来持久性存储文件系统的元数据。可以通过使用以下命令检查系统资源: free -mh df -h 4. 检查网络连接是否正常。namenode启动需要依赖于网络连接。可以使用以下命令检查网络连接: ping namenode-hostname 如果上述方法都无法解决问题,则建议尝试重新安装hadoop并重新配置namenode。或联系hadoop社区,以寻求更深入的支持。 ### 回答3: 当Hadoop Namenode不能启动时,可能会发生多种原因。下面列出了几个常见的问题及其解决方案。 1. 数据目录中的文件损坏或丢失 - 在Hadoop中,Namenode存储了整个文件系统的名称空间及其文件的元数据。如果数据目录中的某些文件已损坏或丢失,Namenode将无法启动解决问题的方法是尝试恢复这些文件或在安装备份副本之后重新格式化Namenode。 2. 内存不足 - 如果您的机器没有足够的内存来支持Namenode进程,则可能会出现启动失败的问题。您可以通过增加内存或禁用其他应用程序以释放一些内存来解决问题。 3. 配置文件错误 - 如果您最近对Hadoop配置文件(如core-site.xml和hdfs-site.xml)进行了更改,并且更改不正确,则可能会导致Namenode无法启动。请检查配置文件并确保它们正确配置。 4. 端口冲突 - Namenode启动需要侦听不同的端口以接收客户端请求。如果其他进程正在使用相同的端口,则会发生端口冲突,并且Namenode将无法启动。您可以通过查找并杀死占用该端口的进程来解决问题,并将其更改为其他未使用的端口。 5. 文件系统权限问题 - Namenode需要对数据目录和元数据文件具有适当的访问权限才能启动。如果权限不正确,则可能会出现启动失败的问题。请确保Hadoop用户具有适当的读取和写入权限,以及对Namenode文件具有所有权。 6. Java版本不兼容 - Namenode需要与Hadoop兼容的Java版本。如果Java版本过低或过高,可能会导致Namenode启动失败。请确保您的Java版本符合Hadoop的要求。 总之,启动失败的问题可能有很多原因。您需要审查错误日志以确定具体原因,并采取相应的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值