gpt4 book ai didi

python - 通过 Airflow UI 终止在远程位置运行的 Airflow 任务

转载 作者:可可西里 更新时间:2023-11-01 14:39:55 25 4
gpt4 key购买 nike

Airflow 安装在 EC2 上,它在 EMR 上触发脚本。如果我使用 UI 中的“清除”选项,UI 会显示任务处于关闭状态,但我仍然可以看到任务在 EMR 上运行。

我正在使用的 Airflow 正在运行 LocalExecutor,我想知道如何终止正在运行的任务。

我应该使用 UI 中的“清除”选项来停止正在运行的任务吗?还是使用清除任务以及一些代码更改

下面是我的代码

def execute_on_emr(cmd):
f = open(file,'r')
s = f.read()
keyfile = StringIO.StringIO(s)
mykey = paramiko.RSAKey.from_private_key(keyfile)
sshcon = paramiko.SSHClient()
sshcon.set_missing_host_key_policy(paramiko.AutoAddPolicy())
sshcon.connect(IP, username=username, pkey=mykey)
stdin, stdout, stderr = sshcon.exec_command(cmd)
logger.info("stdout ------>"+str(stdout.readlines()))
logger.info("Error--------->"+str(stderr.readlines()))
if (stdout.channel.recv_exit_status())!= 0:
logger.info("Error Return code not Zero:"+
str(stdout.channel.recv_exit_status()))
sys.exit(1)


Task = PythonOperator(
task_id='XXX',
python_callable=execute_on_emr,
op_kwargs={'cmd': 'spark-submit /hadoop/scripts.py'},
dag=dag)

我的问题是如何从 Airflow UI 终止/停止任务,以便在 EMR 上运行的任务也被终止。

提前致谢。

问候,Chetan

最佳答案

这是从 this PR 开始实现的最近合并到 master 中。

如果您能够从 master 运行 Airflow ,我建议您尝试一下。否则,正在发布包含此功能的 1.10。

关于python - 通过 Airflow UI 终止在远程位置运行的 Airflow 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43626844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com