2017-07-16 7 views
2

気流とセロリーが新しく、これまでにダグを終了しましたが、同じサブネットにある2台のコンピュータでタスクを実行したいので、修正する方法を知りたいairflow.cfg。いくつかの例が良いかもしれません。任意の答えorzに感謝します。気流をセロリーで使用する方法

答えて

1

Airflow documentationは非常にうまく、これを説明します。

まず、あなたはセロリのバックエンドが必要になります。これは、例えばRedisまたはRabbitMQとすることができる。次に、airflow.cfg内のexecutorパラメータをCeleryExecutorに設定する必要があります。

次に、airflow.cfgのceleryセクションに、broker_urlをセロリーバックエンド(たとえば、redis:// your_redis_host:your_redis_port/1)に設定します。 ポイントcelery_result_backendをSQLデータベースに変換します(メインエアフローデータベースと同じものを使用できます)。

次に、作業者のマシンで気流作業員を蹴飛ばして、2つのマシンで作業を開始する必要があります。

+0

2台のマシンのairflow.cfgのbroker_urlは同じですか?私はairflow.cfgのbroker_urlという質問があります。このマシンはタスクを他のマシンに送り、タスクを取得しますか? – Fewfy

+0

broker_urlは両方のホストで同じです。エアフローは、エアフロークラスタのすべてのインスタンスで設定ファイルが同じであることを前提としています。 broker_urlは必ずしも気流を実行しているホストを指しているわけではなく、セロリバックエンド(つまり、RedisまたはRabbitMQ)を指しています。 –