OpenStack获取带有Stein版本的VM CPU_UTIL



在Stein版本中,天花板删除CPU_UTIL的轮询。

遵循此文档:https://docs.openstack.org/ceilometer/stein/admin/telemetry-measurements.html#openstack-compute

仅测量CPU(使用的CPU时间(和VCPU(分配给实例的虚拟CPU的数量(。

和检查GitHub关于天花板的委员

cpu_util仪表被弃用。

和关于天花板的此提交删除变压器支持。

https://github.com/openstack/ceilometer/commit/9db5c6c9bfc66018aeb78aeb78aeb78c4a262e1bfa9bfa9b326798#diff-4161fiff-4161ff0e1ff0e1ff0e1519a622222222222222222111117b4217b428fc83128fc8331

根据提交消息,gnocchi处理变压器数据。

那么,如何使用gnocchi聚集cpu和vcpus计算CPU使用?

尽管这个问题大约三个月大,但我希望我的答案仍然对某人有所帮助。

看来天花板的管道处理从未正确起作用。正如原始海报所注意到的那样,天花板开发团队采取了一些急剧的措施来贬低,然后淘汰了此功能。因此,唯一保留在天花板中的CPU仪表是在纳秒中表达的实例的累积CPU时间。

要根据该仪表计算单个实例的CPU利用率,您可以使用gnocchi的速率聚合。如果 rate:Meana

gnocchi measures show --resource-id <uuid> --aggregation rate:mean cpu

或对相同结果使用动态聚合功能:

gnocchi aggregates '(metric cpu rate:mean)' id=<uuid>

gentregates 命令的第一个参数是操作,它定义了您想要的数字。您会发现在gnocchi API文档中解释的操作,尤其是列出了支持操作的部分和示例部分。第二个参数是搜索表达式将计算限制为使用此特定uuid的实例(当然,只有一个这样的实例(。

到目前为止,该命令只是从gnocchi数据库中提取数字。但是,您可以从数据库中提取数据,然后将它们汇总为Fly

。该技术被称为 re-grogregation 。这样,您无需包括费率:均值在档案策略中:

gnocchi aggregates '(aggregate rate:mean (metric cpu mean))' id=<uuid>

数字以纳秒秒表示,这有点笨拙。好消息:面g骨操作也支持算术。要将纳秒转换为秒,将它们除以十亿:

gnocchi aggregates '(/ (aggregate rate:mean (metric cpu mean)) 1000000000)' id=<uuid>

并将其转换为百分比,将它们除以(粒度次数十亿(,然后将结果乘以100。假设粒度为60:

gnocchi aggregates '(* (/ (aggregate rate:mean (metric cpu mean)) 60000000000) 100)' id=<uuid>

最新更新