如何从特定数据中心获取项目名称?

时间:2019-04-23 14:55:24

标签: python pyvmomi

我正在使用pyVmomi查询我的vCenter,以获取其基本组件(数据存储,文件夹...)。

问题是我只希望将项目绑定到特定的数据中心。我也想将此数据中心作为参数传递。

我的代码如下:

from pyVim.connect import SmartConnect
from pyVmomi import vim
import ssl
from connection_infos import host, user, password
from connect import Connect

si = Connect(host, user, password)
content = si.RetrieveContent()

# Get all items names of "vimtype"
def get_all_items(content, vimtype):
        items = {}
        container = content.viewManager.CreateContainerView(content.rootFolder, vimtype, True)

        for managed_object_ref in container.view:
                items.update({managed_object_ref: managed_object_ref.name})
        return items

# Print ESXi
esxis = get_all_items(content, [vim.HostSystem])
for esxi in esxis:
        print(esxi.name)

# Print clusters
clusters = get_all_items(content, [vim.ComputeResource])
for cluster in clusters:
        print(cluster.name)

# Print NIC
networks = get_all_items(content, [vim.Network])
for network in networks:
        print(network.name)

# Print Datastores
datastores = get_all_items(content, [vim.Datastore])
for datastore in datastores:
        print(datastore.name)

# Print Datacenters
datacenters = get_all_items(content, [vim.Datacenter])
for datacenter in datacenters:
        print(datacenter.name)

使用此代码,我可以将需要的所有物品收集到两个DC中。

我想说,将数据中心作为参数传递,并将每个NIC,数据存储库……与该特定数据中心绑定。

任何帮助将不胜感激!

谢谢, 西蒙

0 个答案:

没有答案