我正在构建一个以SFTPSensor Operator开头的DAG。如我们所见,SFTPSensor类采用了sftp_conn_id参数。 (奇怪的是,SFTP操作员使用an SSH connection,这也是我希望传感器提供的。)
所以我转到UI来创建SFTP连接,如airlfow附带的示例sftp连接:
但是,可选连接类型中不存在此连接类型。当我“编辑”现有示例时,“类型”显示为Amazon Web Services:
我是否必须使用described here与CLI创建这种类型的连接。像这样:
airflow connections -a \
--conn_id my_sftp_connection \
--conn_type sftp \
--conn_login **ux**\
--conn_port 22 \
--conn_host **host** \
--conn_extra "{"key_file": "**keypath**"}"
答案 0 :(得分:0)
两者都https://airflow.apache.org/docs/apache-airflow-providers-sftp/stable/index.html 和 https://airflow.apache.org/docs/apache-airflow-providers-ssh/stable/index.html 使用 SSHv2 协议的 Paramiko 实现。 如此处所述,http://docs.paramiko.org/en/stable/api/sftp.html paramiko sftp 客户端使用 ssh 传输来执行远程文件操作。
您需要安装两个额外的提供程序包才能查看 UI 中列出的每种连接类型。
pip install apache-airflow-providers-sftp[ssh]