能否通过VMWare REST API获取ESXi主机的详细硬件及版本信息?
可以通过VMware REST API获取ESXi版本、硬件规格等详细信息
默认调用/api/vcenter/host接口仅返回基础字段,但通过以下两种方式可获取更多实用信息:
1. 使用fields参数扩展列表接口结果
在请求URL中添加fields参数,指定需要返回的扩展字段,就能在主机列表接口中直接获取目标信息。
示例请求(获取ESXi版本、CPU型号、内存大小):
curl -X GET -u 'admin@vsphere.local:password' 'https://your-vcenter/api/vcenter/host?fields=name,software.version,hardware.cpu_model,hardware.memory_size'
返回片段示例:
{ "host": "host-10", "name": "192.168.18.89", "software": { "version": "7.0.3" }, "hardware": { "cpu_model": "Intel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz", "memory_size": 68719476736 } }
可指定的常用字段包括:
software.version:ESXi版本号hardware.cpu_model:CPU型号hardware.memory_size:主机总内存(字节)hardware.cpu_count:物理CPU数量summary.uptime:主机运行时长
2. 调用单个主机的详情接口
针对特定主机ID(如host-10),调用详情接口可获取完整的硬件、软件及配置信息:
获取主机完整信息:
curl -X GET -u 'admin@vsphere.local:password' 'https://your-vcenter/api/vcenter/host/host-10'
也可单独调用子接口获取细分信息:
- 硬件规格:
/api/vcenter/host/host-10/hardware - 软件信息:
/api/vcenter/host/host-10/software - 网络配置:
/api/vcenter/host/host-10/network
这些接口返回的信息与PowerShell Get-VMHost | Format-List输出的内容基本对应,能满足你对ESXi版本、硬件规格等信息的查询需求。
内容的提问来源于stack exchange,提问作者hallio
相关产品推荐
相关产品推荐

