【问题标题】:pyvmomi Get RAM/CPU Usage VSphere SDK 5.5?pyvmomi 获取 RAM/CPU 使用情况 VSphere SDK 5.5?
【发布时间】:2015-04-14 16:29:28
【问题描述】:

我正在尝试通过 Python 从一些 ESXi 服务器获取一些信息。我发现 pyvmomi(https://github.com/vmware/pyvmomi) 是一个很棒且易于理解的工具。但是,我似乎找不到获取有关 CPU/RAM/存储使用情况的“实时”信息的方法。我正在浏览 VMware 的 SDK (http://pubs.vmware.com/vsphere-55/topic/com.vmware.sdk.doc/GUID-19793BCA-9EAB-42E2-8B9F-F9F2129E7741.html),但我只能找到主机有多少 CPU 或多少内存。

有人用 Python 做过吗?

【问题讨论】:

    标签: python django vmware esxi pyvmomi


    【解决方案1】:

    检查pyvmomi-community-samples。里面有一个名为 esxi_perf_sample.py 的 python 脚本,其中有一个关于如何在指定时间段内检索特定指标的示例。

    除了那个例子,检查this的实现。

    这里的技巧在于 counterId 映射到目标机器上当前实现的可用指标的人类可读名称。在尝试检索它们的值之前,您应该首先检索可用的计数器。

    在我看来,本文第二个链接的实现是在撰写本文时基于 pyVmomi 的最佳公共示例之一。仔细研究它,因为它可能会自己回答你所有的疑问。

    另外请注意,尽管 Geeklee vminfo 实现是面向客户的,但所有指标对主机仍然有效。您只需要在执行查询时调整脚本以指定 Host 实体而不是 Guest(或同时允许两者)。

    最后,检索到的指标的“实时”粒度可以通过执行查询调用时的时间间隔来指定。您应根据需要指定时间间隔,但请注意,对于最新的 vSphere 版本,样本之间的最小(默认)间隔为 20 秒,因此您不应指定小于此值的时间间隔。

    【讨论】:

      【解决方案2】:

      我添加了脚本来提取具有多线程的 esxhosts 的 cpu 使用情况。你可以在我的github上找到 https://github.com/dograga/ESXPerfData

      【讨论】:

        猜你喜欢
        • 2015-12-06
        • 2021-06-21
        • 2020-03-07
        • 1970-01-01
        • 2010-10-03
        • 2010-09-21
        • 2011-04-27
        相关资源
        最近更新 更多