Airflow 循环运行计划中的气流dag问题
我按照计划在远程ssh上创建了这个dag for run命令Airflow 循环运行计划中的气流dag问题,airflow,schedule,airflow-scheduler,Airflow,Schedule,Airflow Scheduler,我按照计划在远程ssh上创建了这个dag for run命令 from datetime import timedelta from airflow import DAG from airflow.operators.bash_operator import BashOperator from airflow.utils.dates import days_ago from airflow.contrib.hooks.ssh_hook import SSHHook as sscon from a
from datetime import timedelta
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from airflow.utils.dates import days_ago
from airflow.contrib.hooks.ssh_hook import SSHHook as sscon
from airflow.contrib.operators.ssh_operator import SSHOperator
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': days_ago(0),
'email': ['e@example.com'],
'email_on_failure': False,
'email_on_retry': False,
#'retries': 1,
#'retry_delay': timedelta(minutes=10),
}
dag = DAG(
'ssh_second',
default_args=default_args,
description='A simple bash DAG LAB',
schedule_interval=timedelta(minutes=1),
tags=['test'],
)
sshcon = sscon(remote_host="192.168.1.250", username="user", password="password", port=22)
t1 = BashOperator(
task_id='echo1',
bash_command='echo "simple task! by dag" ',
dag=dag,
)
t5 = SSHOperator(
task_id="remote-connection",
command="/bin/date >> /home/user/date.txt && echo 'from airflow' >> /home/user/date.txt",
ssh_hook=sshcon,
dag=dag)
t1 >> t5
它的工作,但气流运行它在每一秒和不可阻挡的
我不知道问题出在哪里 您的
schedule\u interval
是为每分钟设置的:schedule\u interval=timedelta(minutes=1)
这就是导致DAG执行如此频繁的原因。将计划时间间隔
更新为频率较低的时间间隔
此外,我强烈建议将
开始日期
修改为静态值,而不是动态值(例如天(0)
)。当我开始使用“气流”时,这个和其他功能非常有用。设置静态开始日期后
如果不希望DAG执行“缺失”,可以设置catchup=False
从开始日期运行到当前时间。请指导我如何每1分钟运行一次dag?@EhsanGholami当您创建dag
对象时,您现在正在代码中运行:计划间隔=时间增量(分钟=1)
。