代码之家  ›  专栏  ›  技术社区  ›  Soerendip

如何阻止气流?

  •  0
  • Soerendip  · 技术社区  · 3 年前

    ps aux | grep airflow 显示2个正在运行的airflow Web服务器,以及正在为所有DAG运行的计划程序。

    我试过跑步 kill $(ps aux | grep airflow | awk '{print $2}') 但这没有帮助。

    我没有 sudo 权限和Web服务器UI访问。 enter image description here

    0 回复  |  直到 4 年前
        1
  •  2
  •   SergiyKolesnikov    4 年前

    如果您在本地运行气流并用两个命令启动它 airflow scheduler airflow webserver Ctrl-C键 对于每个进程,都应该终止它们及其所有子进程。

    如果您没有在前台运行这两个进程,那么还有另一种方法。Airflow在其主目录(默认情况下)中创建具有调度程序和gunicorn服务器的进程ID的文件 ~/airflow/ ).

    跑步

    kill $(cat ~/airflow/airflow-scheduler.pid)
    

    应该终止调度程序。

    不幸的是, airflow-webserver.pid 包含gunicorn服务器的PID,而不是启动它的初始气流命令(它是gunicorn进程的父进程)。因此,我们必须首先找到gunicorn进程的父PID,然后终止父进程。

    跑步

    kill $(ps -o ppid= -p $(cat ~/airflow/airflow-webserver.pid))
    

    应终止Web服务器。

    如果只是跑步 kill (即,发送SIGTERM)对于这些进程不起作用,您可以尝试发送SIGKILL: kill -9 <pid>