mesos http api不能正常工作

问题描述 投票:0回答:1

我正在尝试使用Mesos的HTTP API。我尝试使用以下命令订阅已经运行的框架,但它创建了另一个框架而不是订阅现有框架。此外,响应不包括mesos-stream-id,因此我无法在使用subscribe请求创建的框架上执行另一个命令,如teardown。

这是我用来订阅现有框架的命令。

curl -H "Host: 149.xxx.xxx.xx:5050" -H "Content-type: application/json" \
-H "Accept: application/json" -H "Connection: close" -X POST \
-d '{"type": "SUBSCRIBE","subscribe" : {"framework_info" :{"user" : "foo","name": "test", "framework_id": {"value" : "ab9cbd17-d7a4-4889-af39-1b372d16cf51-0000"}}, "force": true}}' \
149.xxx.xxx.xx:5050/api/v1/scheduler/

对上述命令的响应是;

423 {“type”:“SUBSCRIBED”,“subscribed”:{“framework_id”:{“value”:“b3a72ba7-e233-45cb-92c5-bd98780e5517-0001”},“heartbeat_interval_seconds”:15.0,“master_info”:{ “ID”: “b3a72ba7-e233-45cb-92c5-bd98780e5517”, “IP”:1368827285, “口”:5050, “PID”: “[email protected]:5050”, “主机名”: “149.xxx.xxx.xx”, “版本”: “1.6.0”, “地址”:{ “主机名”: “149.xxx.xxx.xx”, “IP”:“149.xxx.xxx。 xx“,”port“:5050},”capabilities“:[{”type“:”AGENT_UPDATE“}]}}} 20 {”type“:”HEARTBEAT“} 20 {”type“:”HEARTBEAT“} 20

正如您所看到的,响应具有不同的框架ID,并且不包含mesos-stream-id。我可以从网络面板上看到这个新框架实际上是创建的。

有什么想法吗?谢谢。

mesos
1个回答
0
投票

我相信你混淆了operatorframework (aka scheduler) API。作为运营商,您无法模拟框架并代表其终止其任务。作为操作员,没有简单的方法可以杀死任意任务,请参阅MESOS-3220

你可以做的是询问你用来杀死特定任务的框架。大多数通用的Mesos框架,如Marathon,都可以做到这一点(仅供参考,使用前面提到的调度程序API将kill请求转发给Mesos)。

© www.soinside.com 2019 - 2024. All rights reserved.