相关疑难解决方法(0)

有没有一种方法可以通过Airflow API创建/修改连接

通过Admin -> Connections,我们可以创建/修改连接的参数,但是我想知道是否可以通过API进行相同的操作,以便可以以编程方式设置连接

airflow.models.Connection似乎它只处理实际连接到实例,而不是将其保存到列表中。似乎应该已经实现了一个功能,但是我不确定在哪里可以找到该特定功能的文档。

python airflow

12
推荐指数
4
解决办法
3874
查看次数

在运行时在 Airflow 运算符中创建和使用连接

注意:这不是重复的


我必须从我的Airflow DAG. 实现这一目标的直接方法是SSHHook.

问题在于远程系统是一个EMR集群,它本身是在运行时(由上游任务)使用EmrCreateJobFlowOperator. 因此,虽然我可以掌握job_flow_id已启动的 EMR 集群(usingXCOM),但我需要的是将 anssh_conn_id传递给每个下游任务。


查看文档代码,很明显 Airflow 将尝试conn_iddb环境变量中查找此连接(使用),因此现在问题归结为能够在运行时设置这两个属性中的任何一个(从内部一个operator)。

这似乎是一个相当普遍的问题,因为如果无法实现,那么 的效用EmrCreateJobFlowOperator将受到严重阻碍;但我还没有遇到任何证明它的例子。


  • 是否可以从 Airflow 操作员内部创建(并销毁)其中任何一个?
    1. 连接(保留在 Airflow 的数据库中)
    2. 环境变量(应该可供所有下游任务访问,而不仅仅是此处所述的当前任务)
  • 如果没有,我有什么选择?

我上线了

  • Airflow v1.10
  • Python 3.6.6
  • emr-5.15 (如果需要可以升级)

airflow

3
推荐指数
1
解决办法
9483
查看次数

标签 统计

airflow ×2

python ×1