以后都会将学习Hadoop中遇到的问题写到这里,供自己参考,能帮到大家更好
SecondaryNameNode未启动
解决办法:
可能是端口被占用(我没遇到)
hadoop104未在/etc/hosts配置映射路径
我在hadoop104的/etc/hosts 添加了所有hadoop服务器的地址(以防万一)
192.168.xx.xxx hadoop102 hadoop102
192.168.xx.xxx hadoop103 hadoop103
192.168.xx.xxx hadoop104 hadoop104
重启hdfs
sbin/stop-dfs.sh #关闭hdfs
sbin/start-dfs.sh #开启hdfs
运行成功,SecondaryNameNode恢复
以后遇到启动异常的情况,可以查看hadoop3.3.0/logs这个文件夹,具体大家各自是什么版本自己看
浏览器打不开hadoop102:9870
原因:windows下的hosts为设置hadoop服务器ip
解决:在windows找到hosts(C:\Windows\System32\drivers\etc),拖到桌面打开,添加语句
ip地址 服务器名称
放回原路径
错误: 找不到或无法加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMaster
原因:yarn-site.xml内未配置hadoop的类路径(classpath)
解决办法:打开/hadoop3.3.0/etc/hadoop目录
vim ./yarn-site.xml
linux输入以下内容查看hadoop类路径
hadoop classpath
将获取的路径写到yarn-site.xml内
<property><name>yarn.application.classpath</name><value>/opt/module/hadoop-3.3.0/etc/hadoop:/opt/module/hadoop-3.3.0/share/hadoop/common/lib/*:/opt/module/hadoop-3.3.0/share/hadoop/common/*:/opt/module/hadoop-3.3.0/share/hadoop/hdfs:/opt/module/hadoop-3.3.0/share/hadoop/hdfs/lib/*:/opt/module/hadoop-3.3.0/share/hadoop/hdfs/*:/opt/module/hadoop-3.3.0/share/hadoop/mapreduce/*:/opt/module/hadoop-3.3.0/share/hadoop/yarn/lib/*:/opt/module/hadoop-3.3.0/share/hadoop/yarn/*</value>
</property>
保存内容
重启集群
#先切换到hadoop3.3.0/sbin目录
#1.先关闭集群
stop-yarn.sh
stop-dfs.sh
#2.再启动集群
start-dfs.sh
start-dfs.sh
ok