1

我正在尝试在 Kubernetes 上测试 Airflow。Scheduler、Worker、Queue 和 Webserver 都在不同的部署中,我使用 Celery Executor 来运行我的任务。

一切正常,除了调度程序无法排队作业。当我从 Web UI 或 CLI 手动执行 Airflow 时,它能够很好地运行我的任务,但我正在尝试测试调度程序以使其工作。

我的配置几乎和单台服务器上的一样:

sql_alchemy_conn = postgresql+psycopg2://username:password@localhost/db
broker_url = amqp://user:password@$RABBITMQ_SERVICE_HOST:5672/vhost
celery_result_backend = amqp://user:password@$RABBITMQ_SERVICE_HOST:5672/vhost

我相信通过这些配置,我应该能够使其运行,但由于某种原因,只有工作人员能够看到 DAG 及其状态,而不是调度程序,即使调度程序能够很好地记录他们的心跳. 还有什么我应该调试或查看的吗?

4

1 回答 1

0

首先,您使用 postgres 作为气流数据库,不是吗?您是否为 postgres 部署 pod 和服务?如果是这种情况,您是否验证在您的配置文件中有:

sql_alchemy_conn = postgresql+psycopg2://username:password@serviceNamePostgres/db 

你可以使用这个github。我在 3 周前使用它进行第一次测试,效果很好。入口点对于验证 rabbitMq 和 Postgres 是否配置良好很有用。

于 2017-12-04T08:35:34.333 回答