《Hadoop+Spark大数据巨量分析与机器学习》学习错误记录

关于《Hadoop+Spark大数据巨量分析与机器学习》一书实践过程中的错误记录,希望可以给后续的新手提供到解决思路。
:)本文中的案例基本参考书中示例,案例不同的大家只关注解决的方法就好。

错误一

错误提示:bash: cd: /user: No such file or directory

解决:输入usr目录下的文档都会出现上述问题,原来是每次都把usr敲成了user,sigh。

错误二

创建完single node cluster后,即第四章结尾,通过hadoop resourcemanager web界面显示nodes节点的状态为unhealthy

解决:修改磁盘的数量下限和使用百分比上限
原理链接:https://blog.csdn.net/qq_21383435/article/details/83118790
解决办法链接:https://blog.csdn.net/kaede1209/article/details/77881799

错误三

ifconfig后只能看到一张网卡eth1和lo
原理和解决办法链接:https://bbs.csdn.net/topics/390669433 ysl0791用户的回答
sudo gedit /etc/udev/rules.d/70-persistent-net.rules

错误四

master,data1,data2,data3节点的连接,master下输入ssh data1 无反应,提示
connect to host data1 port 22: Connection timed out

原因:hosts文件ip设置不对
打开hosts文件,sudo gedit /etc/hosts 认真检查ip和hostname是否正确(我找了一天,正确的是196.168.56.*,错误写成192.168.0. *)
可以检查一下几个方面的问题,参考链接:https://blog.csdn.net/qq_38386316/article/details/78317822

错误五

6.2节启动完hadoop multi-node cluster后,创建与查看HDFS目录
输入hadoop fs -mkdir /user,提示mkdir: Cannot create directory /user. Name node is in safe mode.
原因及解决办法:
在hadoop目录下:bin/hadoop dfsadmin -safemode leave
https://www.cnblogs.com/henglan/p/7779090.html
https://blog.csdn.net/hongweigg/article/details/7185328

错误六

进行wordcount程序测试时:
输入hadoop fs -copyFromLocal LICENSE.txt /user/hduser/wordcount/input
报错:There are 3 datanode(s) running and no node(s) are excluded in this operation
通过 start-all.sh 和 jps 显示 datenode 都已启动
原因:磁盘空间不足
通过master节点和3个data节点分别进行sudo apt-get clean,再次运行可以copy文件。
或者尝试这个链接方法:https://www.cnblogs.com/lisi2016/p/6863922.html

错误七

8.4节输入spark-shell,出现spark启动错误,提示:Exception in thread “main” java.lang.UnsupportedClassVersionError
原因:自带的java版本过低,不支持当前安装的spark版本
https://blog.csdn.net/MrLevo520/article/details/63685938/
https://www.cnblogs.com/little-horse/p/9665329.html
解决:https://blog.csdn.net/weixin_34209406/article/details/86796577
https://www.cnblogs.com/lbky/p/11023289.html

错误八

8.10节搭建好spark standalone cluster后,测试案例,读取本地文件:
val textFile=sc.textFile(“file:/usr/local/hadoop/LICENSE.txt”)
textFile.count
输出:WARN scheduler.TaskSchedulerImpl: Initial job has not accepted any resources
原因及解决办法:https://blog.csdn.net/nuc2015/article/details/82025184
注意master和data节点底下的spark-env.sh文件都要进行修改!

错误九

在hadoop yarn上运行spark-shell上出错,提示:ERROR cluster.YarnClientSchedulerBackend: Yarn application has already exited with state
首先,终端程序中的输入的某些细节需要修改:
SPARK_JAR=/usr/local/spark/jars/*.jar HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop MASTER=yarn-client /usr/local/spark/bin/spark-shell

其次,在yarn-site.xml文件中增加内容:
https://blog.csdn.net/clever_wr/article/details/77092754

错误十

10.13节 在本地local模式运行wordcount程序
在eclipse上编译无误可以正确输出,导出jar包后,在终端切换到wordcount目录下,输入spark-submit --driver-memory 2g --master local[4] --class RunWordCount bin/WordCount.jar后,提示一直找不到main类,提示:
Exception in thread “main” java.lang.ClassNotFoundException: RunWordCount
解决办法,导出jar时,.cache-main, .classpath和 .project都不勾选,重启后在本地可以运行。

发布了13 篇原创文章 · 获赞 0 · 访问量 1108

猜你喜欢

转载自blog.csdn.net/weixin_43413198/article/details/91400476