vcenter通过python 的 sdk获取分布式虚拟交换机的属性信息

目录

1.Python代码如下 

2.通过分析vcenter的mob来获取相关的信息,保证能够正确获取

3.找到相关的属性和方法,在程序中进行调用

4.程序返回结果:

 


 

1.Python代码如下 

from pyVim import connect
import atexit
service_instance = connect.SmartConnect(host='172.18.xx.xx',user='administrator@vsphere.local',pwd='xxxxxx',port=443)
content = service_instance.RetrieveContent()
vcontent = service_instance.content
print '{}'.format(vcontent)
print '{}'.format(type(vcontent.dvSwitchManager))
print '{}'.format(vcontent.dvSwitchManager.__dict__.items())
print '{}'.format(vcontent.dvSwitchManager.QueryAvailableDvsSpec())

2.通过分析vcenter的mob来获取相关的信息,保证能够正确获取

打开vcenter的mob,找到name为dvSwitchManager的属性,它会返回类型为DistributeVirtuaSwitchManager的类名DVSManager,

点开DVSManager,找到其相关的属性和方法

3.找到相关的属性和方法,在程序中进行调用

 

 4.程序返回结果:

(vim.ServiceInstanceContent) {
   dynamicType = <unset>,
   dynamicProperty = (vmodl.DynamicProperty) [],
   rootFolder = 'vim.Folder:group-d1',
   propertyCollector = 'vmodl.query.PropertyCollector:propertyCollector',
   viewManager = 'vim.view.ViewManager:ViewManager',
   about = (vim.AboutInfo) {
      dynamicType = <unset>,
      dynamicProperty = (vmodl.DynamicProperty) [],
      name = 'VMware vCenter Server',
      fullName = 'VMware vCenter Server 6.7.0 build-8170161',
      vendor = 'VMware, Inc.',
      version = '6.7.0',
      build = '8170161',
      localeVersion = 'INTL',
      localeBuild = '000',
      osType = 'linux-x64',
      productLineId = 'vpx',
      apiType = 'VirtualCenter',
      apiVersion = '6.7',
      instanceUuid = 'e10eb4f6-ea8e-4b00-a15b-5240175fd339',
      licenseProductName = 'VMware VirtualCenter Server',
      licenseProductVersion = '6.0'
   },
   setting = 'vim.option.OptionManager:VpxSettings',
   userDirectory = 'vim.UserDirectory:UserDirectory',
   sessionManager = 'vim.SessionManager:SessionManager',
   authorizationManager = 'vim.AuthorizationManager:AuthorizationManager',
   serviceManager = 'vim.ServiceManager:ServiceMgr',
   perfManager = 'vim.PerformanceManager:PerfMgr',
   scheduledTaskManager = 'vim.scheduler.ScheduledTaskManager:ScheduledTaskManager',
   alarmManager = 'vim.alarm.AlarmManager:AlarmManager',
   eventManager = 'vim.event.EventManager:EventManager',
   taskManager = 'vim.TaskManager:TaskManager',
   extensionManager = 'vim.ExtensionManager:ExtensionManager',
   customizationSpecManager = 'vim.CustomizationSpecManager:CustomizationSpecManager',
   customFieldsManager = 'vim.CustomFieldsManager:CustomFieldsManager',
   accountManager = <unset>,
   diagnosticManager = 'vim.DiagnosticManager:DiagMgr',
   licenseManager = 'vim.LicenseManager:LicenseManager',
   searchIndex = 'vim.SearchIndex:SearchIndex',
   fileManager = 'vim.FileManager:FileManager',
   datastoreNamespaceManager = 'vim.DatastoreNamespaceManager:DatastoreNamespaceManager',
   virtualDiskManager = 'vim.VirtualDiskManager:virtualDiskManager',
   virtualizationManager = <unset>,
   snmpSystem = 'vim.host.SnmpSystem:SnmpSystem',
   vmProvisioningChecker = 'vim.vm.check.ProvisioningChecker:ProvChecker',
   vmCompatibilityChecker = 'vim.vm.check.CompatibilityChecker:CompatChecker',
   ovfManager = 'vim.OvfManager:OvfManager',
   ipPoolManager = 'vim.IpPoolManager:IpPoolManager',
   dvSwitchManager = 'vim.dvs.DistributedVirtualSwitchManager:DVSManager',
   hostProfileManager = 'vim.profile.host.ProfileManager:HostProfileManager',
   clusterProfileManager = 'vim.profile.cluster.ProfileManager:ClusterProfileManager',
   complianceManager = 'vim.profile.ComplianceManager:MoComplianceManager',
   localizationManager = 'vim.LocalizationManager:LocalizationManager',
   storageResourceManager = 'vim.StorageResourceManager:StorageResourceManager',
   guestOperationsManager = 'vim.vm.guest.GuestOperationsManager:guestOperationsManager'
}
<class 'pyVmomi.VmomiSupport.vim.dvs.DistributedVirtualSwitchManager'>
[('_stub', <pyVmomi.SoapAdapter.SoapStubAdapter instance at 0x7fb406bdd200>), ('_moId', u'DVSManager'), ('_serverGuid', None)]
(vim.dvs.ProductSpec) [
   (vim.dvs.ProductSpec) {
      dynamicType = <unset>,
      dynamicProperty = (vmodl.DynamicProperty) [],
      name = 'DVS',
      vendor = 'VMware, Inc.',
      version = '6.0.0',
      build = <unset>,
      forwardingClass = 'etherswitch',
      bundleId = <unset>,
      bundleUrl = <unset>
   },
   (vim.dvs.ProductSpec) {
      dynamicType = <unset>,
      dynamicProperty = (vmodl.DynamicProperty) [],
      name = 'DVS',
      vendor = 'VMware, Inc.',
      version = '6.5.0',
      build = <unset>,
      forwardingClass = 'etherswitch',
      bundleId = <unset>,
      bundleUrl = <unset>
   },
   (vim.dvs.ProductSpec) {
      dynamicType = <unset>,
      dynamicProperty = (vmodl.DynamicProperty) [],
      name = 'DVS',
      vendor = 'VMware, Inc.',
      version = '6.6.0',
      build = <unset>,
      forwardingClass = 'cswitch',
      bundleId = <unset>,
      bundleUrl = <unset>
   }
]

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

千码君2016

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值