有没有办法使用任何 API/SDK/REST 来构建 vsphere 版本?
我知道可以为此在 vCenter 上使用 powershell,但如果有其他选择,那就太好了。
看起来您应该能够使用VMware vSphere API Python Bindings,因为您可以模拟通过托管对象浏览器。
Parent Managed Object ID: ServiceInstance
Property Path: content.about
然后有一个build
字符串就是你要找的。
我知道如何做到这一点,我需要尽可能多的关于 vsphere 的信息,所以获取数据中心、集群和主机的详细信息是 mantaroy。
为此,我使用了官方的 ruby api,rbvmomi,但我相信它对于 python one 和 golang 是完全一样的。
需要通过 root/children 对象下的主机文件夹进行交互,这在 wmware api 文档上不是很清楚,以便更容易遵循一段代码:
vim = RbVmomi::VIM.connect host: host, user: 'user', password: 'pass', insecure: true, debug: false
vim.root.children.each do |root_child|
root_child.hostFolder.children.each do |child|
child.host.each do |host|
prod = host.config.product
puts host.name,
prod.apiType,
prod.apiVersion,
prod.build,
prod.fullName,
prod.instanceUuid,
prod.licenseProductName,
prod.localeBuild,
prod.localeVersion,
prod.name,
prod.osType,
prod.productLineId,
prod.vendor,
prod.version
end
end
end