apache-spark - Spark+Mesos Initial job 没有接受任何资源;检查您的集群 UI 以确保工作人员已注册并拥有足够的资源
问题描述
我在云上有一个主人,有 3 个主人和 10 个奴隶。
所有从属服务器都处于活动状态,但在 Mesos Master UI 中分配了 0 个资源:
在主页中,我可以看到 10 个已激活的代理,但有 9 个无法访问:
我尝试在集群上运行的作业永远停留在 RUNNING 状态。
Spark 是否需要启动并运行(在每个从站上运行 start-slave.sh)或 mesos 是否需要?有什么问题?
机器上没有阻塞端口
编辑:
看起来启动应用程序的机器能够连接到主服务器:
I0902 18:01:31.472944 14997 zookeeper.cpp:262] A new leading master (UPID=master@X:5000) is detected
I0902 18:01:31.473047 14993 sched.cpp:343] New master detected at master@X:5000
I0902 18:01:31.473348 14993 sched.cpp:363] No credentials provided. Attempting to register without authentication
I0902 18:01:31.475391 14994 sched.cpp:751] Framework registered with 9984df9d-0efb-4f83-bf6a-0cecb19b1a39-0002
它也尝试启动一项任务,但它被卡住了,这种行为是循环的:
解决方案
这个问题的两个解决方案:
在所有 mesos 从站中安装 hadoop 客户端
- 将 spark-xyztar.gz 放入 hdfs
- inspark 配置:spark.executor.uri hdfs://nn:9000/path/spark-xyztar.gz
- 在 spark-env 中:导出 SPARK_EXECUTOR_URI=hdfs://nn:9000/path/spark-xyztar.gz
将 spark-xyztar.gz 放入 /path/in/os/
- 在 spark-conf 中: spark.executor.uri /path/in/os/spark-xyztar.gz
- 在 spark-env 中:导出 SPARK_EXECUTOR_URI=/path/in/os/spark-xyztar.gz
否则:在 mesos ui -> 代理选项卡 -> 沙箱 -> 标准错误(检查错误详细信息)
推荐阅读
- php - 如何使用递归用户定义函数模拟 array_reverse()?
- javascript - Vue.js v-bind:值不显示值
- sql - 如何在 CloudFoundry 上部署 Column View 工件
- c# - 使用 ID 列表过滤的 Elasticsearch 多重匹配
- java - GeoMap 未正确居中
- wordpress - 我想创建一个 Wordpress 存档页面,该页面显示带有匹配查询变量的标签的帖子。是否有任何插件可以帮助我做到这一点?
- ios - 我如何通过一些快速登录来使应用程序崩溃?
- python - 蟒蛇健身房。看不到环境
- apache-spark - 使用文件名创建变量 - PySpark
- pipeline - 如何在 Spinnaker 中将 base64 工件转换为 json/yaml?