首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态气流EMR连接

动态气流EMR连接
EN

Stack Overflow用户
提问于 2019-05-02 15:55:41
回答 2查看 918关注 0票数 2

我有一个气流DAG,它创建一个EMR集群,然后在该集群上运行SSHOperator任务。现在,我正在把EMR集群的主公共DNS硬编码成一个气流SSH连接。在创建EMR集群时,我的DAG是否可以动态填充这个DNS,这样我就不必手动更新连接了吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-02 16:36:09

在深入了解气流之后,CLI发现创建/删除新连接是可能的。在构建EMR集群之后,我添加了一个bash操作符来添加一个气流连接。

airflow connections --delete --conn_id aws_emr

airflow connections --add --conn_id aws_emr --conn_type SSH --conn_host publicDNS --conn_login username --conn_extra {"key_file":"file.pem"}

票数 2
EN

Stack Overflow用户

发布于 2019-05-02 16:39:54

您可以使用气流xcom变量将值从一个任务传递到另一个任务。在使用过程中,可以通过XCOM变量将EMR值从EMR创建任务传递到SSH任务。

气流Xcom概念

将数据推送到xcom:

代码语言:javascript
复制
context['ti'].xcom_push(key="xcom_key", value="DNS_NAME")

从xcom中提取数据:

代码语言:javascript
复制
context['ti'].xcom_pull(key="xcom_key", task_ids="EMR_Task")
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55956160

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档