Composer(Airflow)不能高并发调度任务

时间:2019-09-06 08:32:02

标签: airflow airflow-scheduler google-cloud-composer

我已经为我的GKE环境配置了高资源(也分别在节点池中),并且使用KubernetesPodOperator设置了DAG,使其仅在那些节点池中启动Pod。

affinity={
                'nodeAffinity': {
                    'requiredDuringSchedulingIgnoredDuringExecution': {
                        'nodeSelectorTerms': [{
                            'matchExpressions': [{
                                'key': 'cloud.google.com/gke-nodepool',
                                'operator': 'In',
                                'values': [
                                    'spawning-pool'
                                ]
                            }]
                        }]
                    }
                }
            }

我的airflow.cfg也经过修改,以提高所有各种(令人困惑的)气流配置参数的并发性:

parallelism = 100
dag_concurrency = 100
max_active_runs_per_dag = 100

但是,我的许多活动DAG的任务都处于“已排队”状态,并且没有启动:
enter image description here

我是否必须重新启动Composer才能触发airflow.cfg更改或我缺少的其他内容?

编辑:
只是一个想法,但这也许会为解决该错误提供一些思路。
在执行任务的同时,我一直在修改dag.py文件(即,我有CI / CD流入了Composer的GCS dags存储桶中)。
难道只有在该dag没有任何任务在运行时,DAG才会重新解析?
因此,由于正在运行DAG任务,因此未分析提及使用新节点池的DAG代码。

作曲家和Airflow版本:
在GCP的Composer控制台中显示:
图片版本:composer-1.7.2-airflow-1.10.2

0 个答案:

没有答案