如何将 spark-shell 连接到 Mesos?

How to connect spark-shell to Mesos?

我正在尝试在 Mesos 上将 Apache Spark 设置为 运行,但我在终端上收到以下消息:

W0309 10:37:10.570291 4017 sched.cpp:700] Ignoring framework registered message because it was sent from 'master@127.0.1.1:5050' instead of the leading master 'master@127.0.0.1:5050'

此消息一直出现在 spark-shell 上,我无法 运行 任何命令。我使用以下命令启动了 spark-shell:

./bin/spark-shell --master mesos://127.0.0.1:5050 --conf spark.executor.uri=/home/user/spark/spark-1.6.0-bin-hadoop2.6.tgz

当我检查 Mesos WebUI 上的框架选项卡时,Spark Shell 被列为框架。

知道为什么我遇到上述消息并且无法从 spark-shell 发出 运行 命令吗?或者,对 运行 Mesos 上的 Spark 有什么好的参考吗?

我将在这里做一些调查工作,但我假设您在启动 mesos-master.sh 时没有指定 --ip 参数。在这种情况下,您应该将启动脚本更改为:

./bin/spark-shell --master mesos://127.0.1.1:5050 --conf spark.executor.uri=/home/user/spark/spark-1.6.0-bin-hadoop2.6.tgz

我猜您的 /etc/hosts 中有一个 127.0.1.1 条目(或您系统上用于该分辨率的任何文件)并且 Mesos 默认解析为 127.0.1.1 .如果您出于某种原因愿意,可以使用 ip 参数将其更改为 127.0.0.1