gpt4 book ai didi

python - Airflow:如何从不同的服务器进行 SSH 和运行 BashOperator

转载 作者:IT老高 更新时间:2023-10-28 20:58:22 31 4
gpt4 key购买 nike

有没有办法通过 ssh 连接到不同的服务器并使用 Airbnb 的 Airflow 运行 BashOperator?我正在尝试使用 Airflow 运行 hive sql 命令,但我需要通过 SSH 连接到另一个盒子才能运行 hive shell。我的任务应该是这样的:

  1. SSH 到服务器 1
  2. 启动 Hive 外壳
  3. 运行 Hive 命令

谢谢!

最佳答案

不适用于 Airflow 2.x。

我想我只是想通了:

  1. 在 UI 中的 Admin > Connection 下创建 SSH 连接。注意:如果您重置数据库,连接将被删除

  2. 在 Python 文件中添加以下内容

     from airflow.contrib.hooks import SSHHook
    sshHook = SSHHook(conn_id=<YOUR CONNECTION ID FROM THE UI>)
  3. 添加 SSH 运算符(operator)任务

     t1 = SSHExecuteOperator(
    task_id="task1",
    bash_command=<YOUR COMMAND>,
    ssh_hook=sshHook,
    dag=dag)

谢谢!

关于python - Airflow:如何从不同的服务器进行 SSH 和运行 BashOperator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39457592/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com