我的团队正在使用气流安排ETL作业。现在我们在LoCalexecutor上。我们也进行连续的集成。
现在,当我们运送某些类型的更改(例如,添加新操作员(时,我们必须重新启动Prod AirFlow调度程序,以便挑选更改。当我们重新启动调度程序时,任何积极运行的任务都会被杀死并必须重新启动,这是一个巨大的痛苦。
我正在尝试弄清楚如何避免重新启动调度程序或防止运行任务被调度程序重新启动中断。我已经阅读了一些有关该主题的文章,但是没有使用Localexecutor的文章。
有必要升级到芹菜作为执行者来完成此操作,或者有办法在Localexecutor上进行操作?
如果您使用LocaleXecutor,则无法实现所需的目标。至少使用CeleryExecutor,即使您重新启动调度程序,当前运行的任务也将继续运行。但是,您也需要将新内容部署给工人(芹菜(,但是可以通过向现有工人发送优雅的关闭信号并创建具有更新的代码的新工人来正确实现。