В моей системе Airflow есть задачи, которые выполняются, и задачи, поставленные в очередь. Задачи переходят из очереди в состояние «Выполнение», но я не понимаю, почему в состоянии «Выполнение» так мало задач: я считаю, что я настроил систему на одновременное выполнение 10 задач на одного работника (с одним работником), и есть задачи, поставленные в очередь без блокировкидля запуска.
Выполнение задач:
В очереди:
Я выполняю воздушный потокв Docker (Puckel, 1.10.3) с использованием docker-compose
в AWS, вот выдержка из docker-compose.yml
:
environment:
- LOAD_EX=n
- FERNET_KEY=********
- EXECUTOR=Celery
- POSTGRES_HOST=********
- POSTGRES_PORT=5432
- POSTGRES_USER=airflow
- POSTGRES_PASSWORD=********
- POSTGRES_DB=********
- REDIS_HOST=********
- REDIS_PORT=6379
- AIRFLOW__CORE__REMOTE_LOGGING=True
- AIRFLOW__CORE__REMOTE_BASE_LOG_FOLDER=********
- AIRFLOW__CORE__LOG_CONN_ID=analytics-aws-prod
- AIRFLOW__CORE__ENCRYPT_S3_LOGS=False
- AIRFLOW__SCHEDULER__RUN_DURATION=7200
- AIRFLOW__SCHEDULER__MIN_FILE_PROCESS_INTERVAL=30
- AIRFLOW__SCHEDULER__DAG_DIR_LIST_INTERVALL=300
- AIRFLOW__CORE__SQL_ALCHEMY_CONN=********
- AIRFLOW__CELERY__WORKER_CONCURRENCY=10
Я считаю, что ни один из моих групп доступности баз данных не имеет ограничений на одновременные задачи, но даже если онисделал, тогда я ожидал бы, что задача из subscription_etl
будет запущена в примере выше. Кроме того, число экземпляров задач, запущенных за один раз, не согласовано, оно варьировалось от одного до шести, пока я его наблюдал, и всегда есть задачи в очереди, которые кажутся мне готовыми к запуску.
Может кто-нибудь объяснить мне, что происходит? Я предполагаю, что я неправильно понимаю свою конфигурацию, но, может быть, между тем, когда планировщик переназначает работу, просто большой промежуток, и это результат в основном недолговечных задач? Спасибо за любую помощь!