初学hadoop时,搭建伪分布式集群,hadoop-daemon.sh start namenode 失败,解决方法:
- 首先 在 hadoop-daemon.sh start namenode 之前需要先 hdfs namenode -fomat (初次搭建时,格式化)
若不是这个问题:
- 很可能是你的配置文件格式有问题:
- core-site.xml
- centos7001 是我的主机名,你自己的主机名 需要你 hostname, 如:
- 主机名 centos7 可以这样修改 hostnamectl set-hostname ”你的主机名“ 如:
- 修改完这里之后 你需要 在 /etc/hosts 文件中添加 映射关系 如
- IP 通过 IP address 查询 如
若以上都没能解决问题:
说明出现了格式的问题,比如哪个地方的少了什么符号,之类的,基本手动的地方都可能出现错误,这个问题的解决方法是:
- 进入hadoop-'version'/logs 下,若日志不重要 rm -rf hadoop-* (只是为了让你更快定位错误日志也可以不这样做)
- 之后 在hadoop-daemon.sh start namenode
- 应该还是不成功 之后 进入 hadoop-'version'/logs cat hadoop-*.log 拉到最下方 查看错误信息,根据错误信息定位错误位置,并改正
之后改完之后 重启虚拟机,(这里已添加hadoop/bin(sbin)的环境变量)
- jps 查看java程序的进程
- hdfs namenode -format
- hadoop-daemon.sh start namenode
- jps
- hadoop-daemon.sh start datanode
- jps
- 看是否都能正常启动