如果要搜索的虚拟机不存在,则返回输出的延迟约为一分钟。 如果要搜索的虚拟机确实存在,则延迟约为两秒。 我知道我遇到了超时值,但是有没有更快的方法来解决搜索失败? 我们有非常大的 vSphere 环境,因此在实验室中运行良好,但产品;)
def getobject(vimtype, name):
obj = None
container = content.viewManager.CreateContainerView(content.rootFolder, vimtype, True)
for c in container.view:
if c.name == name:
obj = c
break
return obj
vm = getobject([vim.VirtualMachine], "vm name")
print(vm)
你使用pyVmomi(Web API,GUI,CMD工具(到底是为了什么目的,但请注意,必须考虑按 UUID 搜索 VM 的选项,即使环境有数千个 VM,这大约需要 1-2 秒。
当您迭代超过 1000 个 VM 并按名称搜索特定 VM 时,无法逃脱时间等待。
这就像你没有对 1000 个数字的数组进行排序,而你正在搜索数字 658,谁知道那个数字在哪里,当数组增长时,时间也在增长。
请注意以下代码:
按 UUID 搜索虚拟机