使用Airflow运行.EXE和Powershell任务

使用Airflow运行.EXE和Powershell任务,airflow,apache-airflow,Airflow,Apache Airflow,我们的系统基本上只是运行C#和Powershell应用程序以及MS SQL Server的Windows服务器。我们有一个内部工作流管理解决方案,能够运行执行EXE/BAT/PS1甚至调用DLL函数的任务 现在我正在评估Apache Airflow是否是一个更好的解决方案。到目前为止,我的天真计划是在Linux机器上运行airflow scheduler,然后让消费者在Windows机器上运行。但是,例如,如何设置使用者以运行.exe任务 我是否需要创建一个包装器服务,它接受HTTP调用,然后执

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

现在我正在评估Apache Airflow是否是一个更好的解决方案。到目前为止,我的天真计划是在Linux机器上运行airflow scheduler,然后让消费者在Windows机器上运行。但是,例如,如何设置使用者以运行.exe任务


我是否需要创建一个包装器服务,它接受HTTP调用,然后执行.Exe文件?

我认为您提到的消费者在airflow中被称为“工作者”。典型的工作者运行的执行器不在Windows上运行

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


这可能比HTTP impl工作得更好,因为您在airflow中的任务将在ssh命令运行时保持“运行”,并相应地自动转到成功或失败。使用HTTP impl,如果您想与airflow完美集成,您需要自己实现此功能。

谢谢您的回答!我找到了另一个可能更好的解决方案:pywinrm!有了它,您可以通过python使用Windows远程PowerShell。因此,我通过python定义一个任务并导入pywinrm库,然后我可以执行我想要的所有命令,比如调用exefile文件