Mesos 上的 Apache Spark:初始作业未接受任何资源



我正在使用Apache Mesos在集群模式下运行Apache Spark。但是,当我启动Spark-Shell运行一个简单的测试命令(sc.parallelize(0到10,8).count)时,我收到以下警告消息:

10-03-16 11:50:55 警告 TaskSchedulerImpl:初始作业未接受任何资源;检查群集 UI 以确保工作线程已注册并具有足够的资源

如果我检查Mesos WebUI,我可以看到Spark-Shell被列为框架,并且我列出了一个从属服务器(我自己的机器)。任何帮助如何排除故障?

虽然大多数其他答案都集中在 Spark 从属服务器上的资源分配(内核、内存),但我想强调的是,防火墙可能会导致完全相同的问题,尤其是当您在云平台上运行 Spark 时。

如果你能在 Web UI 中找到火花从属,你可能已经打开了标准端口 8080、8081、7077、4040。尽管如此,当您实际运行作业时,它会使用 SPARK_WORKER_PORTspark.driver.portspark.blockManager.port,默认情况下它们是随机分配的。如果您的防火墙阻止了这些端口,则主服务器无法从从属服务器检索任何特定于作业的响应并返回错误。

您可以通过打开所有端口来运行快速测试,并查看从站是否接受作业。

最新更新