Airflow 1.9 - 任务卡在队列中

时间:2018-05-21 14:03:01

标签: postgresql centos rabbitmq celery airflow

来自PyPy的最新Apache-Airflow安装(1.9.0)

设置包括:

  1. Apache的气流
  2. Apache的气流[芹菜]
  3. RabbitMQ 3.7.5
  4. 芹菜4.1.1
  5. 的Postgres
  6. 我安装了3台主机。

    主机#1

    • Airflow Webserver
    • Airflow Scheduler
    • RabbitMQ服务器
    • Postgres服务器

    主持人#2

    • Airflow Worker

    主持人#3

    • Airflow Worker

    我有一个简单的DAG,它执行每1分钟运行一次的BashOperator任务。我可以看到调度程序" queue"然而,这项工作将被添加到Celery / RabbitMQ队列中并被工作人员接收。我有一个自定义RabbitMQ用户,身份验证似乎很好。然而,Flower并没有显示任何填充数据的队列。它确实看到两台工作人员机器在各自的队列中进行监听。

    我检查过的事情:

    • 气流池配置
    • 气流环境变量
    • 升级/降级Celery和RabbitMQ
    • Postgres权限
    • RabbitMQ Permissions
    • DEBUG级别气流日志

    我阅读了有关未运行的作业的文档部分。我的" start_date"变量是在当前日期之前存在的静态日期。

    OS:Centos 7

1 个答案:

答案 0 :(得分:0)

我能够弄明白,但我不确定为什么这就是答案。

更改“broker_url”变量以使用“pyamqp”而不是“amqp”是修复。