1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343
|
# Copyright (c) 2006-2025 Broadcom. All Rights Reserved.
# Broadcom Confidential. The term "Broadcom" refers to Broadcom Inc.
# and/or its subsidiaries.
# ******* WARNING - AUTO GENERATED CODE - DO NOT EDIT *******
from typing import ClassVar
from typing import Optional
from pyVmomi.VmomiSupport import Enum
from pyVmomi.VmomiSupport import long
from pyVmomi.vim import BoolPolicy
from pyVmomi.vim import DistributedVirtualSwitch
from pyVmomi.vim import InheritablePolicy
from pyVmomi.vim import IntPolicy
from pyVmomi.vim import NumericRange
from pyVmomi.vim import StringPolicy
from pyVmomi.vim import Task
from pyVmomi.vmodl import DynamicData
from pyVmomi.vim.dvs import DistributedVirtualPort
from pyVmomi.vim.dvs import DistributedVirtualPortgroup
from pyVmomi.vim.dvs import HostMember
from pyVmomi.vim.host import LinkDiscoveryProtocolConfig
class VmwareDistributedVirtualSwitch(DistributedVirtualSwitch):
class FeatureCapability(DistributedVirtualSwitch.FeatureCapability):
vspanSupported: Optional[bool] = None
lldpSupported: Optional[bool] = None
ipfixSupported: Optional[bool] = None
ipfixCapability: Optional[IpfixFeatureCapability] = None
multicastSnoopingSupported: Optional[bool] = None
vspanCapability: Optional[VspanFeatureCapability] = None
lacpCapability: Optional[LacpFeatureCapability] = None
dpuCapability: Optional[DpuFeatureCapability] = None
nsxSupported: Optional[bool] = None
mtuCapability: Optional[MtuCapability] = None
realTimeConfigSupported: Optional[bool] = None
class IpfixFeatureCapability(DynamicData):
ipfixSupported: Optional[bool] = None
ipv6ForIpfixSupported: Optional[bool] = None
observationDomainIdSupported: Optional[bool] = None
class LacpFeatureCapability(DynamicData):
lacpSupported: Optional[bool] = None
multiLacpGroupSupported: Optional[bool] = None
lacpFastModeSupported: Optional[bool] = None
class DpuFeatureCapability(DynamicData):
networkOffloadSupported: Optional[bool] = None
activeStandbyModeSupported: Optional[bool] = None
class VmwareHealthCheckFeatureCapability(DistributedVirtualSwitch.HealthCheckFeatureCapability):
vlanMtuSupported: bool
teamingSupported: bool
class VspanFeatureCapability(DynamicData):
mixedDestSupported: bool
dvportSupported: bool
remoteSourceSupported: bool
remoteDestSupported: bool
encapRemoteSourceSupported: bool
erspanProtocolSupported: Optional[bool] = None
mirrorNetstackSupported: Optional[bool] = None
class MtuCapability(DynamicData):
minMtuSupported: int
maxMtuSupported: int
class VspanPorts(DynamicData):
portKey: list[str] = []
uplinkPortName: list[str] = []
wildcardPortConnecteeType: list[str] = []
vlans: list[int] = []
ipAddress: list[str] = []
class VspanSession(DynamicData):
key: Optional[str] = None
name: Optional[str] = None
description: Optional[str] = None
enabled: bool
sourcePortTransmitted: Optional[VspanPorts] = None
sourcePortReceived: Optional[VspanPorts] = None
destinationPort: Optional[VspanPorts] = None
encapsulationVlanId: Optional[int] = None
stripOriginalVlan: bool
mirroredPacketLength: Optional[int] = None
normalTrafficAllowed: bool
sessionType: Optional[str] = None
samplingRate: Optional[int] = None
encapType: Optional[str] = None
erspanId: Optional[int] = None
erspanCOS: Optional[int] = None
erspanGraNanosec: Optional[bool] = None
netstack: Optional[str] = None
class IpfixConfig(DynamicData):
collectorIpAddress: Optional[str] = None
collectorPort: Optional[int] = None
observationDomainId: Optional[long] = None
activeFlowTimeout: int
idleFlowTimeout: Optional[int] = None
samplingRate: int
internalFlowsOnly: bool
class DpuFailoverPolicy(DynamicData):
activeUplink: list[str] = []
standbyUplink: list[str] = []
class NetworkOffloadConfig(DynamicData):
dpuFailoverPolicy: Optional[DpuFailoverPolicy] = None
class RealTimeLanAnnotation(DynamicData):
lanAUplink: list[str] = []
lanBUplink: list[str] = []
class RealTimeConfig(DynamicData):
allowed: Optional[bool] = None
lanAnnotation: Optional[RealTimeLanAnnotation] = None
class ConfigInfo(DistributedVirtualSwitch.ConfigInfo):
vspanSession: list[VspanSession] = []
pvlanConfig: list[PvlanMapEntry] = []
maxMtu: int
linkDiscoveryProtocolConfig: Optional[LinkDiscoveryProtocolConfig] = None
ipfixConfig: Optional[IpfixConfig] = None
lacpGroupConfig: list[LacpGroupConfig] = []
lacpApiVersion: Optional[str] = None
multicastFilteringMode: Optional[str] = None
networkOffloadSpecId: Optional[str] = None
networkOffloadConfig: Optional[NetworkOffloadConfig] = None
realTimeConfig: Optional[RealTimeConfig] = None
class ConfigSpec(DistributedVirtualSwitch.ConfigSpec):
pvlanConfigSpec: list[PvlanConfigSpec] = []
vspanConfigSpec: list[VspanConfigSpec] = []
maxMtu: Optional[int] = None
linkDiscoveryProtocolConfig: Optional[LinkDiscoveryProtocolConfig] = None
ipfixConfig: Optional[IpfixConfig] = None
lacpApiVersion: Optional[str] = None
multicastFilteringMode: Optional[str] = None
networkOffloadSpecId: Optional[str] = None
networkOffloadConfig: Optional[NetworkOffloadConfig] = None
realTimeConfig: Optional[RealTimeConfig] = None
class UplinkPortOrderPolicy(InheritablePolicy):
activeUplinkPort: list[str] = []
standbyUplinkPort: list[str] = []
class FailureCriteria(InheritablePolicy):
checkSpeed: Optional[StringPolicy] = None
speed: Optional[IntPolicy] = None
checkDuplex: Optional[BoolPolicy] = None
fullDuplex: Optional[BoolPolicy] = None
checkErrorPercent: Optional[BoolPolicy] = None
percentage: Optional[IntPolicy] = None
checkBeacon: Optional[BoolPolicy] = None
class UplinkPortTeamingPolicy(InheritablePolicy):
policy: Optional[StringPolicy] = None
reversePolicy: Optional[BoolPolicy] = None
notifySwitches: Optional[BoolPolicy] = None
rollingOrder: Optional[BoolPolicy] = None
failureCriteria: Optional[FailureCriteria] = None
uplinkPortOrder: Optional[UplinkPortOrderPolicy] = None
class VlanSpec(InheritablePolicy):
pass
class PvlanSpec(VlanSpec):
pvlanId: int
class VlanIdSpec(VlanSpec):
vlanId: int
class TrunkVlanSpec(VlanSpec):
vlanId: list[NumericRange] = []
class SecurityPolicy(InheritablePolicy):
allowPromiscuous: Optional[BoolPolicy] = None
macChanges: Optional[BoolPolicy] = None
forgedTransmits: Optional[BoolPolicy] = None
class MacLimitPolicyType(Enum):
allow: ClassVar['MacLimitPolicyType'] = 'allow'
drop: ClassVar['MacLimitPolicyType'] = 'drop'
class MacLearningPolicy(InheritablePolicy):
enabled: bool
allowUnicastFlooding: Optional[bool] = None
limit: Optional[int] = None
limitPolicy: Optional[str] = None
class MacManagementPolicy(InheritablePolicy):
allowPromiscuous: Optional[bool] = None
macChanges: Optional[bool] = None
forgedTransmits: Optional[bool] = None
macLearningPolicy: Optional[MacLearningPolicy] = None
class VmwarePortConfigPolicy(DistributedVirtualPort.Setting):
vlan: Optional[VlanSpec] = None
qosTag: Optional[IntPolicy] = None
uplinkTeamingPolicy: Optional[UplinkPortTeamingPolicy] = None
securityPolicy: Optional[SecurityPolicy] = None
ipfixEnabled: Optional[BoolPolicy] = None
txUplink: Optional[BoolPolicy] = None
lacpPolicy: Optional[UplinkLacpPolicy] = None
macManagementPolicy: Optional[MacManagementPolicy] = None
VNI: Optional[IntPolicy] = None
class VMwarePortgroupPolicy(DistributedVirtualPortgroup.PortgroupPolicy):
vlanOverrideAllowed: bool
uplinkTeamingOverrideAllowed: bool
securityPolicyOverrideAllowed: bool
ipfixOverrideAllowed: Optional[bool] = None
macManagementOverrideAllowed: Optional[bool] = None
class PvlanPortType(Enum):
promiscuous: ClassVar['PvlanPortType'] = 'promiscuous'
isolated: ClassVar['PvlanPortType'] = 'isolated'
community: ClassVar['PvlanPortType'] = 'community'
class PvlanConfigSpec(DynamicData):
pvlanEntry: PvlanMapEntry
operation: str
class PvlanMapEntry(DynamicData):
primaryVlanId: int
secondaryVlanId: int
pvlanType: str
class VspanConfigSpec(DynamicData):
vspanSession: VspanSession
operation: str
class VspanSessionEncapType(Enum):
gre: ClassVar['VspanSessionEncapType'] = 'gre'
erspan2: ClassVar['VspanSessionEncapType'] = 'erspan2'
erspan3: ClassVar['VspanSessionEncapType'] = 'erspan3'
class VspanSessionType(Enum):
mixedDestMirror: ClassVar['VspanSessionType'] = 'mixedDestMirror'
dvPortMirror: ClassVar['VspanSessionType'] = 'dvPortMirror'
remoteMirrorSource: ClassVar['VspanSessionType'] = 'remoteMirrorSource'
remoteMirrorDest: ClassVar['VspanSessionType'] = 'remoteMirrorDest'
encapsulatedRemoteMirrorSource: ClassVar['VspanSessionType'] = 'encapsulatedRemoteMirrorSource'
class VmwareHealthCheckConfig(DistributedVirtualSwitch.HealthCheckConfig):
pass
class VlanMtuHealthCheckConfig(VmwareHealthCheckConfig):
pass
class TeamingHealthCheckConfig(VmwareHealthCheckConfig):
pass
class VlanHealthCheckResult(HostMember.UplinkHealthCheckResult):
trunkedVlan: list[NumericRange] = []
untrunkedVlan: list[NumericRange] = []
class MtuHealthCheckResult(HostMember.UplinkHealthCheckResult):
mtuMismatch: bool
vlanSupportSwitchMtu: list[NumericRange] = []
vlanNotSupportSwitchMtu: list[NumericRange] = []
class TeamingMatchStatus(Enum):
iphashMatch: ClassVar['TeamingMatchStatus'] = 'iphashMatch'
nonIphashMatch: ClassVar['TeamingMatchStatus'] = 'nonIphashMatch'
iphashMismatch: ClassVar['TeamingMatchStatus'] = 'iphashMismatch'
nonIphashMismatch: ClassVar['TeamingMatchStatus'] = 'nonIphashMismatch'
class TeamingHealthCheckResult(HostMember.HealthCheckResult):
teamingStatus: str
class UplinkLacpPolicy(InheritablePolicy):
enable: Optional[BoolPolicy] = None
mode: Optional[StringPolicy] = None
class LacpGroupConfig(DynamicData):
key: Optional[str] = None
name: Optional[str] = None
mode: Optional[str] = None
uplinkNum: Optional[int] = None
loadbalanceAlgorithm: Optional[str] = None
vlan: Optional[LagVlanConfig] = None
ipfix: Optional[LagIpfixConfig] = None
uplinkName: list[str] = []
uplinkPortKey: list[str] = []
timeoutMode: Optional[str] = None
class LagVlanConfig(DynamicData):
vlanId: list[NumericRange] = []
class LagIpfixConfig(DynamicData):
ipfixEnabled: Optional[bool] = None
class UplinkLacpMode(Enum):
active: ClassVar['UplinkLacpMode'] = 'active'
passive: ClassVar['UplinkLacpMode'] = 'passive'
class UplinkLacpTimeoutMode(Enum):
fast: ClassVar['UplinkLacpTimeoutMode'] = 'fast'
slow: ClassVar['UplinkLacpTimeoutMode'] = 'slow'
class LacpGroupSpec(DynamicData):
lacpGroupConfig: LacpGroupConfig
operation: str
class LacpLoadBalanceAlgorithm(Enum):
srcMac: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcMac'
destMac: ClassVar['LacpLoadBalanceAlgorithm'] = 'destMac'
srcDestMac: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcDestMac'
destIpVlan: ClassVar['LacpLoadBalanceAlgorithm'] = 'destIpVlan'
srcIpVlan: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcIpVlan'
srcDestIpVlan: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcDestIpVlan'
destTcpUdpPort: ClassVar['LacpLoadBalanceAlgorithm'] = 'destTcpUdpPort'
srcTcpUdpPort: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcTcpUdpPort'
srcDestTcpUdpPort: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcDestTcpUdpPort'
destIpTcpUdpPort: ClassVar['LacpLoadBalanceAlgorithm'] = 'destIpTcpUdpPort'
srcIpTcpUdpPort: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcIpTcpUdpPort'
srcDestIpTcpUdpPort: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcDestIpTcpUdpPort'
destIpTcpUdpPortVlan: ClassVar['LacpLoadBalanceAlgorithm'] = 'destIpTcpUdpPortVlan'
srcIpTcpUdpPortVlan: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcIpTcpUdpPortVlan'
srcDestIpTcpUdpPortVlan: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcDestIpTcpUdpPortVlan'
destIp: ClassVar['LacpLoadBalanceAlgorithm'] = 'destIp'
srcIp: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcIp'
srcDestIp: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcDestIp'
vlan: ClassVar['LacpLoadBalanceAlgorithm'] = 'vlan'
srcPortId: ClassVar['LacpLoadBalanceAlgorithm'] = 'srcPortId'
class LacpApiVersion(Enum):
singleLag: ClassVar['LacpApiVersion'] = 'singleLag'
multipleLag: ClassVar['LacpApiVersion'] = 'multipleLag'
class MulticastFilteringMode(Enum):
legacyFiltering: ClassVar['MulticastFilteringMode'] = 'legacyFiltering'
snooping: ClassVar['MulticastFilteringMode'] = 'snooping'
def UpdateLacpGroupConfig(self, lacpGroupSpec: list[LacpGroupSpec]) -> Task: ...
|