使用Airflow运行.EXE和Powershell任务

时间:2017-04-26 08:38:07

标签: airflow apache-airflow

我们的系统基本上只是与MS SQL Server一起运行C#和Powershell应用程序的Windows服务器。我们有一个内部的WorkflowManagement解决方案,能够运行执行EXE / BAT / PS1的任务,甚至可以调用DLL函数。

现在我正在评估Apache Airflow是否对我们来说是更好的解决方案。到目前为止,我的天真计划是在Linux机器上运行气流调度程序,然后让消费者在Windows机器上运行。但是,如何设置消费者以运行.exe任务?

我是否需要创建一个接收HTTP-Calls然后执行.Exe文件的Wrapper-Service?

1 个答案:

答案 0 :(得分:4)

我认为你提到的消费者被称为"工人"在气流中。典型的工作人员运行的执行程序不能在Windows上运行。

理论上你可以在你的windows机器上安装ssh服务器,然后使用SSHExecuteOperator来运行exe命令等。

这可能比HTTP impl效果更好,因为你在气流中的任务会保持"运行" ssh命令正在运行并自动转为成功或相应失败。使用HTTP impl,如果您想要与气流很好地集成,则需要自己实现此功能。