sprak报错

来源:互联网 发布:平野美宇萝莉 知乎 编辑:程序博客网 时间:2024/06/06 05:32

WARN scheduler.TaskSchedulerImpl: Initial job has not accepted any resources; check your cluster UI to ensure that workers are registered and have sufficient resources


字面意思是:
警告:初始job没有接受任何资源;检查你的集群UI界面以确保workers有足够的资源


可能的原因有三点
1. 主机主机名和ip是否配置正确
先查看/etc/hosts文件配置是否正确


同时可以通过spark-shell查看SparkContext获取的上下文信息, 如下操作:
[hadoop@master bin]$ ./spark-shell
........
scala> sc.getConf.getAll.foreach(println)
........
scala> sc.getConf.toDebugString
........
查看其中是否有错误的信息,可以确定你的HOSTS环境是否出了问题,如果没有继续往下看
2.端口号被占用,之前的程序已运行。
如果你的是初次运行自然不用看这个,或者你确定已经完全关闭了,可以继续往下看。
3.内存不足
正常情况下是不存在这种情况的,但是如果你是学习环境就不一样了,因为,无论你的环境有多少资源,
系统都是默认使用SPARK_EXECUTOR_MEMORY=1G的,那么你的资源可能就不够,同时更的多情况是,CDH集
群根据你的环境状况来进行调节worker_max_heapsize的大小的,当worker_max_heapsize比较小时,比如
64M,worker_max_heapsize小于了executor-memory  ,那么就会出现这种情况,解决办法如下


根据worker_max_heapsize的大小,在spark-env.sh 文件中设置executor-memory的大小,如:
worker_max_heapsize=128M
那么
export SPARK_EXECUTOR_MEMORY=100M

0 0
原创粉丝点击