杀死在Mesos中运行的任务

问题描述 投票:2回答:2

在Mesos中运行一些任务时,我的一些任务就会冻结。我希望能够杀死这些任务。有没有办法杀死Mesos框架中的一个任务? (我不想杀死整个框架)

mesos
2个回答
1
投票

http://mesos.apache.org/documentation/latest/executor-http-api/

KILL只要调度程序需要停止执行特定任务,就会发送KILL事件。一旦执行器停止/终止任务,执行器就需要将终端更新(例如,TASK_FINISHED,TASK_KILLED或TASK_FAILED)发送回代理。收到终端更新后,Mesos会将任务资源标记为已释放。

{
  "type" : "KILL",
  "kill" : {
    "task_id" : {"value" : "d40f3f3e-bbe3-44af-a230-4cb1eae72f67"}
   }
}

0
投票

来自http://mesos.apache.org/documentation/latest/scheduler-http-api/#kill

KILL

由调度程序发送以终止特定任务。如果调度程序具有自定义执行程序,则将kill转发给执行程序;执行程序可以终止任务并发送TASK_KILLED(或TASK_FAILED)更新。如果在Mesos主服务器或代理程序收到kill请求时尚未将任务传递给执行程序,则会生成TASK_KILLED,并且不会将任务启动转发给执行程序。请注意,如果任务属于任务组,则终止一个任务会导致任务组中的所有任务被终止。一旦收到任务的终端更新,Mesos就会释放任务的资源。如果主服务器不知道任务,则将生成TASK_LOST。

KILL Request (JSON):
POST /api/v1/scheduler  HTTP/1.1

Host: masterhost:5050
Content-Type: application/json
Mesos-Stream-Id: 130ae4e3-6b13-4ef4-baa9-9f2e85c3e9af

{
  "framework_id"    : {"value" : "12220-3440-12532-2345"},
  "type"            : "KILL",
  "kill"            : {
    "task_id"   :  {"value" : "12220-3440-12532-my-task"},
    "agent_id"  :  {"value" : "12220-3440-12532-S1233"}
  }
}

KILL Response:
HTTP/1.1 202 Accepted
© www.soinside.com 2019 - 2024. All rights reserved.