Hadoop namenode 不以退出代码 1 开头
Posted
技术标签:
【中文标题】Hadoop namenode 不以退出代码 1 开头【英文标题】:Hadoop namenode not starting with exit code 1 【发布时间】:2018-06-23 06:07:23 【问题描述】:prateek@prateek:~$ start-dfs.sh
Starting namenodes on [localhost]
pdsh@prateek: localhost: ssh exited with exit code 1
Starting datanodes
Starting secondary namenodes [prateek]
prateek@prateek:~$ jps
11011 SecondaryNameNode
10787 DataNode
11161 Jps
prateek@prateek:~$
它有时会启动,但大多会引发错误。也格式化了namenode。
【问题讨论】:
你能解决这个问题吗?我现在也看到了,在我安装 Gnome 和 Eclipse 之前它工作正常。 【参考方案1】:我猜这个错误是关于 ssh 的。
您必须创建一个 localhost ssh。你这样做了吗?如果没有,那么我告诉你简单的命令:
- ssh-keygen
- ssh-copy-id -i .ssh/id_rsa.pub localhost
现在,尝试使用 localhost 进行 ssh,它应该是无密码的 ssh。然后尝试重新启动您的名称节点,它应该可以工作。
【讨论】:
我认为这不是问题,因为我能够 ssh 我的 localhost poasswordless 并且我仍然收到此错误。我猜它与 pdsh 相关的东西错误地解析了退出代码。 它与 ssh-keygen 无关。但我仍然有问题。【参考方案2】:首先,停止 dfs 和 yarn,使用:
stop-dfs.sh
或 (sbin/stop-dfs.sh
)
stop-yarn.sh
或 (sbin/stop-dfs.sh
)
然后使用此代码:
hdfs namenode -format -force
然后再次启动 dfs 和 yarn:
start-dfs.sh
或 (sbin/start-dfs.sh
)
start-yarn.sh
或 (sbin/start-yarn.sh
)
【讨论】:
【参考方案3】:我遇到了同样的问题。 这是 hadoop/etc/hadoop 中的错误配置文件。 请检查hdfs-site.xml和core-site.xml是否配置正确。
这是我的配置: hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.blocksize</name>
<value>134217728</value>
</property>
<property>
<name>dfs.namenode.fs-limits.min-block-size</name>
<value>32768</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///opt/hadoop-3.3.0/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/hadoop-3.3.0/hdfs/datanode</value>
</property>
<property>
<name>dfs.permission.enabled</name>
<value>false</value>
</property>
</configuration>
和 core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://bd-1:9000</value>
</property>
<property>
<name>hadoop.user.group.static.mapping.overrides</name>
<value>dr.who=;hduser=hduser;</value>
</property>
<property>
<name>hadoop.http.staticuser.user</name>
<value>hduser</value>
</property>
</configuration>
您必须更改用户和路径!
在 hdfs-site.xml 中,您可以看到其中定义了两个文件。 (file:///opt/hadoop-3.3.0/hdfs/namenode 和 file:///opt/hadoop-3.3.0/hdfs/datanode) 确保使用
创建这些文件mkdir -p /opt/hadoop-3.3.0/hdfs/namenode
否则您可能会遇到权限错误。
你可以
chown -R hduser:hduser /opt/hadoop
确保所有权限都是正确的。
确保你做到了
hdfs namenode -format
在重新开始之前。
(THX 2 j.paravicini)
【讨论】:
以上是关于Hadoop namenode 不以退出代码 1 开头的主要内容,如果未能解决你的问题,请参考以下文章
Hadoop运行中NameNode闪退和运行mapreducer时卡在Running job.....
2018-07-23期 Hadoop RPC模拟NameNode
hadoop源代码解读namenode高可靠:HA;web方式查看namenode下信息;dfs/data决定datanode存储位置