タスクの途中でワーカーを強制終了せずに、デプロイ時にすべてのエアフローサービスを再起動する方法に関するアドバイスが必要です。新しいダッグのデプロイ手順
私は、気流や他のピップの依存関係をvirtualenvにインストールするDAGの展開手順を書いています。私のリリースディレクトリの準備ができたら、I:
- 停止気流花、気流労働者、気流スケジューラ、および気流ウェブサーバ
- 更新私の新しいリリース
- を指すように「現在」simlink
このデプロイメント手順の問題は、ワーカーがすぐに殺されることです。スクリプトに何らかの監視を追加して、すべてのDAGを一時停止し、アイドル状態になるのを待ってからサービスを再開しますが、通気CLIはどのダグが有効になっているか、ワーカーがアイドルであるかどうかを知る方法がありません。
多くのエアフローサービスでは、dagsフォルダ内の変更を自動検出できますが、各導入では独自のvirtualenvを使用したいと考えています。すべてのサービスを再起動しないと、新しい展開でrequirements.txtファイルの新しい行が取得されません。
を、あなたは方法を見つけるか、受け入れ答えに記載されたすべてのものを実装しなければならなかったのですか? – s7anley
私は実際、労働者がSIGINTを正常に終了することに気付きました。それに応じて私のsystemctlスクリプトを更新しました –