【发布时间】:2019-05-30 00:47:46
【问题描述】:
如何在 EMR 主集群(由 Terraform 创建)和 Airflow 之间建立连接。我在具有相同 SG、VPC 和子网的 AWS EC2 服务器下设置了 Airflow。
我需要解决方案,以便 Airflow 可以与 EMR 通信并执行 Spark 提交。
这些博客对建立连接后的执行有所了解。(没有多大帮助)
在气流中,我使用 AWS 和 EMR 的 UI 建立了连接:-
下面是列出活动和终止的 EMR 集群的代码,我还可以微调以获得活动集群:-
from airflow.contrib.hooks.aws_hook import AwsHook
import boto3
hook = AwsHook(aws_conn_id=‘aws_default’)
client = hook.get_client_type(‘emr’, ‘eu-central-1’)
for x in a:
print(x[‘Status’][‘State’],x[‘Name’])
我的问题是 - 我如何更新我上面的代码可以执行 Spark 提交操作
【问题讨论】:
-
嗨,kally,请说明您在这里遇到的问题是什么,您已经尝试过什么
-
嗨,Kally,你能分享一下你创建了哪些资源,哪些连接不工作?
-
@varnit 我已经更新了列出所有 EMR 集群的代码,我如何知道可以提交我的 spark 代码的单个 EMR 集群的主服务器 IP
-
@pradeep 我已经更新了列出所有 EMR 集群的代码,我如何知道单个 EMR 集群的主服务器 IP,我可以在其中提交我的 spark 代码
标签: amazon-web-services terraform airflow amazon-emr