我们遇到了问题。当我们重新启动气流时 - 我们所有的任务都会在此时开始重载我们的服务器。如何在气流重启时阻止启动所有任务?
任务示例:
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime(2018, 5, 2),
'email': ['test@test.com'],
'email_on_failure': True,
'email_on_retry': True,
'retries': 1,
'retry_delay': timedelta(minutes=5),
'catchup': False
}
dag = DAG(
'start_data_collect', default_args=default_args, schedule_interval=timedelta(minutes=10))
t1 = BashOperator(
task_id='print_date',
bash_command='date',
dag=dag)
答案 0 :(得分:0)
如果您的服务器负担沉重,那是因为您的工作人员可以轻松地连接和查询/使用它们。我建议下一次,在重新启动Airflow之前,使用与服务器可能超载的连接查看所有dag,并将它们的任务配置为每个使用一个池,可能每个服务器或每个连接使用一个池。您还需要在具有插槽的UI中创建池。但是v1.9及更高版本中有一个修补程序,可以自动创建具有0个插槽的池,因此您可以使用UI进入并向每个插槽添加一些插槽。这样,即使调度程序可以调度许多可用任务,也不会调度更多的插槽中可以容纳的任务数量。
答案 1 :(得分:0)
如果您在 UI 中将状态切换为“关闭”,它应该会停止您的 DAG。如果您希望默认禁用新的 DAG,您可以更新气流配置中 [core] 下的 set dags_are_paused_at_creation = True。