问题

如何获取虚拟机/主机/集群/等。散装空气污染指数的统计数字?

  • 2019年10月31日
  • 4回复
  • 1848的浏览量

你好,

有办法获得虚拟机/主机/集群/等。散装空气污染指数的统计数字?

我们知道/stats端点,但它们只允许获取单个实体的统计数据,所以如果集群中有数百个vm,这意味着对API有数百个单独的请求。我们真的不想仅仅通过投票统计就给集群带来太多压力。我们默认的轮询时间间隔是几分钟,所以使用投影=stats并不适合我们(因为我认为它提供了当前值),我们需要知道轮询时间间隔的统计信息。

非常感谢您的时间。

最好的问候,

Marek


4回复

Userlevel 3
徽章 +4

嗨Marek,

感谢您提出的问题。为了更好地理解你的问题,请将你的问题分为两部分:

  1. 在一个rest调用中多个实体的统计信息
  2. 在轮询间隔之间收集统计信息(在间隔之间是否将它们关联起来)?

你有没有检查过我们的nutanix.dev门户,它有通过rest api收集统计数据的例子。如果你还没有,这里是链接:

https://www.nutanix.dev/2019/01/16/getting-performance-stats-with-the-nutanix-api-v2-0/

https://www.nutanix.dev/2019/09/23/getting-vm-performance-metrics-via-api/

致以最亲切的问候

你好,穆

谢谢你的快速反应。

我已经检查了所有可能的情况,但都没有成功。是的,我们需要在一个响应中拥有多个实体的数组的统计数据。理想情况下,我们希望在一个响应中有所有的统计数据,而不需要逐个指定它们。

1)广告
目前API V1仅以如下方式提供了虚拟机的统计信息:

https:// {{cluster_ip}}: 9440 / PrismGateway /服务/ rest / v1 / vm /{{vm_uuid}}/统计/ ?指标={{vm_metric}}&startTimeInUsecs={{startTimeInUsecs}}

在哪里{{vm_uuid}}只是一个特定的UUID标识符。

但我们需要统计数据所有实体作为散装一个请求和一个响应,不需要指定它们。至少我们需要能够在一个请求中指定一个实体数组,以获得一个包含大量统计信息的响应。

广告2)

我们需要在轮询间隔之间有统计数据,例如,由于异常和不必要的状态(峰值和下降)的检测。Nutanix API已经提供了我们需要的粒度,但每个实体只有一个请求,这会导致很大的性能开销。

致以最亲切的问候

Userlevel 6
徽章 +5

@MarekSWI

可能有一个更好的解决方案,但在类似的情况下,我必须做的是首先构建uuid数组,然后在循环中查询数组中每个uuid的统计信息,同时将统计信息记录到另一个数组中。

明白了吗?

Userlevel 4
徽章 +5

@MarekSWI

这只是一个随机的想法,我们可以尝试在python或JS中使用多线程来调用多个API调用,从而减少执行时间。

回复


Baidu