Как убить искру / пряжу через livy

Я пытаюсь отправить искру через livy, используя rest api. Но если я запускаю один и тот же сценарий несколько раз, он запускает несколько экземпляров задания с разными идентификаторами задания. Я ищу способ убить задание искры / пряжи с тем же именем перед запуском нового. В документе Livy говорится (https://github.com/cloudera/livy#batch) удалить пакетное задание, но живые сеансы не возвращают имя приложения, возвращается только идентификатор приложения.

Есть другой способ сделать это?


person roy    schedule 28.06.2017    source источник


Ответы (3)


Вы можете использовать LivyClient API для отправки искровых заданий с помощью Livy Server. LivyClient API имеет метод остановки, который можно использовать для прекращения работы.

LivyClient.close (правда);

person dassum    schedule 03.01.2018

Для Livy версии 0.7.0 работает следующее.

Идентификатор сеанса, который вы хотите остановить, 1:

  • питон
import requests
headers = {'Content-Type': 'application/json'}
session_url = 'http://your-livy-server-ip:8998/sessions/1'
requests.delete(session_url, headers=headers)
  • оболочка
curl -X DELETE http://your-livy-server-ip:8998/sessions/1

См. https://livy.incubator.apache.org/docs/latest/rest-api.html

person Clay    schedule 01.04.2021

Сеансы, которые были активны на момент остановки сервера Livy, возможно, потребуется убить вручную. Для этого используйте инструменты из диспетчера кластеров (например, инструмент командной строки yarn).

Выполните следующую команду, чтобы найти идентификаторы приложений для интерактивных заданий, запущенных через Livy.

приложение пряжи -список

Выполните следующую команду, чтобы убить эти задания.

приложение пряжи –kill «Идентификатор приложения»

Ссылка: «https://docs.microsoft.com/en-us/azure/hdinsight/hdinsight-apache-spark-known-issues#livy-leaks-interactive-session ».

person CHEEKATLAPRADEEP-MSFT    schedule 28.06.2017