【问题标题】:Run a python spark job in yarn-cluster mode在 yarn-cluster 模式下运行 python spark 作业
【发布时间】:2015-08-02 11:33:33
【问题描述】:

当我在 spark python 的示例中使用 spark run pi.py 脚本时,出现了一个问题,当我使用 yarn-client 模式时,一切正常。但是当我使用 yarn-cluster 模式时,作业无法启动,并且容器返回如下语法错误:

LogType:stdout

日志上传时间:Thu May 21 08:48:16 +0800 2015

日志长度:111

日志内容:

文件“pi.py”,第 40 行

return 1 if x ** 2 + y ** 2 < 1 else 0

我确定脚本是正确的,谁能帮帮我。

【问题讨论】:

    标签: python apache-spark hadoop-yarn


    【解决方案1】:

    注意到语法错误是新版本 Python 中包含的功能,所以我认为这可能是 Spark 正在使用的 Python 版本的问题。

    我在

    中添加了一个属性
    /etc/spark/conf.cloudera.spark_on_yarn/spark-defaults.conf:
    spark.yarn.appMasterEnv.PYSPARK_PYTHON
    

    指定 Python 二进制路径。

    【讨论】:

      【解决方案2】:

      spark 目前不支持在集群模式下运行 python 脚本(将驱动部署到集群)

      或者,如果您的申请是从远处的机器提交的 来自工作机器(例如,在您的笔记本电脑上本地),这很常见 使用集群模式来最小化驱动程序之间的网络延迟 和执行人。请注意,目前不支持集群模式 用于 Mesos 集群或 Python 应用程序。

      https://spark.apache.org/docs/1.3.1/submitting-applications.html

      【讨论】:

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