python - pyvmomi 获取 RAM/CPU 使用情况 VSphere SDK 5.5?

标签 python django vmware esxi pyvmomi

我正在尝试通过 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 做过吗?

最佳答案

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

与该示例一起,检查 this实现。

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

在我看来,本文第二个链接的实现是您在撰写本文时可以找到的基于 pyVmomi 的最佳公开示例之一。仔细研究它,因为它可能会自行解答您的所有疑虑。

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

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

关于python - pyvmomi 获取 RAM/CPU 使用情况 VSphere SDK 5.5?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28502855/

相关文章:

python - 同一个 Django 应用程序中的多个域和多个目录

python - 素数 : Why is this code giving me some composite numbers?

python - OSX 上的 Tensorflow 0.10 (CUDA) 在 python 导入时出现段错误

django - 如何在 Django 中翻译 Enum 字符串?

Django属性错误: 'str' object has no attribute '_default_manager'

Windows 2003 与 Windows 2008 中的 Java Web 应用程序性能

python - sqlalchemy.exc.编程错误 : (ProgrammingError) can't adapt type 'UUID'

django 测试 response.request.user.is_authenticated() 在注销后返回 True

centos - 是否有用于使用 ESX/i 配置操作系统的 Ansible Playbook?

powershell - 使用 powershell 获取 VM 的 vCenter 信息