我试着从 Eclipse
得到这个一般性错误: Initial job has not accepted any resources; check your cluster UI to ensure that workers are registered and have sufficient resources.
我的版本是 spark-1.6.2-bin-hadoop2.6.
我开始使用 ./sbin/start-master.sh
命令,并设置我的 sparkConf
这样地:
SparkConf conf = new SparkConf().setAppName("Simple Application");
conf.setMaster("spark://My-Mac-mini.local:7077");
我不会在这里带来任何其他代码,因为我运行的任何示例都会弹出这个错误。这台机器是macosx,我很肯定它有足够的资源来运行最简单的例子。
我错过了什么?
5条答案
按热度按时间gijlo24d1#
答案的解决方案
原因
spark master没有分配任何资源来执行工作节点或从属节点之类的作业。
修理
您必须通过如下/spark\u home/sbin>/start-slave.sh这样连接主节点来启动从属节点spark://localhost:7077(如果主节点在本地节点中)
结论
在spark submit期间启动主节点和从节点,这样您将获得分配给执行作业的足够资源。
备用方式
您需要在spark-env.sh文件中进行必要的更改,这是不推荐的。
dm7nw8vv2#
如果您尝试使用ide运行应用程序,并且您的workers上有可用资源,则需要执行以下操作:
1) 首先,配置worker和masterspark节点。
2) 指定驱动程序(pc)配置以从辅助进程返回计算值。
6ovsh4lw3#
我也有同样的问题,那是因为工人们不能和司机沟通。
你需要设置
spark.driver.port
(并在你的司机身上打开所说的端口),spark.driver.host
以及spark.driver.bindAddress
在你的spark-submit
从司机那里。bzzcjhmw4#
尝试使用“spark://127.0.0.1:7077“作为主地址,而不是*.local名称。有时java无法解析本地地址-原因我不明白。
5us2dqdw5#
此错误表示群集没有足够的资源用于当前作业。因为您尚未启动从属(即工作进程)。群集将没有任何资源可分配给您的作业。启动奴隶将起作用。