AWS EMR从属节点中找不到模块

时间:2018-01-24 23:21:17

标签: python amazon-web-services apache-spark pyspark emr

我目前正在AWS EMR集群上运行spark-submit个作业。我开始遇到python包问题,在导入过程中找不到模块。

一个明显的解决方案是进入每个单独的节点并安装我的依赖项。如果可能的话,我想避免这种情况。我能做的另一个解决方案是编写一个bootstrap脚本并创建一个新的集群。

上一个似乎有用的解决方案是我也可以pip install我的依赖项并压缩它们并通过spark-submit作业通过--py-files传递它们。虽然随着我的要求的增加,这可能会变得很麻烦。

我可能会忽略的任何其他建议或简单修复?

1 个答案:

答案 0 :(得分:0)

bootstrap是解决方案。编写一个shell脚本,pip安装所有必需的软件包并将其放入bootstrap选项中。创建集群时,它将在所有节点上执行。请记住,如果引导程序花费的时间太长(1小时左右?),它将失败。