【问题标题】:Apache Spark on Mesos: Initial job has not accepted any resourcesMesos 上的 Apache Spark:初始作业未接受任何资源
【发布时间】:2017-12-08 10:40:58
【问题描述】:

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

16/03/10 11:50:55 WARN TaskSchedulerImpl:初始作业未接受任何资源;检查您的集群 UI 以确保工作人员已注册并拥有足够的资源

如果我查看 Mesos WebUI,我可以看到 Spark-Shell 被列为框架,并且我列出了一个从属设备(我自己的机器)。任何帮助如何解决它?

【问题讨论】:

  • 你在slave上安装Spark了吗?您应该使用 Spark 安装工作节点。
  • 尝试在 mesos-slave 日志中寻找更多问题。

标签: apache-spark apache-spark-sql mesos mesosphere


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-11
    • 1970-01-01
    • 2017-11-18
    • 1970-01-01
    • 2020-02-01
    • 2015-06-10
    • 1970-01-01
    相关资源
    最近更新 更多