【问题标题】:How can I stop spark-submit jobs on yarn in airflow with SSHOperator如何使用 SSHOperator 停止气流中纱线的火花提交作业
【发布时间】:2021-08-01 02:07:33
【问题描述】:

我使用气流版本 2.1.0,这是我的代码:

task1 = SSHOperator(
ssh_hook=sshHook,
task_id='test_spark,
do_xcom_push=False,
command=command spark submit)

我在本地模式下提交并杀死它 -> 工作正常。但是当我在 UI 气流上杀死它时,我在模式 yarn 上运行它不起作用。谁能帮我?感谢阅读。

【问题讨论】:

    标签: apache-spark hadoop-yarn airflow


    【解决方案1】:

    如果你在 yarn 上运行它,你需要使用应用程序的应用程序 id 执行 yarn 命令。

    yarn 命令本身是:

    yarn application -kill enter_application_id

    所以你应该尝试类似:

    task1 = SSHOperator(
        ssh_hook=sshHook,
        task_id='test_spark,
        do_xcom_push=False,
        command=yarn application -kill enter_application_id)
    

    要了解更多信息,yarn 是资源协商器,airlfow 是编排工具。当您单击 UI 时,您会终止编排工具(气流)上的任务,但是为您的作业运行实例化节点的纱线并不知道这一点。因此,您需要注意要杀死工作的纱线。

    【讨论】:

    • 感谢您的回答。我在气流中的任务中添加了一些配置,它可以工作。我的配置是 get_pty=True。
    • 如果我的回答对你有帮助,你介意点赞吗?
    猜你喜欢
    • 2015-12-11
    • 2017-03-21
    • 2019-11-13
    • 1970-01-01
    • 2022-01-02
    • 1970-01-01
    • 2015-10-19
    • 1970-01-01
    • 2017-08-27
    相关资源
    最近更新 更多