在 mesos 中查找活动框架当前资源使用情况
finding active framework current resource usage in mesos
哪个 HTTP 端点 可以帮助我找到所有活动框架的当前资源利用率?
我们需要此信息,因为我们希望动态扩展 Mesos 集群,并且我们的算法需要有关每个活动框架正在使用哪些资源的信息。
我认为专注于框架并不是您真正想要的。您所追求的可能是 Mesos Slave 利用率,可以通过调用
来请求
http://{mesos-master}:5050/master/state-summary
在 JSON 答案中,您会找到一个 slaves
属性,其中包含一个从属对象数组:
{
"hostname": "192.168.0.3",
"cluster": "mesos-hw-cluster",
"slaves": [{
"id": "bd9c29d7-8530-4c5b-8c50-5d2f60dffbf6-S2",
"pid": "slave(1)@192.168.0.1:5051",
"hostname": "192.168.0.1",
"registered_time": 1456826950.99075,
"resources": {
"cpus": 12.0,
"disk": 1840852.0,
"mem": 63304.0,
"ports": "[31000-32000]"
},
"used_resources": {
"cpus": 5.75,
"disk": 0.0,
"mem": 14376.0,
"ports": "[31000-31000, 31109-31109, 31267-31267, 31699-31699, 31717-31717, 31907-31907, 31979-31980]"
},
"offered_resources": {
"cpus": 0.0,
"disk": 0.0,
"mem": 0.0
},
"reserved_resources": {},
"unreserved_resources": {
"cpus": 12.0,
"disk": 1840852.0,
"mem": 63304.0,
"ports": "[31000-32000]"
},
"attributes": {},
"active": true,
"version": "0.27.1",
"TASK_STAGING": 0,
"TASK_STARTING": 0,
"TASK_RUNNING": 7,
"TASK_FINISHED": 18,
"TASK_KILLED": 27,
"TASK_FAILED": 3,
"TASK_LOST": 0,
"TASK_ERROR": 0,
"framework_ids": ["bd9c29d7-8530-4c5b-8c50-5d2f60dffbf6-0000", "bd9c29d7-8530-4c5b-8c50-5d2f60dffbf6-0002"]
},
...
}
您可以遍历所有从属对象并通过汇总 resources
然后减去 used_resources
的汇总来计算总体资源使用情况。
见
哪个 HTTP 端点 可以帮助我找到所有活动框架的当前资源利用率?
我们需要此信息,因为我们希望动态扩展 Mesos 集群,并且我们的算法需要有关每个活动框架正在使用哪些资源的信息。
我认为专注于框架并不是您真正想要的。您所追求的可能是 Mesos Slave 利用率,可以通过调用
来请求http://{mesos-master}:5050/master/state-summary
在 JSON 答案中,您会找到一个 slaves
属性,其中包含一个从属对象数组:
{
"hostname": "192.168.0.3",
"cluster": "mesos-hw-cluster",
"slaves": [{
"id": "bd9c29d7-8530-4c5b-8c50-5d2f60dffbf6-S2",
"pid": "slave(1)@192.168.0.1:5051",
"hostname": "192.168.0.1",
"registered_time": 1456826950.99075,
"resources": {
"cpus": 12.0,
"disk": 1840852.0,
"mem": 63304.0,
"ports": "[31000-32000]"
},
"used_resources": {
"cpus": 5.75,
"disk": 0.0,
"mem": 14376.0,
"ports": "[31000-31000, 31109-31109, 31267-31267, 31699-31699, 31717-31717, 31907-31907, 31979-31980]"
},
"offered_resources": {
"cpus": 0.0,
"disk": 0.0,
"mem": 0.0
},
"reserved_resources": {},
"unreserved_resources": {
"cpus": 12.0,
"disk": 1840852.0,
"mem": 63304.0,
"ports": "[31000-32000]"
},
"attributes": {},
"active": true,
"version": "0.27.1",
"TASK_STAGING": 0,
"TASK_STARTING": 0,
"TASK_RUNNING": 7,
"TASK_FINISHED": 18,
"TASK_KILLED": 27,
"TASK_FAILED": 3,
"TASK_LOST": 0,
"TASK_ERROR": 0,
"framework_ids": ["bd9c29d7-8530-4c5b-8c50-5d2f60dffbf6-0000", "bd9c29d7-8530-4c5b-8c50-5d2f60dffbf6-0002"]
},
...
}
您可以遍历所有从属对象并通过汇总 resources
然后减去 used_resources
的汇总来计算总体资源使用情况。
见