最初的工作没有接受任何资源;检查您的集群用户界面,以确保工作人员已注册并拥有足够的资源

Edd*_*ddy 5 java hadoop apache-spark

我正在尝试从运行火花示例,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.shShell中的命令启动spark ,然后将我设置为sparkConf

SparkConf conf = new SparkConf().setAppName("Simple Application");
conf.setMaster("spark://My-Mac-mini.local:7077");
Run Code Online (Sandbox Code Playgroud)

我没有在这里添加任何其他代码,因为此错误在我正在运行的任何示例中都会弹出。这台机器是Mac OSX,我很确定它有足够的资源来运行最简单的示例。

我想念什么?

Kni*_*t71 11

该错误表明您的集群没有足够的资源用于当前作业。因为您还没有启动从属设备,即 worker 。集群将没有任何资源可分配给您的作业。启动奴隶将工作。

`start-slave.sh <spark://master-ip:7077>`
Run Code Online (Sandbox Code Playgroud)

  • 该错误是由于您的 spark 提交要求的资源不足。检查您的主用户界面是否有工作人员及其资源。并将其与 spark-submit 参数进行比较。启动 slaves 意味着启动工作进程。 (3认同)
  • 启动从站是什么意思?..当我尝试通过 api http://stackoverflow.com/questions/38359801/spark-job-submitted-waiting-taskschedulerimpl 提交 python 应用程序时,我有 1 个主 1 个从站运行在 EC2 上-initial-job-not-accepted - 超出错误 (2认同)

Max*_*lot 9

我遇到了同样的问题,这是因为工人无法与司机沟通。

您需要设置spark.driver.port(并在您的驱动程序上打开所述端口),spark.driver.hostspark.driver.bindAddress在您spark-submit的驱动程序中。

  • 你好 - 知道这些值可能是什么。我尝试了多个值,但它不接受任何值。 (2认同)

Pra*_*K S 6

解决你的答案

原因

  1. Spark Master 没有像工作节点或从节点那样分配任何资源来执行作业。

使固定

  1. 您必须通过与主节点连接来启动从节点,如下所示 /SPARK_HOME/sbin> ./start-slave.sh spark://localhost:7077(如果您的主节点位于本地节点)

结论

  1. 在spark-submit期间启动您的主节点和从节点,以便您将获得分配足够的资源来执行作业。

替代方式

  1. 您需要在spark-env.sh 文件中进行必要的更改,但不建议这样做。


小智 6

如果您尝试使用 IDE 运行应用程序,并且您的工作人员有免费资源,则需要执行以下操作:

1)首先,配置worker和master Spark节点。

2) 指定驱动程序(PC)配置以从工作人员返回计算值。

SparkConf conf = new SparkConf()
            .setAppName("Test spark")
            .setMaster("spark://ip of your master node:port of your master node")
            .set("spark.blockManager.port", "10025")
            .set("spark.driver.blockManager.port", "10026")
            .set("spark.driver.port", "10027") //make all communication ports static (not necessary if you disabled firewalls, or if your nodes located in local network, otherwise you must open this ports in firewall settings)
            .set("spark.cores.max", "12") 
            .set("spark.executor.memory", "2g")
            .set("spark.driver.host", "ip of your driver (PC)"); //(necessary)
Run Code Online (Sandbox Code Playgroud)