簡體   English   中英

設置 Jupyter Pyspark 在 EC2 和 EMR 之間工作

[英]Setting up Jupyter Pyspark to work between EC2 and EMR

我有一個在 EMR 中運行的 spark 集群。 我還有一個在第二台 EC2 機器上運行的 jupyter notebook。 我想通過 jupyter 在我的 EC2 實例上使用 spark。 我正在尋找有關如何配置 spark 以從 EC2 訪問 EMR 集群的參考資料。 搜索只為我提供了有關如何在 EMR 或 EC2 上設置 spark 的指南,但沒有提供如何從另一個訪問一個的指南。

我在這里看到了一個類似的問題:

從 EC2 上運行的 Jupyter/IPython 向 EMR 集群發送命令

但是,那里的設置使用引導操作來設置飛艇,我不確定如何在 EC2 上編輯我的 hadoop 配置。

正確的方法是在主節點(分配給主節點的EC2實例)中運行jupyter,然后在此處提交spark應用程序。

您可以使用能滿足您需求的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

這已經很晚了,但會幫助人們在未來尋找解決方案。

這里的解決方案是將 hadoop、spark 和 hive 配置文件從 EMR 集群節點復制到 EC2 機器,並將它們放置在每個相應的配置位置(示例配置文件應該已經存在於類似於 /etc/hadoop/conf 的位置)。 現在,您的 ec2 機器將開始使用 EMR 節點作為其所有作業的主節點。

如果您遇到任何 DNS 識別問題,請將所有出現的 DNS 主節點名稱替換為實際的 IP 或在 /etc/hosts 文件中為其添加條目以使其可從 ec2 機器識別。

sudo scp -i sample.pem /etc/hadoop/conf/ ec2-user@some_ip:/home/ec2-user/spark/hadoop/conf
sudo scp -i sample.pem /etc/hive/conf/ ec2-user@some_ip:/home/ec2-user/spark/hive/conf
sudo scp -i sample.pem /etc/spark/conf/ ec2-user@some_ip:/home/ec2-user/spark/spark/conf

現在使用 sudo copy 命令將它們放在相應的位置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM