设置 Jupyter Pyspark 在 EC2 和 EMR 之间工作

Posted

技术标签:

【中文标题】设置 Jupyter Pyspark 在 EC2 和 EMR 之间工作【英文标题】:Setting up Jupyter Pyspark to work between EC2 and EMR 【发布时间】:2017-06-27 20:34:27 【问题描述】:

我有一个在 EMR 中运行的 spark 集群。我还有一个在第二台 EC2 机器上运行的 jupyter 笔记本。我想通过 jupyter 在我的 EC2 实例上使用 spark。我正在寻找有关如何配置 spark 以从 EC2 访问 EMR 集群的参考资料。搜索只为我提供了有关如何在 EMR 或 EC2 上设置 spark 的指南,而不是如何从另一个访问其中一个。

我在这里看到了一个类似的问题:

Sending Commands from Jupyter/IPython running on EC2 to EMR cluster

但是,那里的设置使用引导操作来设置 zeppelin,我不确定如何在 EC2 上编辑我的 hadoop 配置。

【问题讨论】:

您应该能够设置您的 Spark master==IP[X]。只需确保您的安全组已设置为允许您执行此操作即可。 【参考方案1】:

正确的做法是在主节点(分配为主节点的 ec2 实例)中运行您的 jupyter,并在那里提交您的 spark 应用程序。

【讨论】:

【参考方案2】:

您可以使用完全符合您要求的 EMR 笔记本。它位于集群外部,您可以连接到您选择的任何 EMR 集群。

更多详情:https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks.html

您还可以从笔记本中添加 Pyspark 作业所需的任何 Python 依赖项。这些将在 EMR 集群上可用,并在您自己的笔记本会话中隔离。

更多详情:https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-scoped-libraries.html

【讨论】:

以上是关于设置 Jupyter Pyspark 在 EC2 和 EMR 之间工作的主要内容,如果未能解决你的问题,请参考以下文章

使用 Jupyter Notebook 为 PySpark 内核设置 spark.app.name

如何为 pyspark jupyter notebook 设置端口?

启动 jupyter-pyspark 内核时生成损坏的文件

在 AWS EMR v4.0.0 上使用 Pyspark 配置 Ipython/Jupyter 笔记本

如何在 Windows 的虚拟环境中让 pyspark 在 Jupyter Notebook 中工作?

Pyspark / pyspark 内核在 jupyter notebook 中不起作用