【问题标题】:How to kill a running Spark application?如何杀死正在运行的 Spark 应用程序?
【发布时间】:2015-06-16 10:12:39
【问题描述】:

我有一个正在运行的 Spark 应用程序,它占用了我的其他应用程序不会分配任何资源的所有内核。

我做了一些快速研究,人们建议使用 YARN kill 或 /bin/spark-class 来杀死命令。但是,我使用的是 CDH 版本,而 /bin/spark-class 甚至根本不存在,YARN kill 应用程序也不起作用。

有人可以跟我一起吗?

【问题讨论】:

  • 如果您在测试环境中:ps aux | grep spark -> 获取 spark 的 pid 并从命令行杀死它
  • @eliasah "test env",对我来说,这份工作已经分发了..
  • 你想杀死生产中的工作???
  • @eliasah 是的...由于一台主机出现故障,生产中的作业被挂起。

标签: apache-spark hadoop-yarn pyspark


【解决方案1】:
  • 从 spark 调度器复制粘贴应用程序 ID,例如 application_1428487296152_25597
  • 连接到已启动作业的服务器
  • yarn application -kill application_1428487296152_25597

【讨论】:

  • 如何使用 spark 调度器?
  • web UI一样吗?
  • 可以一次杀死多个:yarn application -kill application_1428487296152_25597 application_1428487296152_25598 ... ??
【解决方案2】:

从 YARN 获取所有应用程序的 Id 并一个一个地杀死它们可能很耗时。您可以使用 Bash for 循环来快速高效地完成这个重复性任务,如下所示:

杀死 YARN 上所有处于 ACCEPTED 状态的应用程序:

for x in $(yarn application -list -appStates ACCEPTED | awk 'NR > 2 { print $1 }'); do yarn application -kill $x; done

杀死 YARN 上所有处于 RUNNING 状态的应用程序:

for x in $(yarn application -list -appStates RUNNING | awk 'NR > 2 { print $1 }'); do yarn application -kill $x; done

【讨论】:

    【解决方案3】:

    第一次使用:

    yarn application -list
    

    记下应用程序 ID 然后杀死使用:

    yarn application -kill application_id
    

    【讨论】:

    • 对于未来的我,一个命令可以结合这两个yarn application -list|cut -f 1 |grep "application_" |xargs -I {} -P 1 -n 1 yarn application -kill {}
    【解决方案4】:

    https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/ResourceManagerRest.html#Cluster_Application_State_API

    PUT http://{rm http 地址:端口}/ws/v1/cluster/apps/{appid}/state

    {
      "state":"KILLED"
    }
    

    【讨论】:

      【解决方案5】:

      这可能不是一个合乎道德和首选的解决方案,但它有助于在您无法访问控制台以使用 yarn 应用程序命令终止作业的环境中。

      步骤是

      转到 Spark 作业的应用程序母版页。 点击工作部分。 单击活动作业的活动阶段。 您将在活动阶段旁边看到“杀死”按钮。

      如果后续阶段依赖于当前运行的阶段,则此方法有效。虽然它将工作标记为“被用户杀死”

      【讨论】:

        猜你喜欢
        • 2013-07-09
        • 2015-08-01
        • 1970-01-01
        • 2017-04-16
        • 1970-01-01
        • 2013-02-04
        • 2011-11-15
        • 2020-07-28
        • 2018-12-10
        相关资源
        最近更新 更多