作者:Tony_Friday | 来源:互联网 | 2023-09-08 18:23
我有一个Logstash服务器,我需要通过使用Airflow的Cloud Composer运行命令。我正在使用SH操作员。我已建立SSH连接,并将我的RSA私钥添加到extras字段中。我尝试在输入用户名和未输入用户名时进行连接。每次连接后,都会出现错误:“错误:SSH操作员错误:没有可用的身份验证方法。”我可以使用此RSA密钥通过Putty连接。我也可以Ping服务器。该服务器没有密码-只有密钥。
SSHOperator代码:
t1 =SSHOperator(
task_id = 'SSHOperator',ssh_hook=sshHook,do_xcom_push=True,command='ls /logstash/scripts',dag=dag
)
SSH连接:
ssh connection image
为了正确地传播接近Connection连接类型的SSHOperator定义内的 Extra 字段参数,您应该以JSON数据格式显式设置RSA密钥文件的路径,例如在气流documentation中共享,例如:
{
"key_file": "/PATH_TO_YOUR_KEY/.ssh/KEY_NAME_rsa"
}