在 VMware vSphere SOAP api 中使用 VLAN ID 创建分布式端口组
Create Distributed Portgroup with VLAN id in VMware vSphere SOAP api
我正在尝试使用 SOAP api 在 VMware vSphere 的 VDS 中创建一个带有 vlan ID 的分布式端口组。我可以用它来创建端口组,但它从不分配 vlan id。这是我作为规范发送给 CreateDVPortGroup_Task 方法的请求(在托管对象浏览器中):
<spec>
<name>Test</name>
<numPorts>10</numPorts>
<defaultPortConfig type="VMwareDVSPortSetting">
<vlan>
<inherited>false</inherited>
<vlanId>123</vlanId>
</vlan>
</defaultPortConfig>
<type>earlyBinding</type>
<autoExpand>false</autoExpand>
</spec>
这会创建一个端口组,但不会设置 vlanId。
我看到它需要 defaultPortConfig 的 DVPortSetting,但 vsphere 将其保留为 VMwareDVSPortSetting 对象。
我在网络上看到了一些通过 other means 执行此操作的示例,但我只需要 SOAP 消息的格式。有人可以向我提供一个示例 soap 请求,该请求将创建一个带有 vlan id 的分布式端口组吗?
如有任何帮助,我们将不胜感激。
通过查看 vijava 的实现终于弄明白了。您必须使用 'xsi:type' 而不是使用 type 属性。我要找的是:
<spec xsi:type="DVPortgroupConfigSpec">
<name>Test</name>
<numPorts>10</numPorts>
<defaultPortConfig xsi:type="VMwareDVSPortSetting">
<vlan xsi:type="VmwareDistributedVirtualSwitchVlanIdSpec">
<inherited>false</inherited>
<vlanId>123</vlanId>
</vlan>
</defaultPortConfig>
<type>earlyBinding</type>
<autoExpand>false</autoExpand>
</spec>
简单得令人沮丧!
我正在尝试使用 SOAP api 在 VMware vSphere 的 VDS 中创建一个带有 vlan ID 的分布式端口组。我可以用它来创建端口组,但它从不分配 vlan id。这是我作为规范发送给 CreateDVPortGroup_Task 方法的请求(在托管对象浏览器中):
<spec>
<name>Test</name>
<numPorts>10</numPorts>
<defaultPortConfig type="VMwareDVSPortSetting">
<vlan>
<inherited>false</inherited>
<vlanId>123</vlanId>
</vlan>
</defaultPortConfig>
<type>earlyBinding</type>
<autoExpand>false</autoExpand>
</spec>
这会创建一个端口组,但不会设置 vlanId。
我看到它需要 defaultPortConfig 的 DVPortSetting,但 vsphere 将其保留为 VMwareDVSPortSetting 对象。
我在网络上看到了一些通过 other means 执行此操作的示例,但我只需要 SOAP 消息的格式。有人可以向我提供一个示例 soap 请求,该请求将创建一个带有 vlan id 的分布式端口组吗?
如有任何帮助,我们将不胜感激。
通过查看 vijava 的实现终于弄明白了。您必须使用 'xsi:type' 而不是使用 type 属性。我要找的是:
<spec xsi:type="DVPortgroupConfigSpec">
<name>Test</name>
<numPorts>10</numPorts>
<defaultPortConfig xsi:type="VMwareDVSPortSetting">
<vlan xsi:type="VmwareDistributedVirtualSwitchVlanIdSpec">
<inherited>false</inherited>
<vlanId>123</vlanId>
</vlan>
</defaultPortConfig>
<type>earlyBinding</type>
<autoExpand>false</autoExpand>
</spec>
简单得令人沮丧!