Как изменить свойства группы портов в vcenter, например, как заблокировать определенный порт группы виртуальных портов по MAC-адресу

Я хочу написать сценарий, который принимает имя группы виртуальных портов и MAC-адрес, на основе которого я хочу заблокировать определенный порт этой группы виртуальных портов. Есть ли способ сделать это с помощью API-интерфейсов pysphere?

1 ответ

Я смог добиться этого с помощью ReconfigureDVPort_Task API.

    new_request = VI.ReconfigureDVPort_TaskRequestMsg()
    all_switches = self.server._get_managed_objects(MORTypes.DistributedVirtualSwitch, from_mor=nfmor)
    _this = new_request.new__this(all_switches.keys()[0])
    _this.set_attribute_type(all_switches.keys()[0].get_attribute_type())
    new_request.set_element__this(_this)
    port = new_request.new_port()
    setting = port.new_setting()
    blocked = setting.new_blocked()
    blocked.set_element_value(True)
    blocked.set_element_inherited(False)
    setting.set_element_blocked(blocked)
    port.set_element_key(required_port.Key)
    port.set_element_setting(setting)
    port.set_element_operation('edit')
    new_request.set_element_port([port])
    ret = self.server._proxy.ReconfigureDVPort_Task(new_request)._returnval
Другие вопросы по тегам