pulumi-vsphere 4.10.0a1710245029__py3-none-any.whl → 4.13.0a1736849827__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. pulumi_vsphere/__init__.py +28 -0
  2. pulumi_vsphere/_inputs.py +1816 -277
  3. pulumi_vsphere/_utilities.py +41 -5
  4. pulumi_vsphere/compute_cluster.py +937 -1488
  5. pulumi_vsphere/compute_cluster_host_group.py +67 -2
  6. pulumi_vsphere/compute_cluster_vm_affinity_rule.py +69 -34
  7. pulumi_vsphere/compute_cluster_vm_anti_affinity_rule.py +41 -2
  8. pulumi_vsphere/compute_cluster_vm_dependency_rule.py +205 -2
  9. pulumi_vsphere/compute_cluster_vm_group.py +198 -2
  10. pulumi_vsphere/compute_cluster_vm_host_rule.py +73 -2
  11. pulumi_vsphere/config/__init__.pyi +5 -0
  12. pulumi_vsphere/config/vars.py +5 -0
  13. pulumi_vsphere/content_library.py +113 -12
  14. pulumi_vsphere/content_library_item.py +143 -2
  15. pulumi_vsphere/custom_attribute.py +77 -2
  16. pulumi_vsphere/datacenter.py +48 -40
  17. pulumi_vsphere/datastore_cluster.py +217 -366
  18. pulumi_vsphere/datastore_cluster_vm_anti_affinity_rule.py +159 -2
  19. pulumi_vsphere/distributed_port_group.py +416 -189
  20. pulumi_vsphere/distributed_virtual_switch.py +571 -830
  21. pulumi_vsphere/dpm_host_override.py +63 -2
  22. pulumi_vsphere/drs_vm_override.py +67 -2
  23. pulumi_vsphere/entity_permissions.py +64 -38
  24. pulumi_vsphere/file.py +21 -24
  25. pulumi_vsphere/folder.py +148 -30
  26. pulumi_vsphere/get_compute_cluster.py +16 -9
  27. pulumi_vsphere/get_compute_cluster_host_group.py +36 -25
  28. pulumi_vsphere/get_content_library.py +23 -15
  29. pulumi_vsphere/get_content_library_item.py +29 -13
  30. pulumi_vsphere/get_custom_attribute.py +14 -9
  31. pulumi_vsphere/get_datacenter.py +30 -12
  32. pulumi_vsphere/get_datastore.py +29 -21
  33. pulumi_vsphere/get_datastore_cluster.py +31 -10
  34. pulumi_vsphere/get_datastore_stats.py +63 -57
  35. pulumi_vsphere/get_distributed_virtual_switch.py +18 -9
  36. pulumi_vsphere/get_dynamic.py +35 -25
  37. pulumi_vsphere/get_folder.py +23 -11
  38. pulumi_vsphere/get_guest_os_customization.py +26 -52
  39. pulumi_vsphere/get_host.py +16 -9
  40. pulumi_vsphere/get_host_base_images.py +104 -0
  41. pulumi_vsphere/get_host_pci_device.py +28 -19
  42. pulumi_vsphere/get_host_thumbprint.py +41 -25
  43. pulumi_vsphere/get_host_vgpu_profile.py +20 -15
  44. pulumi_vsphere/get_license.py +20 -10
  45. pulumi_vsphere/get_network.py +80 -24
  46. pulumi_vsphere/get_ovf_vm_template.py +56 -5
  47. pulumi_vsphere/get_policy.py +13 -9
  48. pulumi_vsphere/get_resource_pool.py +29 -23
  49. pulumi_vsphere/get_role.py +23 -13
  50. pulumi_vsphere/get_tag.py +16 -9
  51. pulumi_vsphere/get_tag_category.py +16 -9
  52. pulumi_vsphere/get_vapp_container.py +15 -9
  53. pulumi_vsphere/get_virtual_machine.py +205 -48
  54. pulumi_vsphere/get_vmfs_disks.py +18 -9
  55. pulumi_vsphere/guest_os_customization.py +60 -5
  56. pulumi_vsphere/ha_vm_override.py +352 -380
  57. pulumi_vsphere/host.py +244 -64
  58. pulumi_vsphere/host_port_group.py +27 -24
  59. pulumi_vsphere/host_virtual_switch.py +209 -289
  60. pulumi_vsphere/license.py +5 -32
  61. pulumi_vsphere/nas_datastore.py +74 -9
  62. pulumi_vsphere/offline_software_depot.py +185 -0
  63. pulumi_vsphere/outputs.py +717 -270
  64. pulumi_vsphere/provider.py +7 -6
  65. pulumi_vsphere/pulumi-plugin.json +2 -1
  66. pulumi_vsphere/resource_pool.py +168 -411
  67. pulumi_vsphere/role.py +33 -2
  68. pulumi_vsphere/storage_drs_vm_override.py +133 -2
  69. pulumi_vsphere/supervisor.py +967 -0
  70. pulumi_vsphere/tag.py +159 -2
  71. pulumi_vsphere/tag_category.py +83 -2
  72. pulumi_vsphere/vapp_container.py +163 -2
  73. pulumi_vsphere/vapp_entity.py +147 -2
  74. pulumi_vsphere/virtual_disk.py +123 -36
  75. pulumi_vsphere/virtual_machine.py +698 -829
  76. pulumi_vsphere/virtual_machine_class.py +447 -0
  77. pulumi_vsphere/virtual_machine_snapshot.py +13 -12
  78. pulumi_vsphere/vm_storage_policy.py +120 -127
  79. pulumi_vsphere/vmfs_datastore.py +271 -2
  80. pulumi_vsphere/vnic.py +104 -105
  81. {pulumi_vsphere-4.10.0a1710245029.dist-info → pulumi_vsphere-4.13.0a1736849827.dist-info}/METADATA +7 -6
  82. pulumi_vsphere-4.13.0a1736849827.dist-info/RECORD +86 -0
  83. {pulumi_vsphere-4.10.0a1710245029.dist-info → pulumi_vsphere-4.13.0a1736849827.dist-info}/WHEEL +1 -1
  84. pulumi_vsphere-4.10.0a1710245029.dist-info/RECORD +0 -82
  85. {pulumi_vsphere-4.10.0a1710245029.dist-info → pulumi_vsphere-4.13.0a1736849827.dist-info}/top_level.txt +0 -0
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -114,29 +119,17 @@ class DistributedVirtualSwitchArgs:
114
119
  The set of arguments for constructing a DistributedVirtualSwitch resource.
115
120
  :param pulumi.Input[str] datacenter_id: The ID of the datacenter where the VDS will be
116
121
  created. Forces a new resource if changed.
117
- :param pulumi.Input[Sequence[pulumi.Input[str]]] active_uplinks: A list of active uplinks to be used in load
118
- balancing. These uplinks need to match the definitions in the
119
- `uplinks` VDS argument. See
120
- here for more details.
121
- :param pulumi.Input[bool] allow_forged_transmits: Controls whether or not a virtual
122
- network adapter is allowed to send network traffic with a different MAC
123
- address than that of its own.
124
- :param pulumi.Input[bool] allow_mac_changes: Controls whether or not the Media Access
125
- Control (MAC) address can be changed.
126
- :param pulumi.Input[bool] allow_promiscuous: Enable promiscuous mode on the network. This
127
- flag indicates whether or not all traffic is seen on a given port.
122
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] active_uplinks: List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
123
+ :param pulumi.Input[bool] allow_forged_transmits: Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than
124
+ that of its own.
125
+ :param pulumi.Input[bool] allow_mac_changes: Controls whether or not the Media Access Control (MAC) address can be changed.
126
+ :param pulumi.Input[bool] allow_promiscuous: Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
128
127
  :param pulumi.Input[int] backupnfc_maximum_mbit: The maximum allowed usage for the backupNfc traffic class, in Mbits/sec.
129
128
  :param pulumi.Input[int] backupnfc_reservation_mbit: The amount of guaranteed bandwidth for the backupNfc traffic class, in Mbits/sec.
130
129
  :param pulumi.Input[int] backupnfc_share_count: The amount of shares to allocate to the backupNfc traffic class for a custom share level.
131
130
  :param pulumi.Input[str] backupnfc_share_level: The allocation level for the backupNfc traffic class. Can be one of high, low, normal, or custom.
132
- :param pulumi.Input[bool] block_all_ports: Shuts down all ports in the port groups that
133
- this policy applies to, effectively blocking all network access to connected
134
- virtual devices.
135
- :param pulumi.Input[bool] check_beacon: Enables beacon probing as an additional measure
136
- to detect NIC failure.
137
-
138
- > **NOTE:** VMware recommends using a minimum of 3 NICs when using beacon
139
- probing.
131
+ :param pulumi.Input[bool] block_all_ports: Indicates whether to block all ports by default.
132
+ :param pulumi.Input[bool] check_beacon: Enable beacon probing on the ports this policy applies to.
140
133
  :param pulumi.Input[str] contact_detail: The detailed contact information for the person
141
134
  who is responsible for the VDS.
142
135
  :param pulumi.Input[str] contact_name: The name of the person who is responsible for the
@@ -147,18 +140,12 @@ class DistributedVirtualSwitchArgs:
147
140
  > **NOTE:** Custom attributes are unsupported on direct ESXi host connections
148
141
  and requires vCenter Server.
149
142
  :param pulumi.Input[str] description: A detailed description for the VDS.
150
- :param pulumi.Input[bool] directpath_gen2_allowed: Allow VMDirectPath Gen2 for the ports
151
- for which this policy applies to.
152
- :param pulumi.Input[int] egress_shaping_average_bandwidth: The average bandwidth in bits
153
- per second if egress traffic shaping is enabled on the port.
154
- :param pulumi.Input[int] egress_shaping_burst_size: The maximum burst size allowed in
155
- bytes if egress traffic shaping is enabled on the port.
156
- :param pulumi.Input[bool] egress_shaping_enabled: `true` if the traffic shaper is enabled
157
- on the port for egress traffic.
158
- :param pulumi.Input[int] egress_shaping_peak_bandwidth: The peak bandwidth during bursts
159
- in bits per second if egress traffic shaping is enabled on the port.
160
- :param pulumi.Input[bool] failback: If `true`, the teaming policy will re-activate failed
161
- uplinks higher in precedence when they come back up.
143
+ :param pulumi.Input[bool] directpath_gen2_allowed: Allow VMDirectPath Gen2 on the ports this policy applies to.
144
+ :param pulumi.Input[int] egress_shaping_average_bandwidth: The average egress bandwidth in bits per second if egress shaping is enabled on the port.
145
+ :param pulumi.Input[int] egress_shaping_burst_size: The maximum egress burst size allowed in bytes if egress shaping is enabled on the port.
146
+ :param pulumi.Input[bool] egress_shaping_enabled: True if the traffic shaper is enabled for egress traffic on the port.
147
+ :param pulumi.Input[int] egress_shaping_peak_bandwidth: The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
148
+ :param pulumi.Input[bool] failback: If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
162
149
  :param pulumi.Input[int] faulttolerance_maximum_mbit: The maximum allowed usage for the faultTolerance traffic class, in Mbits/sec.
163
150
  :param pulumi.Input[int] faulttolerance_reservation_mbit: The amount of guaranteed bandwidth for the faultTolerance traffic class, in Mbits/sec.
164
151
  :param pulumi.Input[int] faulttolerance_share_count: The amount of shares to allocate to the faultTolerance traffic class for a custom share level.
@@ -169,18 +156,12 @@ class DistributedVirtualSwitchArgs:
169
156
  :param pulumi.Input[int] hbr_reservation_mbit: The amount of guaranteed bandwidth for the hbr traffic class, in Mbits/sec.
170
157
  :param pulumi.Input[int] hbr_share_count: The amount of shares to allocate to the hbr traffic class for a custom share level.
171
158
  :param pulumi.Input[str] hbr_share_level: The allocation level for the hbr traffic class. Can be one of high, low, normal, or custom.
172
- :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchHostArgs']]] hosts: Use the `host` block to declare a host specification. The
173
- options are:
174
- :param pulumi.Input[bool] ignore_other_pvlan_mappings: Whether to ignore existing PVLAN
175
- mappings not managed by this resource. Defaults to false.
176
- :param pulumi.Input[int] ingress_shaping_average_bandwidth: The average bandwidth in
177
- bits per second if ingress traffic shaping is enabled on the port.
178
- :param pulumi.Input[int] ingress_shaping_burst_size: The maximum burst size allowed in
179
- bytes if ingress traffic shaping is enabled on the port.
180
- :param pulumi.Input[bool] ingress_shaping_enabled: `true` if the traffic shaper is
181
- enabled on the port for ingress traffic.
182
- :param pulumi.Input[int] ingress_shaping_peak_bandwidth: The peak bandwidth during
183
- bursts in bits per second if ingress traffic shaping is enabled on the port.
159
+ :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchHostArgs']]] hosts: A host member specification.
160
+ :param pulumi.Input[bool] ignore_other_pvlan_mappings: Whether to ignore existing PVLAN mappings not managed by this resource. Defaults to false.
161
+ :param pulumi.Input[int] ingress_shaping_average_bandwidth: The average ingress bandwidth in bits per second if ingress shaping is enabled on the port.
162
+ :param pulumi.Input[int] ingress_shaping_burst_size: The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port.
163
+ :param pulumi.Input[bool] ingress_shaping_enabled: True if the traffic shaper is enabled for ingress traffic on the port.
164
+ :param pulumi.Input[int] ingress_shaping_peak_bandwidth: The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
184
165
  :param pulumi.Input[str] ipv4_address: An IPv4 address to identify the switch. This is
185
166
  mostly useful when used with the Netflow arguments.
186
167
  :param pulumi.Input[int] iscsi_maximum_mbit: The maximum allowed usage for the iSCSI traffic class, in Mbits/sec.
@@ -190,9 +171,8 @@ class DistributedVirtualSwitchArgs:
190
171
  :param pulumi.Input[str] lacp_api_version: The Link Aggregation Control Protocol group
191
172
  version to use with the VDS. Possible values are `singleLag` and
192
173
  `multipleLag`.
193
- :param pulumi.Input[bool] lacp_enabled: Enables LACP for the ports that this policy
194
- applies to.
195
- :param pulumi.Input[str] lacp_mode: The LACP mode. Can be one of `active` or `passive`.
174
+ :param pulumi.Input[bool] lacp_enabled: Whether or not to enable LACP on all uplink ports.
175
+ :param pulumi.Input[str] lacp_mode: The uplink LACP mode to use. Can be one of active or passive.
196
176
  :param pulumi.Input[str] link_discovery_operation: Whether to `advertise` or `listen`
197
177
  for link discovery traffic.
198
178
  :param pulumi.Input[str] link_discovery_protocol: The discovery protocol type. Valid
@@ -205,60 +185,32 @@ class DistributedVirtualSwitchArgs:
205
185
  :param pulumi.Input[str] multicast_filtering_mode: The multicast filtering mode to use
206
186
  with the VDS. Can be one of `legacyFiltering` or `snooping`.
207
187
  :param pulumi.Input[str] name: The name of the VDS.
208
- :param pulumi.Input[int] netflow_active_flow_timeout: The number of seconds after which
209
- active flows are forced to be exported to the collector. Allowed range is
210
- `60` to `3600`. Default: `60`.
211
- :param pulumi.Input[str] netflow_collector_ip_address: IP address for the Netflow
212
- collector, using IPv4 or IPv6. IPv6 is supported in VDS version 6.0 or later.
213
- Must be set before Netflow can be enabled.
214
- :param pulumi.Input[int] netflow_collector_port: Port for the Netflow collector. This
215
- must be set before Netflow can be enabled.
216
- :param pulumi.Input[bool] netflow_enabled: Enables Netflow on all ports that this policy
217
- applies to.
218
- :param pulumi.Input[int] netflow_idle_flow_timeout: The number of seconds after which
219
- idle flows are forced to be exported to the collector. Allowed range is `10`
220
- to `600`. Default: `15`.
221
- :param pulumi.Input[bool] netflow_internal_flows_only: Whether to limit analysis to
222
- traffic that has both source and destination served by the same host.
223
- Default: `false`.
224
- :param pulumi.Input[int] netflow_observation_domain_id: The observation domain ID for
225
- the Netflow collector.
226
- :param pulumi.Input[int] netflow_sampling_rate: The ratio of total number of packets to
227
- the number of packets analyzed. The default is `0`, which indicates that the
228
- VDS should analyze all packets. The maximum value is `1000`, which
229
- indicates an analysis rate of 0.001%!
230
- (MISSING)
231
- :param pulumi.Input[bool] network_resource_control_enabled: Set to `true` to enable
232
- network I/O control. Default: `false`.
233
- :param pulumi.Input[str] network_resource_control_version: The version of network I/O
234
- control to use. Can be one of `version2` or `version3`. Default: `version2`.
188
+ :param pulumi.Input[int] netflow_active_flow_timeout: The number of seconds after which active flows are forced to be exported to the collector.
189
+ :param pulumi.Input[str] netflow_collector_ip_address: IP address for the netflow collector, using IPv4 or IPv6.
190
+ :param pulumi.Input[int] netflow_collector_port: The port for the netflow collector.
191
+ :param pulumi.Input[bool] netflow_enabled: Indicates whether to enable netflow on all ports.
192
+ :param pulumi.Input[int] netflow_idle_flow_timeout: The number of seconds after which idle flows are forced to be exported to the collector.
193
+ :param pulumi.Input[bool] netflow_internal_flows_only: Whether to limit analysis to traffic that has both source and destination served by the same host.
194
+ :param pulumi.Input[int] netflow_observation_domain_id: The observation Domain ID for the netflow collector.
195
+ :param pulumi.Input[int] netflow_sampling_rate: The ratio of total number of packets to the number of packets analyzed. Set to 0 to disable sampling, meaning that all
196
+ packets are analyzed.
197
+ :param pulumi.Input[bool] network_resource_control_enabled: Whether or not to enable network resource control, enabling advanced traffic shaping and resource control features.
198
+ :param pulumi.Input[str] network_resource_control_version: The network I/O control version to use. Can be one of version2 or version3.
235
199
  :param pulumi.Input[int] nfs_maximum_mbit: The maximum allowed usage for the nfs traffic class, in Mbits/sec.
236
200
  :param pulumi.Input[int] nfs_reservation_mbit: The amount of guaranteed bandwidth for the nfs traffic class, in Mbits/sec.
237
201
  :param pulumi.Input[int] nfs_share_count: The amount of shares to allocate to the nfs traffic class for a custom share level.
238
202
  :param pulumi.Input[str] nfs_share_level: The allocation level for the nfs traffic class. Can be one of high, low, normal, or custom.
239
- :param pulumi.Input[bool] notify_switches: If `true`, the teaming policy will notify the
240
- broadcast network of an uplink failover, triggering cache updates.
241
- :param pulumi.Input[int] port_private_secondary_vlan_id: Used to define a secondary VLAN
242
- ID when using private VLANs.
243
- :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchPvlanMappingArgs']]] pvlan_mappings: Use the `pvlan_mapping` block to declare a
244
- private VLAN mapping. The options are:
245
- :param pulumi.Input[Sequence[pulumi.Input[str]]] standby_uplinks: A list of standby uplinks to be used in
246
- failover. These uplinks need to match the definitions in the
247
- `uplinks` VDS argument. See
248
- here for more details.
203
+ :param pulumi.Input[bool] notify_switches: If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
204
+ :param pulumi.Input[int] port_private_secondary_vlan_id: The secondary VLAN ID for this port.
205
+ :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchPvlanMappingArgs']]] pvlan_mappings: A private VLAN (PVLAN) mapping.
206
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] standby_uplinks: List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
249
207
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The IDs of any tags to attach to this resource.
250
-
251
- > **NOTE:** Tagging support requires vCenter Server 6.0 or higher.
252
- :param pulumi.Input[str] teaming_policy: The uplink teaming policy. Can be one of
253
- `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`,
254
- `failover_explicit`, or `loadbalance_loadbased`.
255
- :param pulumi.Input[bool] tx_uplink: Forward all traffic transmitted by ports for which
256
- this policy applies to its VDS uplinks.
257
- :param pulumi.Input[Sequence[pulumi.Input[str]]] uplinks: A list of strings that uniquely identifies the names
258
- of the uplinks on the VDS across hosts. The number of items in this list
259
- controls the number of uplinks that exist on the VDS, in addition to the
260
- names. See here for an example on how to
261
- use this option.
208
+ :param pulumi.Input[str] teaming_policy: The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid,
209
+ failover_explicit, or loadbalance_loadbased.
210
+ :param pulumi.Input[bool] tx_uplink: If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet
211
+ forwarded done by the switch.
212
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] uplinks: A list of uplink ports. The contents of this list control both the uplink count and names of the uplinks on the DVS
213
+ across hosts.
262
214
  :param pulumi.Input[int] vdp_maximum_mbit: The maximum allowed usage for the vdp traffic class, in Mbits/sec.
263
215
  :param pulumi.Input[int] vdp_reservation_mbit: The amount of guaranteed bandwidth for the vdp traffic class, in Mbits/sec.
264
216
  :param pulumi.Input[int] vdp_share_count: The amount of shares to allocate to the vdp traffic class for a custom share level.
@@ -271,28 +223,7 @@ class DistributedVirtualSwitchArgs:
271
223
  :param pulumi.Input[int] virtualmachine_share_count: The amount of shares to allocate to the virtualMachine traffic class for a custom share level.
272
224
  :param pulumi.Input[str] virtualmachine_share_level: The allocation level for the virtualMachine traffic class. Can be one of high, low, normal, or custom.
273
225
  :param pulumi.Input[int] vlan_id: The VLAN ID for single VLAN mode. 0 denotes no VLAN.
274
- :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchVlanRangeArgs']]] vlan_ranges: Used to denote VLAN trunking. Use the `min_vlan`
275
- and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple
276
- `vlan_range` definitions are allowed, but they must not overlap. Example
277
- below:
278
-
279
- <!--Start PulumiCodeChooser -->
280
- ```python
281
- import pulumi
282
- import pulumi_vsphere as vsphere
283
-
284
- vds = vsphere.DistributedVirtualSwitch("vds", vlan_ranges=[
285
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
286
- max_vlan=199,
287
- min_vlan=100,
288
- ),
289
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
290
- max_vlan=399,
291
- min_vlan=300,
292
- ),
293
- ])
294
- ```
295
- <!--End PulumiCodeChooser -->
226
+ :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchVlanRangeArgs']]] vlan_ranges: The VLAN ID for single VLAN mode. 0 denotes no VLAN.
296
227
  :param pulumi.Input[int] vmotion_maximum_mbit: The maximum allowed usage for the vmotion traffic class, in Mbits/sec.
297
228
  :param pulumi.Input[int] vmotion_reservation_mbit: The amount of guaranteed bandwidth for the vmotion traffic class, in Mbits/sec.
298
229
  :param pulumi.Input[int] vmotion_share_count: The amount of shares to allocate to the vmotion traffic class for a custom share level.
@@ -507,10 +438,7 @@ class DistributedVirtualSwitchArgs:
507
438
  @pulumi.getter(name="activeUplinks")
508
439
  def active_uplinks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
509
440
  """
510
- A list of active uplinks to be used in load
511
- balancing. These uplinks need to match the definitions in the
512
- `uplinks` VDS argument. See
513
- here for more details.
441
+ List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
514
442
  """
515
443
  return pulumi.get(self, "active_uplinks")
516
444
 
@@ -522,9 +450,8 @@ class DistributedVirtualSwitchArgs:
522
450
  @pulumi.getter(name="allowForgedTransmits")
523
451
  def allow_forged_transmits(self) -> Optional[pulumi.Input[bool]]:
524
452
  """
525
- Controls whether or not a virtual
526
- network adapter is allowed to send network traffic with a different MAC
527
- address than that of its own.
453
+ Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than
454
+ that of its own.
528
455
  """
529
456
  return pulumi.get(self, "allow_forged_transmits")
530
457
 
@@ -536,8 +463,7 @@ class DistributedVirtualSwitchArgs:
536
463
  @pulumi.getter(name="allowMacChanges")
537
464
  def allow_mac_changes(self) -> Optional[pulumi.Input[bool]]:
538
465
  """
539
- Controls whether or not the Media Access
540
- Control (MAC) address can be changed.
466
+ Controls whether or not the Media Access Control (MAC) address can be changed.
541
467
  """
542
468
  return pulumi.get(self, "allow_mac_changes")
543
469
 
@@ -549,8 +475,7 @@ class DistributedVirtualSwitchArgs:
549
475
  @pulumi.getter(name="allowPromiscuous")
550
476
  def allow_promiscuous(self) -> Optional[pulumi.Input[bool]]:
551
477
  """
552
- Enable promiscuous mode on the network. This
553
- flag indicates whether or not all traffic is seen on a given port.
478
+ Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
554
479
  """
555
480
  return pulumi.get(self, "allow_promiscuous")
556
481
 
@@ -610,9 +535,7 @@ class DistributedVirtualSwitchArgs:
610
535
  @pulumi.getter(name="blockAllPorts")
611
536
  def block_all_ports(self) -> Optional[pulumi.Input[bool]]:
612
537
  """
613
- Shuts down all ports in the port groups that
614
- this policy applies to, effectively blocking all network access to connected
615
- virtual devices.
538
+ Indicates whether to block all ports by default.
616
539
  """
617
540
  return pulumi.get(self, "block_all_ports")
618
541
 
@@ -624,11 +547,7 @@ class DistributedVirtualSwitchArgs:
624
547
  @pulumi.getter(name="checkBeacon")
625
548
  def check_beacon(self) -> Optional[pulumi.Input[bool]]:
626
549
  """
627
- Enables beacon probing as an additional measure
628
- to detect NIC failure.
629
-
630
- > **NOTE:** VMware recommends using a minimum of 3 NICs when using beacon
631
- probing.
550
+ Enable beacon probing on the ports this policy applies to.
632
551
  """
633
552
  return pulumi.get(self, "check_beacon")
634
553
 
@@ -694,8 +613,7 @@ class DistributedVirtualSwitchArgs:
694
613
  @pulumi.getter(name="directpathGen2Allowed")
695
614
  def directpath_gen2_allowed(self) -> Optional[pulumi.Input[bool]]:
696
615
  """
697
- Allow VMDirectPath Gen2 for the ports
698
- for which this policy applies to.
616
+ Allow VMDirectPath Gen2 on the ports this policy applies to.
699
617
  """
700
618
  return pulumi.get(self, "directpath_gen2_allowed")
701
619
 
@@ -707,8 +625,7 @@ class DistributedVirtualSwitchArgs:
707
625
  @pulumi.getter(name="egressShapingAverageBandwidth")
708
626
  def egress_shaping_average_bandwidth(self) -> Optional[pulumi.Input[int]]:
709
627
  """
710
- The average bandwidth in bits
711
- per second if egress traffic shaping is enabled on the port.
628
+ The average egress bandwidth in bits per second if egress shaping is enabled on the port.
712
629
  """
713
630
  return pulumi.get(self, "egress_shaping_average_bandwidth")
714
631
 
@@ -720,8 +637,7 @@ class DistributedVirtualSwitchArgs:
720
637
  @pulumi.getter(name="egressShapingBurstSize")
721
638
  def egress_shaping_burst_size(self) -> Optional[pulumi.Input[int]]:
722
639
  """
723
- The maximum burst size allowed in
724
- bytes if egress traffic shaping is enabled on the port.
640
+ The maximum egress burst size allowed in bytes if egress shaping is enabled on the port.
725
641
  """
726
642
  return pulumi.get(self, "egress_shaping_burst_size")
727
643
 
@@ -733,8 +649,7 @@ class DistributedVirtualSwitchArgs:
733
649
  @pulumi.getter(name="egressShapingEnabled")
734
650
  def egress_shaping_enabled(self) -> Optional[pulumi.Input[bool]]:
735
651
  """
736
- `true` if the traffic shaper is enabled
737
- on the port for egress traffic.
652
+ True if the traffic shaper is enabled for egress traffic on the port.
738
653
  """
739
654
  return pulumi.get(self, "egress_shaping_enabled")
740
655
 
@@ -746,8 +661,7 @@ class DistributedVirtualSwitchArgs:
746
661
  @pulumi.getter(name="egressShapingPeakBandwidth")
747
662
  def egress_shaping_peak_bandwidth(self) -> Optional[pulumi.Input[int]]:
748
663
  """
749
- The peak bandwidth during bursts
750
- in bits per second if egress traffic shaping is enabled on the port.
664
+ The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
751
665
  """
752
666
  return pulumi.get(self, "egress_shaping_peak_bandwidth")
753
667
 
@@ -759,8 +673,7 @@ class DistributedVirtualSwitchArgs:
759
673
  @pulumi.getter
760
674
  def failback(self) -> Optional[pulumi.Input[bool]]:
761
675
  """
762
- If `true`, the teaming policy will re-activate failed
763
- uplinks higher in precedence when they come back up.
676
+ If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
764
677
  """
765
678
  return pulumi.get(self, "failback")
766
679
 
@@ -881,8 +794,7 @@ class DistributedVirtualSwitchArgs:
881
794
  @pulumi.getter
882
795
  def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchHostArgs']]]]:
883
796
  """
884
- Use the `host` block to declare a host specification. The
885
- options are:
797
+ A host member specification.
886
798
  """
887
799
  return pulumi.get(self, "hosts")
888
800
 
@@ -894,8 +806,7 @@ class DistributedVirtualSwitchArgs:
894
806
  @pulumi.getter(name="ignoreOtherPvlanMappings")
895
807
  def ignore_other_pvlan_mappings(self) -> Optional[pulumi.Input[bool]]:
896
808
  """
897
- Whether to ignore existing PVLAN
898
- mappings not managed by this resource. Defaults to false.
809
+ Whether to ignore existing PVLAN mappings not managed by this resource. Defaults to false.
899
810
  """
900
811
  return pulumi.get(self, "ignore_other_pvlan_mappings")
901
812
 
@@ -907,8 +818,7 @@ class DistributedVirtualSwitchArgs:
907
818
  @pulumi.getter(name="ingressShapingAverageBandwidth")
908
819
  def ingress_shaping_average_bandwidth(self) -> Optional[pulumi.Input[int]]:
909
820
  """
910
- The average bandwidth in
911
- bits per second if ingress traffic shaping is enabled on the port.
821
+ The average ingress bandwidth in bits per second if ingress shaping is enabled on the port.
912
822
  """
913
823
  return pulumi.get(self, "ingress_shaping_average_bandwidth")
914
824
 
@@ -920,8 +830,7 @@ class DistributedVirtualSwitchArgs:
920
830
  @pulumi.getter(name="ingressShapingBurstSize")
921
831
  def ingress_shaping_burst_size(self) -> Optional[pulumi.Input[int]]:
922
832
  """
923
- The maximum burst size allowed in
924
- bytes if ingress traffic shaping is enabled on the port.
833
+ The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port.
925
834
  """
926
835
  return pulumi.get(self, "ingress_shaping_burst_size")
927
836
 
@@ -933,8 +842,7 @@ class DistributedVirtualSwitchArgs:
933
842
  @pulumi.getter(name="ingressShapingEnabled")
934
843
  def ingress_shaping_enabled(self) -> Optional[pulumi.Input[bool]]:
935
844
  """
936
- `true` if the traffic shaper is
937
- enabled on the port for ingress traffic.
845
+ True if the traffic shaper is enabled for ingress traffic on the port.
938
846
  """
939
847
  return pulumi.get(self, "ingress_shaping_enabled")
940
848
 
@@ -946,8 +854,7 @@ class DistributedVirtualSwitchArgs:
946
854
  @pulumi.getter(name="ingressShapingPeakBandwidth")
947
855
  def ingress_shaping_peak_bandwidth(self) -> Optional[pulumi.Input[int]]:
948
856
  """
949
- The peak bandwidth during
950
- bursts in bits per second if ingress traffic shaping is enabled on the port.
857
+ The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
951
858
  """
952
859
  return pulumi.get(self, "ingress_shaping_peak_bandwidth")
953
860
 
@@ -1034,8 +941,7 @@ class DistributedVirtualSwitchArgs:
1034
941
  @pulumi.getter(name="lacpEnabled")
1035
942
  def lacp_enabled(self) -> Optional[pulumi.Input[bool]]:
1036
943
  """
1037
- Enables LACP for the ports that this policy
1038
- applies to.
944
+ Whether or not to enable LACP on all uplink ports.
1039
945
  """
1040
946
  return pulumi.get(self, "lacp_enabled")
1041
947
 
@@ -1047,7 +953,7 @@ class DistributedVirtualSwitchArgs:
1047
953
  @pulumi.getter(name="lacpMode")
1048
954
  def lacp_mode(self) -> Optional[pulumi.Input[str]]:
1049
955
  """
1050
- The LACP mode. Can be one of `active` or `passive`.
956
+ The uplink LACP mode to use. Can be one of active or passive.
1051
957
  """
1052
958
  return pulumi.get(self, "lacp_mode")
1053
959
 
@@ -1170,9 +1076,7 @@ class DistributedVirtualSwitchArgs:
1170
1076
  @pulumi.getter(name="netflowActiveFlowTimeout")
1171
1077
  def netflow_active_flow_timeout(self) -> Optional[pulumi.Input[int]]:
1172
1078
  """
1173
- The number of seconds after which
1174
- active flows are forced to be exported to the collector. Allowed range is
1175
- `60` to `3600`. Default: `60`.
1079
+ The number of seconds after which active flows are forced to be exported to the collector.
1176
1080
  """
1177
1081
  return pulumi.get(self, "netflow_active_flow_timeout")
1178
1082
 
@@ -1184,9 +1088,7 @@ class DistributedVirtualSwitchArgs:
1184
1088
  @pulumi.getter(name="netflowCollectorIpAddress")
1185
1089
  def netflow_collector_ip_address(self) -> Optional[pulumi.Input[str]]:
1186
1090
  """
1187
- IP address for the Netflow
1188
- collector, using IPv4 or IPv6. IPv6 is supported in VDS version 6.0 or later.
1189
- Must be set before Netflow can be enabled.
1091
+ IP address for the netflow collector, using IPv4 or IPv6.
1190
1092
  """
1191
1093
  return pulumi.get(self, "netflow_collector_ip_address")
1192
1094
 
@@ -1198,8 +1100,7 @@ class DistributedVirtualSwitchArgs:
1198
1100
  @pulumi.getter(name="netflowCollectorPort")
1199
1101
  def netflow_collector_port(self) -> Optional[pulumi.Input[int]]:
1200
1102
  """
1201
- Port for the Netflow collector. This
1202
- must be set before Netflow can be enabled.
1103
+ The port for the netflow collector.
1203
1104
  """
1204
1105
  return pulumi.get(self, "netflow_collector_port")
1205
1106
 
@@ -1211,8 +1112,7 @@ class DistributedVirtualSwitchArgs:
1211
1112
  @pulumi.getter(name="netflowEnabled")
1212
1113
  def netflow_enabled(self) -> Optional[pulumi.Input[bool]]:
1213
1114
  """
1214
- Enables Netflow on all ports that this policy
1215
- applies to.
1115
+ Indicates whether to enable netflow on all ports.
1216
1116
  """
1217
1117
  return pulumi.get(self, "netflow_enabled")
1218
1118
 
@@ -1224,9 +1124,7 @@ class DistributedVirtualSwitchArgs:
1224
1124
  @pulumi.getter(name="netflowIdleFlowTimeout")
1225
1125
  def netflow_idle_flow_timeout(self) -> Optional[pulumi.Input[int]]:
1226
1126
  """
1227
- The number of seconds after which
1228
- idle flows are forced to be exported to the collector. Allowed range is `10`
1229
- to `600`. Default: `15`.
1127
+ The number of seconds after which idle flows are forced to be exported to the collector.
1230
1128
  """
1231
1129
  return pulumi.get(self, "netflow_idle_flow_timeout")
1232
1130
 
@@ -1238,9 +1136,7 @@ class DistributedVirtualSwitchArgs:
1238
1136
  @pulumi.getter(name="netflowInternalFlowsOnly")
1239
1137
  def netflow_internal_flows_only(self) -> Optional[pulumi.Input[bool]]:
1240
1138
  """
1241
- Whether to limit analysis to
1242
- traffic that has both source and destination served by the same host.
1243
- Default: `false`.
1139
+ Whether to limit analysis to traffic that has both source and destination served by the same host.
1244
1140
  """
1245
1141
  return pulumi.get(self, "netflow_internal_flows_only")
1246
1142
 
@@ -1252,8 +1148,7 @@ class DistributedVirtualSwitchArgs:
1252
1148
  @pulumi.getter(name="netflowObservationDomainId")
1253
1149
  def netflow_observation_domain_id(self) -> Optional[pulumi.Input[int]]:
1254
1150
  """
1255
- The observation domain ID for
1256
- the Netflow collector.
1151
+ The observation Domain ID for the netflow collector.
1257
1152
  """
1258
1153
  return pulumi.get(self, "netflow_observation_domain_id")
1259
1154
 
@@ -1265,11 +1160,8 @@ class DistributedVirtualSwitchArgs:
1265
1160
  @pulumi.getter(name="netflowSamplingRate")
1266
1161
  def netflow_sampling_rate(self) -> Optional[pulumi.Input[int]]:
1267
1162
  """
1268
- The ratio of total number of packets to
1269
- the number of packets analyzed. The default is `0`, which indicates that the
1270
- VDS should analyze all packets. The maximum value is `1000`, which
1271
- indicates an analysis rate of 0.001%!
1272
- (MISSING)
1163
+ The ratio of total number of packets to the number of packets analyzed. Set to 0 to disable sampling, meaning that all
1164
+ packets are analyzed.
1273
1165
  """
1274
1166
  return pulumi.get(self, "netflow_sampling_rate")
1275
1167
 
@@ -1281,8 +1173,7 @@ class DistributedVirtualSwitchArgs:
1281
1173
  @pulumi.getter(name="networkResourceControlEnabled")
1282
1174
  def network_resource_control_enabled(self) -> Optional[pulumi.Input[bool]]:
1283
1175
  """
1284
- Set to `true` to enable
1285
- network I/O control. Default: `false`.
1176
+ Whether or not to enable network resource control, enabling advanced traffic shaping and resource control features.
1286
1177
  """
1287
1178
  return pulumi.get(self, "network_resource_control_enabled")
1288
1179
 
@@ -1294,8 +1185,7 @@ class DistributedVirtualSwitchArgs:
1294
1185
  @pulumi.getter(name="networkResourceControlVersion")
1295
1186
  def network_resource_control_version(self) -> Optional[pulumi.Input[str]]:
1296
1187
  """
1297
- The version of network I/O
1298
- control to use. Can be one of `version2` or `version3`. Default: `version2`.
1188
+ The network I/O control version to use. Can be one of version2 or version3.
1299
1189
  """
1300
1190
  return pulumi.get(self, "network_resource_control_version")
1301
1191
 
@@ -1355,8 +1245,7 @@ class DistributedVirtualSwitchArgs:
1355
1245
  @pulumi.getter(name="notifySwitches")
1356
1246
  def notify_switches(self) -> Optional[pulumi.Input[bool]]:
1357
1247
  """
1358
- If `true`, the teaming policy will notify the
1359
- broadcast network of an uplink failover, triggering cache updates.
1248
+ If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
1360
1249
  """
1361
1250
  return pulumi.get(self, "notify_switches")
1362
1251
 
@@ -1368,8 +1257,7 @@ class DistributedVirtualSwitchArgs:
1368
1257
  @pulumi.getter(name="portPrivateSecondaryVlanId")
1369
1258
  def port_private_secondary_vlan_id(self) -> Optional[pulumi.Input[int]]:
1370
1259
  """
1371
- Used to define a secondary VLAN
1372
- ID when using private VLANs.
1260
+ The secondary VLAN ID for this port.
1373
1261
  """
1374
1262
  return pulumi.get(self, "port_private_secondary_vlan_id")
1375
1263
 
@@ -1381,8 +1269,7 @@ class DistributedVirtualSwitchArgs:
1381
1269
  @pulumi.getter(name="pvlanMappings")
1382
1270
  def pvlan_mappings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchPvlanMappingArgs']]]]:
1383
1271
  """
1384
- Use the `pvlan_mapping` block to declare a
1385
- private VLAN mapping. The options are:
1272
+ A private VLAN (PVLAN) mapping.
1386
1273
  """
1387
1274
  return pulumi.get(self, "pvlan_mappings")
1388
1275
 
@@ -1394,10 +1281,7 @@ class DistributedVirtualSwitchArgs:
1394
1281
  @pulumi.getter(name="standbyUplinks")
1395
1282
  def standby_uplinks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1396
1283
  """
1397
- A list of standby uplinks to be used in
1398
- failover. These uplinks need to match the definitions in the
1399
- `uplinks` VDS argument. See
1400
- here for more details.
1284
+ List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
1401
1285
  """
1402
1286
  return pulumi.get(self, "standby_uplinks")
1403
1287
 
@@ -1410,8 +1294,6 @@ class DistributedVirtualSwitchArgs:
1410
1294
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1411
1295
  """
1412
1296
  The IDs of any tags to attach to this resource.
1413
-
1414
- > **NOTE:** Tagging support requires vCenter Server 6.0 or higher.
1415
1297
  """
1416
1298
  return pulumi.get(self, "tags")
1417
1299
 
@@ -1423,9 +1305,8 @@ class DistributedVirtualSwitchArgs:
1423
1305
  @pulumi.getter(name="teamingPolicy")
1424
1306
  def teaming_policy(self) -> Optional[pulumi.Input[str]]:
1425
1307
  """
1426
- The uplink teaming policy. Can be one of
1427
- `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`,
1428
- `failover_explicit`, or `loadbalance_loadbased`.
1308
+ The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid,
1309
+ failover_explicit, or loadbalance_loadbased.
1429
1310
  """
1430
1311
  return pulumi.get(self, "teaming_policy")
1431
1312
 
@@ -1437,8 +1318,8 @@ class DistributedVirtualSwitchArgs:
1437
1318
  @pulumi.getter(name="txUplink")
1438
1319
  def tx_uplink(self) -> Optional[pulumi.Input[bool]]:
1439
1320
  """
1440
- Forward all traffic transmitted by ports for which
1441
- this policy applies to its VDS uplinks.
1321
+ If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet
1322
+ forwarded done by the switch.
1442
1323
  """
1443
1324
  return pulumi.get(self, "tx_uplink")
1444
1325
 
@@ -1450,11 +1331,8 @@ class DistributedVirtualSwitchArgs:
1450
1331
  @pulumi.getter
1451
1332
  def uplinks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
1452
1333
  """
1453
- A list of strings that uniquely identifies the names
1454
- of the uplinks on the VDS across hosts. The number of items in this list
1455
- controls the number of uplinks that exist on the VDS, in addition to the
1456
- names. See here for an example on how to
1457
- use this option.
1334
+ A list of uplink ports. The contents of this list control both the uplink count and names of the uplinks on the DVS
1335
+ across hosts.
1458
1336
  """
1459
1337
  return pulumi.get(self, "uplinks")
1460
1338
 
@@ -1588,28 +1466,7 @@ class DistributedVirtualSwitchArgs:
1588
1466
  @pulumi.getter(name="vlanRanges")
1589
1467
  def vlan_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchVlanRangeArgs']]]]:
1590
1468
  """
1591
- Used to denote VLAN trunking. Use the `min_vlan`
1592
- and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple
1593
- `vlan_range` definitions are allowed, but they must not overlap. Example
1594
- below:
1595
-
1596
- <!--Start PulumiCodeChooser -->
1597
- ```python
1598
- import pulumi
1599
- import pulumi_vsphere as vsphere
1600
-
1601
- vds = vsphere.DistributedVirtualSwitch("vds", vlan_ranges=[
1602
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
1603
- max_vlan=199,
1604
- min_vlan=100,
1605
- ),
1606
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
1607
- max_vlan=399,
1608
- min_vlan=300,
1609
- ),
1610
- ])
1611
- ```
1612
- <!--End PulumiCodeChooser -->
1469
+ The VLAN ID for single VLAN mode. 0 denotes no VLAN.
1613
1470
  """
1614
1471
  return pulumi.get(self, "vlan_ranges")
1615
1472
 
@@ -1814,29 +1671,17 @@ class _DistributedVirtualSwitchState:
1814
1671
  vsan_share_level: Optional[pulumi.Input[str]] = None):
1815
1672
  """
1816
1673
  Input properties used for looking up and filtering DistributedVirtualSwitch resources.
1817
- :param pulumi.Input[Sequence[pulumi.Input[str]]] active_uplinks: A list of active uplinks to be used in load
1818
- balancing. These uplinks need to match the definitions in the
1819
- `uplinks` VDS argument. See
1820
- here for more details.
1821
- :param pulumi.Input[bool] allow_forged_transmits: Controls whether or not a virtual
1822
- network adapter is allowed to send network traffic with a different MAC
1823
- address than that of its own.
1824
- :param pulumi.Input[bool] allow_mac_changes: Controls whether or not the Media Access
1825
- Control (MAC) address can be changed.
1826
- :param pulumi.Input[bool] allow_promiscuous: Enable promiscuous mode on the network. This
1827
- flag indicates whether or not all traffic is seen on a given port.
1674
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] active_uplinks: List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
1675
+ :param pulumi.Input[bool] allow_forged_transmits: Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than
1676
+ that of its own.
1677
+ :param pulumi.Input[bool] allow_mac_changes: Controls whether or not the Media Access Control (MAC) address can be changed.
1678
+ :param pulumi.Input[bool] allow_promiscuous: Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
1828
1679
  :param pulumi.Input[int] backupnfc_maximum_mbit: The maximum allowed usage for the backupNfc traffic class, in Mbits/sec.
1829
1680
  :param pulumi.Input[int] backupnfc_reservation_mbit: The amount of guaranteed bandwidth for the backupNfc traffic class, in Mbits/sec.
1830
1681
  :param pulumi.Input[int] backupnfc_share_count: The amount of shares to allocate to the backupNfc traffic class for a custom share level.
1831
1682
  :param pulumi.Input[str] backupnfc_share_level: The allocation level for the backupNfc traffic class. Can be one of high, low, normal, or custom.
1832
- :param pulumi.Input[bool] block_all_ports: Shuts down all ports in the port groups that
1833
- this policy applies to, effectively blocking all network access to connected
1834
- virtual devices.
1835
- :param pulumi.Input[bool] check_beacon: Enables beacon probing as an additional measure
1836
- to detect NIC failure.
1837
-
1838
- > **NOTE:** VMware recommends using a minimum of 3 NICs when using beacon
1839
- probing.
1683
+ :param pulumi.Input[bool] block_all_ports: Indicates whether to block all ports by default.
1684
+ :param pulumi.Input[bool] check_beacon: Enable beacon probing on the ports this policy applies to.
1840
1685
  :param pulumi.Input[str] config_version: The current version of the VDS configuration, incremented
1841
1686
  by subsequent updates to the VDS.
1842
1687
  :param pulumi.Input[str] contact_detail: The detailed contact information for the person
@@ -1851,18 +1696,12 @@ class _DistributedVirtualSwitchState:
1851
1696
  :param pulumi.Input[str] datacenter_id: The ID of the datacenter where the VDS will be
1852
1697
  created. Forces a new resource if changed.
1853
1698
  :param pulumi.Input[str] description: A detailed description for the VDS.
1854
- :param pulumi.Input[bool] directpath_gen2_allowed: Allow VMDirectPath Gen2 for the ports
1855
- for which this policy applies to.
1856
- :param pulumi.Input[int] egress_shaping_average_bandwidth: The average bandwidth in bits
1857
- per second if egress traffic shaping is enabled on the port.
1858
- :param pulumi.Input[int] egress_shaping_burst_size: The maximum burst size allowed in
1859
- bytes if egress traffic shaping is enabled on the port.
1860
- :param pulumi.Input[bool] egress_shaping_enabled: `true` if the traffic shaper is enabled
1861
- on the port for egress traffic.
1862
- :param pulumi.Input[int] egress_shaping_peak_bandwidth: The peak bandwidth during bursts
1863
- in bits per second if egress traffic shaping is enabled on the port.
1864
- :param pulumi.Input[bool] failback: If `true`, the teaming policy will re-activate failed
1865
- uplinks higher in precedence when they come back up.
1699
+ :param pulumi.Input[bool] directpath_gen2_allowed: Allow VMDirectPath Gen2 on the ports this policy applies to.
1700
+ :param pulumi.Input[int] egress_shaping_average_bandwidth: The average egress bandwidth in bits per second if egress shaping is enabled on the port.
1701
+ :param pulumi.Input[int] egress_shaping_burst_size: The maximum egress burst size allowed in bytes if egress shaping is enabled on the port.
1702
+ :param pulumi.Input[bool] egress_shaping_enabled: True if the traffic shaper is enabled for egress traffic on the port.
1703
+ :param pulumi.Input[int] egress_shaping_peak_bandwidth: The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
1704
+ :param pulumi.Input[bool] failback: If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
1866
1705
  :param pulumi.Input[int] faulttolerance_maximum_mbit: The maximum allowed usage for the faultTolerance traffic class, in Mbits/sec.
1867
1706
  :param pulumi.Input[int] faulttolerance_reservation_mbit: The amount of guaranteed bandwidth for the faultTolerance traffic class, in Mbits/sec.
1868
1707
  :param pulumi.Input[int] faulttolerance_share_count: The amount of shares to allocate to the faultTolerance traffic class for a custom share level.
@@ -1873,18 +1712,12 @@ class _DistributedVirtualSwitchState:
1873
1712
  :param pulumi.Input[int] hbr_reservation_mbit: The amount of guaranteed bandwidth for the hbr traffic class, in Mbits/sec.
1874
1713
  :param pulumi.Input[int] hbr_share_count: The amount of shares to allocate to the hbr traffic class for a custom share level.
1875
1714
  :param pulumi.Input[str] hbr_share_level: The allocation level for the hbr traffic class. Can be one of high, low, normal, or custom.
1876
- :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchHostArgs']]] hosts: Use the `host` block to declare a host specification. The
1877
- options are:
1878
- :param pulumi.Input[bool] ignore_other_pvlan_mappings: Whether to ignore existing PVLAN
1879
- mappings not managed by this resource. Defaults to false.
1880
- :param pulumi.Input[int] ingress_shaping_average_bandwidth: The average bandwidth in
1881
- bits per second if ingress traffic shaping is enabled on the port.
1882
- :param pulumi.Input[int] ingress_shaping_burst_size: The maximum burst size allowed in
1883
- bytes if ingress traffic shaping is enabled on the port.
1884
- :param pulumi.Input[bool] ingress_shaping_enabled: `true` if the traffic shaper is
1885
- enabled on the port for ingress traffic.
1886
- :param pulumi.Input[int] ingress_shaping_peak_bandwidth: The peak bandwidth during
1887
- bursts in bits per second if ingress traffic shaping is enabled on the port.
1715
+ :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchHostArgs']]] hosts: A host member specification.
1716
+ :param pulumi.Input[bool] ignore_other_pvlan_mappings: Whether to ignore existing PVLAN mappings not managed by this resource. Defaults to false.
1717
+ :param pulumi.Input[int] ingress_shaping_average_bandwidth: The average ingress bandwidth in bits per second if ingress shaping is enabled on the port.
1718
+ :param pulumi.Input[int] ingress_shaping_burst_size: The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port.
1719
+ :param pulumi.Input[bool] ingress_shaping_enabled: True if the traffic shaper is enabled for ingress traffic on the port.
1720
+ :param pulumi.Input[int] ingress_shaping_peak_bandwidth: The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
1888
1721
  :param pulumi.Input[str] ipv4_address: An IPv4 address to identify the switch. This is
1889
1722
  mostly useful when used with the Netflow arguments.
1890
1723
  :param pulumi.Input[int] iscsi_maximum_mbit: The maximum allowed usage for the iSCSI traffic class, in Mbits/sec.
@@ -1894,9 +1727,8 @@ class _DistributedVirtualSwitchState:
1894
1727
  :param pulumi.Input[str] lacp_api_version: The Link Aggregation Control Protocol group
1895
1728
  version to use with the VDS. Possible values are `singleLag` and
1896
1729
  `multipleLag`.
1897
- :param pulumi.Input[bool] lacp_enabled: Enables LACP for the ports that this policy
1898
- applies to.
1899
- :param pulumi.Input[str] lacp_mode: The LACP mode. Can be one of `active` or `passive`.
1730
+ :param pulumi.Input[bool] lacp_enabled: Whether or not to enable LACP on all uplink ports.
1731
+ :param pulumi.Input[str] lacp_mode: The uplink LACP mode to use. Can be one of active or passive.
1900
1732
  :param pulumi.Input[str] link_discovery_operation: Whether to `advertise` or `listen`
1901
1733
  for link discovery traffic.
1902
1734
  :param pulumi.Input[str] link_discovery_protocol: The discovery protocol type. Valid
@@ -1909,60 +1741,32 @@ class _DistributedVirtualSwitchState:
1909
1741
  :param pulumi.Input[str] multicast_filtering_mode: The multicast filtering mode to use
1910
1742
  with the VDS. Can be one of `legacyFiltering` or `snooping`.
1911
1743
  :param pulumi.Input[str] name: The name of the VDS.
1912
- :param pulumi.Input[int] netflow_active_flow_timeout: The number of seconds after which
1913
- active flows are forced to be exported to the collector. Allowed range is
1914
- `60` to `3600`. Default: `60`.
1915
- :param pulumi.Input[str] netflow_collector_ip_address: IP address for the Netflow
1916
- collector, using IPv4 or IPv6. IPv6 is supported in VDS version 6.0 or later.
1917
- Must be set before Netflow can be enabled.
1918
- :param pulumi.Input[int] netflow_collector_port: Port for the Netflow collector. This
1919
- must be set before Netflow can be enabled.
1920
- :param pulumi.Input[bool] netflow_enabled: Enables Netflow on all ports that this policy
1921
- applies to.
1922
- :param pulumi.Input[int] netflow_idle_flow_timeout: The number of seconds after which
1923
- idle flows are forced to be exported to the collector. Allowed range is `10`
1924
- to `600`. Default: `15`.
1925
- :param pulumi.Input[bool] netflow_internal_flows_only: Whether to limit analysis to
1926
- traffic that has both source and destination served by the same host.
1927
- Default: `false`.
1928
- :param pulumi.Input[int] netflow_observation_domain_id: The observation domain ID for
1929
- the Netflow collector.
1930
- :param pulumi.Input[int] netflow_sampling_rate: The ratio of total number of packets to
1931
- the number of packets analyzed. The default is `0`, which indicates that the
1932
- VDS should analyze all packets. The maximum value is `1000`, which
1933
- indicates an analysis rate of 0.001%!
1934
- (MISSING)
1935
- :param pulumi.Input[bool] network_resource_control_enabled: Set to `true` to enable
1936
- network I/O control. Default: `false`.
1937
- :param pulumi.Input[str] network_resource_control_version: The version of network I/O
1938
- control to use. Can be one of `version2` or `version3`. Default: `version2`.
1744
+ :param pulumi.Input[int] netflow_active_flow_timeout: The number of seconds after which active flows are forced to be exported to the collector.
1745
+ :param pulumi.Input[str] netflow_collector_ip_address: IP address for the netflow collector, using IPv4 or IPv6.
1746
+ :param pulumi.Input[int] netflow_collector_port: The port for the netflow collector.
1747
+ :param pulumi.Input[bool] netflow_enabled: Indicates whether to enable netflow on all ports.
1748
+ :param pulumi.Input[int] netflow_idle_flow_timeout: The number of seconds after which idle flows are forced to be exported to the collector.
1749
+ :param pulumi.Input[bool] netflow_internal_flows_only: Whether to limit analysis to traffic that has both source and destination served by the same host.
1750
+ :param pulumi.Input[int] netflow_observation_domain_id: The observation Domain ID for the netflow collector.
1751
+ :param pulumi.Input[int] netflow_sampling_rate: The ratio of total number of packets to the number of packets analyzed. Set to 0 to disable sampling, meaning that all
1752
+ packets are analyzed.
1753
+ :param pulumi.Input[bool] network_resource_control_enabled: Whether or not to enable network resource control, enabling advanced traffic shaping and resource control features.
1754
+ :param pulumi.Input[str] network_resource_control_version: The network I/O control version to use. Can be one of version2 or version3.
1939
1755
  :param pulumi.Input[int] nfs_maximum_mbit: The maximum allowed usage for the nfs traffic class, in Mbits/sec.
1940
1756
  :param pulumi.Input[int] nfs_reservation_mbit: The amount of guaranteed bandwidth for the nfs traffic class, in Mbits/sec.
1941
1757
  :param pulumi.Input[int] nfs_share_count: The amount of shares to allocate to the nfs traffic class for a custom share level.
1942
1758
  :param pulumi.Input[str] nfs_share_level: The allocation level for the nfs traffic class. Can be one of high, low, normal, or custom.
1943
- :param pulumi.Input[bool] notify_switches: If `true`, the teaming policy will notify the
1944
- broadcast network of an uplink failover, triggering cache updates.
1945
- :param pulumi.Input[int] port_private_secondary_vlan_id: Used to define a secondary VLAN
1946
- ID when using private VLANs.
1947
- :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchPvlanMappingArgs']]] pvlan_mappings: Use the `pvlan_mapping` block to declare a
1948
- private VLAN mapping. The options are:
1949
- :param pulumi.Input[Sequence[pulumi.Input[str]]] standby_uplinks: A list of standby uplinks to be used in
1950
- failover. These uplinks need to match the definitions in the
1951
- `uplinks` VDS argument. See
1952
- here for more details.
1759
+ :param pulumi.Input[bool] notify_switches: If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
1760
+ :param pulumi.Input[int] port_private_secondary_vlan_id: The secondary VLAN ID for this port.
1761
+ :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchPvlanMappingArgs']]] pvlan_mappings: A private VLAN (PVLAN) mapping.
1762
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] standby_uplinks: List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
1953
1763
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The IDs of any tags to attach to this resource.
1954
-
1955
- > **NOTE:** Tagging support requires vCenter Server 6.0 or higher.
1956
- :param pulumi.Input[str] teaming_policy: The uplink teaming policy. Can be one of
1957
- `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`,
1958
- `failover_explicit`, or `loadbalance_loadbased`.
1959
- :param pulumi.Input[bool] tx_uplink: Forward all traffic transmitted by ports for which
1960
- this policy applies to its VDS uplinks.
1961
- :param pulumi.Input[Sequence[pulumi.Input[str]]] uplinks: A list of strings that uniquely identifies the names
1962
- of the uplinks on the VDS across hosts. The number of items in this list
1963
- controls the number of uplinks that exist on the VDS, in addition to the
1964
- names. See here for an example on how to
1965
- use this option.
1764
+ :param pulumi.Input[str] teaming_policy: The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid,
1765
+ failover_explicit, or loadbalance_loadbased.
1766
+ :param pulumi.Input[bool] tx_uplink: If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet
1767
+ forwarded done by the switch.
1768
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] uplinks: A list of uplink ports. The contents of this list control both the uplink count and names of the uplinks on the DVS
1769
+ across hosts.
1966
1770
  :param pulumi.Input[int] vdp_maximum_mbit: The maximum allowed usage for the vdp traffic class, in Mbits/sec.
1967
1771
  :param pulumi.Input[int] vdp_reservation_mbit: The amount of guaranteed bandwidth for the vdp traffic class, in Mbits/sec.
1968
1772
  :param pulumi.Input[int] vdp_share_count: The amount of shares to allocate to the vdp traffic class for a custom share level.
@@ -1975,28 +1779,7 @@ class _DistributedVirtualSwitchState:
1975
1779
  :param pulumi.Input[int] virtualmachine_share_count: The amount of shares to allocate to the virtualMachine traffic class for a custom share level.
1976
1780
  :param pulumi.Input[str] virtualmachine_share_level: The allocation level for the virtualMachine traffic class. Can be one of high, low, normal, or custom.
1977
1781
  :param pulumi.Input[int] vlan_id: The VLAN ID for single VLAN mode. 0 denotes no VLAN.
1978
- :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchVlanRangeArgs']]] vlan_ranges: Used to denote VLAN trunking. Use the `min_vlan`
1979
- and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple
1980
- `vlan_range` definitions are allowed, but they must not overlap. Example
1981
- below:
1982
-
1983
- <!--Start PulumiCodeChooser -->
1984
- ```python
1985
- import pulumi
1986
- import pulumi_vsphere as vsphere
1987
-
1988
- vds = vsphere.DistributedVirtualSwitch("vds", vlan_ranges=[
1989
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
1990
- max_vlan=199,
1991
- min_vlan=100,
1992
- ),
1993
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
1994
- max_vlan=399,
1995
- min_vlan=300,
1996
- ),
1997
- ])
1998
- ```
1999
- <!--End PulumiCodeChooser -->
1782
+ :param pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchVlanRangeArgs']]] vlan_ranges: The VLAN ID for single VLAN mode. 0 denotes no VLAN.
2000
1783
  :param pulumi.Input[int] vmotion_maximum_mbit: The maximum allowed usage for the vmotion traffic class, in Mbits/sec.
2001
1784
  :param pulumi.Input[int] vmotion_reservation_mbit: The amount of guaranteed bandwidth for the vmotion traffic class, in Mbits/sec.
2002
1785
  :param pulumi.Input[int] vmotion_share_count: The amount of shares to allocate to the vmotion traffic class for a custom share level.
@@ -2201,10 +1984,7 @@ class _DistributedVirtualSwitchState:
2201
1984
  @pulumi.getter(name="activeUplinks")
2202
1985
  def active_uplinks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
2203
1986
  """
2204
- A list of active uplinks to be used in load
2205
- balancing. These uplinks need to match the definitions in the
2206
- `uplinks` VDS argument. See
2207
- here for more details.
1987
+ List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
2208
1988
  """
2209
1989
  return pulumi.get(self, "active_uplinks")
2210
1990
 
@@ -2216,9 +1996,8 @@ class _DistributedVirtualSwitchState:
2216
1996
  @pulumi.getter(name="allowForgedTransmits")
2217
1997
  def allow_forged_transmits(self) -> Optional[pulumi.Input[bool]]:
2218
1998
  """
2219
- Controls whether or not a virtual
2220
- network adapter is allowed to send network traffic with a different MAC
2221
- address than that of its own.
1999
+ Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than
2000
+ that of its own.
2222
2001
  """
2223
2002
  return pulumi.get(self, "allow_forged_transmits")
2224
2003
 
@@ -2230,8 +2009,7 @@ class _DistributedVirtualSwitchState:
2230
2009
  @pulumi.getter(name="allowMacChanges")
2231
2010
  def allow_mac_changes(self) -> Optional[pulumi.Input[bool]]:
2232
2011
  """
2233
- Controls whether or not the Media Access
2234
- Control (MAC) address can be changed.
2012
+ Controls whether or not the Media Access Control (MAC) address can be changed.
2235
2013
  """
2236
2014
  return pulumi.get(self, "allow_mac_changes")
2237
2015
 
@@ -2243,8 +2021,7 @@ class _DistributedVirtualSwitchState:
2243
2021
  @pulumi.getter(name="allowPromiscuous")
2244
2022
  def allow_promiscuous(self) -> Optional[pulumi.Input[bool]]:
2245
2023
  """
2246
- Enable promiscuous mode on the network. This
2247
- flag indicates whether or not all traffic is seen on a given port.
2024
+ Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
2248
2025
  """
2249
2026
  return pulumi.get(self, "allow_promiscuous")
2250
2027
 
@@ -2304,9 +2081,7 @@ class _DistributedVirtualSwitchState:
2304
2081
  @pulumi.getter(name="blockAllPorts")
2305
2082
  def block_all_ports(self) -> Optional[pulumi.Input[bool]]:
2306
2083
  """
2307
- Shuts down all ports in the port groups that
2308
- this policy applies to, effectively blocking all network access to connected
2309
- virtual devices.
2084
+ Indicates whether to block all ports by default.
2310
2085
  """
2311
2086
  return pulumi.get(self, "block_all_ports")
2312
2087
 
@@ -2318,11 +2093,7 @@ class _DistributedVirtualSwitchState:
2318
2093
  @pulumi.getter(name="checkBeacon")
2319
2094
  def check_beacon(self) -> Optional[pulumi.Input[bool]]:
2320
2095
  """
2321
- Enables beacon probing as an additional measure
2322
- to detect NIC failure.
2323
-
2324
- > **NOTE:** VMware recommends using a minimum of 3 NICs when using beacon
2325
- probing.
2096
+ Enable beacon probing on the ports this policy applies to.
2326
2097
  """
2327
2098
  return pulumi.get(self, "check_beacon")
2328
2099
 
@@ -2414,8 +2185,7 @@ class _DistributedVirtualSwitchState:
2414
2185
  @pulumi.getter(name="directpathGen2Allowed")
2415
2186
  def directpath_gen2_allowed(self) -> Optional[pulumi.Input[bool]]:
2416
2187
  """
2417
- Allow VMDirectPath Gen2 for the ports
2418
- for which this policy applies to.
2188
+ Allow VMDirectPath Gen2 on the ports this policy applies to.
2419
2189
  """
2420
2190
  return pulumi.get(self, "directpath_gen2_allowed")
2421
2191
 
@@ -2427,8 +2197,7 @@ class _DistributedVirtualSwitchState:
2427
2197
  @pulumi.getter(name="egressShapingAverageBandwidth")
2428
2198
  def egress_shaping_average_bandwidth(self) -> Optional[pulumi.Input[int]]:
2429
2199
  """
2430
- The average bandwidth in bits
2431
- per second if egress traffic shaping is enabled on the port.
2200
+ The average egress bandwidth in bits per second if egress shaping is enabled on the port.
2432
2201
  """
2433
2202
  return pulumi.get(self, "egress_shaping_average_bandwidth")
2434
2203
 
@@ -2440,8 +2209,7 @@ class _DistributedVirtualSwitchState:
2440
2209
  @pulumi.getter(name="egressShapingBurstSize")
2441
2210
  def egress_shaping_burst_size(self) -> Optional[pulumi.Input[int]]:
2442
2211
  """
2443
- The maximum burst size allowed in
2444
- bytes if egress traffic shaping is enabled on the port.
2212
+ The maximum egress burst size allowed in bytes if egress shaping is enabled on the port.
2445
2213
  """
2446
2214
  return pulumi.get(self, "egress_shaping_burst_size")
2447
2215
 
@@ -2453,8 +2221,7 @@ class _DistributedVirtualSwitchState:
2453
2221
  @pulumi.getter(name="egressShapingEnabled")
2454
2222
  def egress_shaping_enabled(self) -> Optional[pulumi.Input[bool]]:
2455
2223
  """
2456
- `true` if the traffic shaper is enabled
2457
- on the port for egress traffic.
2224
+ True if the traffic shaper is enabled for egress traffic on the port.
2458
2225
  """
2459
2226
  return pulumi.get(self, "egress_shaping_enabled")
2460
2227
 
@@ -2466,8 +2233,7 @@ class _DistributedVirtualSwitchState:
2466
2233
  @pulumi.getter(name="egressShapingPeakBandwidth")
2467
2234
  def egress_shaping_peak_bandwidth(self) -> Optional[pulumi.Input[int]]:
2468
2235
  """
2469
- The peak bandwidth during bursts
2470
- in bits per second if egress traffic shaping is enabled on the port.
2236
+ The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
2471
2237
  """
2472
2238
  return pulumi.get(self, "egress_shaping_peak_bandwidth")
2473
2239
 
@@ -2479,8 +2245,7 @@ class _DistributedVirtualSwitchState:
2479
2245
  @pulumi.getter
2480
2246
  def failback(self) -> Optional[pulumi.Input[bool]]:
2481
2247
  """
2482
- If `true`, the teaming policy will re-activate failed
2483
- uplinks higher in precedence when they come back up.
2248
+ If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
2484
2249
  """
2485
2250
  return pulumi.get(self, "failback")
2486
2251
 
@@ -2601,8 +2366,7 @@ class _DistributedVirtualSwitchState:
2601
2366
  @pulumi.getter
2602
2367
  def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchHostArgs']]]]:
2603
2368
  """
2604
- Use the `host` block to declare a host specification. The
2605
- options are:
2369
+ A host member specification.
2606
2370
  """
2607
2371
  return pulumi.get(self, "hosts")
2608
2372
 
@@ -2614,8 +2378,7 @@ class _DistributedVirtualSwitchState:
2614
2378
  @pulumi.getter(name="ignoreOtherPvlanMappings")
2615
2379
  def ignore_other_pvlan_mappings(self) -> Optional[pulumi.Input[bool]]:
2616
2380
  """
2617
- Whether to ignore existing PVLAN
2618
- mappings not managed by this resource. Defaults to false.
2381
+ Whether to ignore existing PVLAN mappings not managed by this resource. Defaults to false.
2619
2382
  """
2620
2383
  return pulumi.get(self, "ignore_other_pvlan_mappings")
2621
2384
 
@@ -2627,8 +2390,7 @@ class _DistributedVirtualSwitchState:
2627
2390
  @pulumi.getter(name="ingressShapingAverageBandwidth")
2628
2391
  def ingress_shaping_average_bandwidth(self) -> Optional[pulumi.Input[int]]:
2629
2392
  """
2630
- The average bandwidth in
2631
- bits per second if ingress traffic shaping is enabled on the port.
2393
+ The average ingress bandwidth in bits per second if ingress shaping is enabled on the port.
2632
2394
  """
2633
2395
  return pulumi.get(self, "ingress_shaping_average_bandwidth")
2634
2396
 
@@ -2640,8 +2402,7 @@ class _DistributedVirtualSwitchState:
2640
2402
  @pulumi.getter(name="ingressShapingBurstSize")
2641
2403
  def ingress_shaping_burst_size(self) -> Optional[pulumi.Input[int]]:
2642
2404
  """
2643
- The maximum burst size allowed in
2644
- bytes if ingress traffic shaping is enabled on the port.
2405
+ The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port.
2645
2406
  """
2646
2407
  return pulumi.get(self, "ingress_shaping_burst_size")
2647
2408
 
@@ -2653,8 +2414,7 @@ class _DistributedVirtualSwitchState:
2653
2414
  @pulumi.getter(name="ingressShapingEnabled")
2654
2415
  def ingress_shaping_enabled(self) -> Optional[pulumi.Input[bool]]:
2655
2416
  """
2656
- `true` if the traffic shaper is
2657
- enabled on the port for ingress traffic.
2417
+ True if the traffic shaper is enabled for ingress traffic on the port.
2658
2418
  """
2659
2419
  return pulumi.get(self, "ingress_shaping_enabled")
2660
2420
 
@@ -2666,8 +2426,7 @@ class _DistributedVirtualSwitchState:
2666
2426
  @pulumi.getter(name="ingressShapingPeakBandwidth")
2667
2427
  def ingress_shaping_peak_bandwidth(self) -> Optional[pulumi.Input[int]]:
2668
2428
  """
2669
- The peak bandwidth during
2670
- bursts in bits per second if ingress traffic shaping is enabled on the port.
2429
+ The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
2671
2430
  """
2672
2431
  return pulumi.get(self, "ingress_shaping_peak_bandwidth")
2673
2432
 
@@ -2754,8 +2513,7 @@ class _DistributedVirtualSwitchState:
2754
2513
  @pulumi.getter(name="lacpEnabled")
2755
2514
  def lacp_enabled(self) -> Optional[pulumi.Input[bool]]:
2756
2515
  """
2757
- Enables LACP for the ports that this policy
2758
- applies to.
2516
+ Whether or not to enable LACP on all uplink ports.
2759
2517
  """
2760
2518
  return pulumi.get(self, "lacp_enabled")
2761
2519
 
@@ -2767,7 +2525,7 @@ class _DistributedVirtualSwitchState:
2767
2525
  @pulumi.getter(name="lacpMode")
2768
2526
  def lacp_mode(self) -> Optional[pulumi.Input[str]]:
2769
2527
  """
2770
- The LACP mode. Can be one of `active` or `passive`.
2528
+ The uplink LACP mode to use. Can be one of active or passive.
2771
2529
  """
2772
2530
  return pulumi.get(self, "lacp_mode")
2773
2531
 
@@ -2890,9 +2648,7 @@ class _DistributedVirtualSwitchState:
2890
2648
  @pulumi.getter(name="netflowActiveFlowTimeout")
2891
2649
  def netflow_active_flow_timeout(self) -> Optional[pulumi.Input[int]]:
2892
2650
  """
2893
- The number of seconds after which
2894
- active flows are forced to be exported to the collector. Allowed range is
2895
- `60` to `3600`. Default: `60`.
2651
+ The number of seconds after which active flows are forced to be exported to the collector.
2896
2652
  """
2897
2653
  return pulumi.get(self, "netflow_active_flow_timeout")
2898
2654
 
@@ -2904,9 +2660,7 @@ class _DistributedVirtualSwitchState:
2904
2660
  @pulumi.getter(name="netflowCollectorIpAddress")
2905
2661
  def netflow_collector_ip_address(self) -> Optional[pulumi.Input[str]]:
2906
2662
  """
2907
- IP address for the Netflow
2908
- collector, using IPv4 or IPv6. IPv6 is supported in VDS version 6.0 or later.
2909
- Must be set before Netflow can be enabled.
2663
+ IP address for the netflow collector, using IPv4 or IPv6.
2910
2664
  """
2911
2665
  return pulumi.get(self, "netflow_collector_ip_address")
2912
2666
 
@@ -2918,8 +2672,7 @@ class _DistributedVirtualSwitchState:
2918
2672
  @pulumi.getter(name="netflowCollectorPort")
2919
2673
  def netflow_collector_port(self) -> Optional[pulumi.Input[int]]:
2920
2674
  """
2921
- Port for the Netflow collector. This
2922
- must be set before Netflow can be enabled.
2675
+ The port for the netflow collector.
2923
2676
  """
2924
2677
  return pulumi.get(self, "netflow_collector_port")
2925
2678
 
@@ -2931,8 +2684,7 @@ class _DistributedVirtualSwitchState:
2931
2684
  @pulumi.getter(name="netflowEnabled")
2932
2685
  def netflow_enabled(self) -> Optional[pulumi.Input[bool]]:
2933
2686
  """
2934
- Enables Netflow on all ports that this policy
2935
- applies to.
2687
+ Indicates whether to enable netflow on all ports.
2936
2688
  """
2937
2689
  return pulumi.get(self, "netflow_enabled")
2938
2690
 
@@ -2944,9 +2696,7 @@ class _DistributedVirtualSwitchState:
2944
2696
  @pulumi.getter(name="netflowIdleFlowTimeout")
2945
2697
  def netflow_idle_flow_timeout(self) -> Optional[pulumi.Input[int]]:
2946
2698
  """
2947
- The number of seconds after which
2948
- idle flows are forced to be exported to the collector. Allowed range is `10`
2949
- to `600`. Default: `15`.
2699
+ The number of seconds after which idle flows are forced to be exported to the collector.
2950
2700
  """
2951
2701
  return pulumi.get(self, "netflow_idle_flow_timeout")
2952
2702
 
@@ -2958,9 +2708,7 @@ class _DistributedVirtualSwitchState:
2958
2708
  @pulumi.getter(name="netflowInternalFlowsOnly")
2959
2709
  def netflow_internal_flows_only(self) -> Optional[pulumi.Input[bool]]:
2960
2710
  """
2961
- Whether to limit analysis to
2962
- traffic that has both source and destination served by the same host.
2963
- Default: `false`.
2711
+ Whether to limit analysis to traffic that has both source and destination served by the same host.
2964
2712
  """
2965
2713
  return pulumi.get(self, "netflow_internal_flows_only")
2966
2714
 
@@ -2972,8 +2720,7 @@ class _DistributedVirtualSwitchState:
2972
2720
  @pulumi.getter(name="netflowObservationDomainId")
2973
2721
  def netflow_observation_domain_id(self) -> Optional[pulumi.Input[int]]:
2974
2722
  """
2975
- The observation domain ID for
2976
- the Netflow collector.
2723
+ The observation Domain ID for the netflow collector.
2977
2724
  """
2978
2725
  return pulumi.get(self, "netflow_observation_domain_id")
2979
2726
 
@@ -2985,11 +2732,8 @@ class _DistributedVirtualSwitchState:
2985
2732
  @pulumi.getter(name="netflowSamplingRate")
2986
2733
  def netflow_sampling_rate(self) -> Optional[pulumi.Input[int]]:
2987
2734
  """
2988
- The ratio of total number of packets to
2989
- the number of packets analyzed. The default is `0`, which indicates that the
2990
- VDS should analyze all packets. The maximum value is `1000`, which
2991
- indicates an analysis rate of 0.001%!
2992
- (MISSING)
2735
+ The ratio of total number of packets to the number of packets analyzed. Set to 0 to disable sampling, meaning that all
2736
+ packets are analyzed.
2993
2737
  """
2994
2738
  return pulumi.get(self, "netflow_sampling_rate")
2995
2739
 
@@ -3001,8 +2745,7 @@ class _DistributedVirtualSwitchState:
3001
2745
  @pulumi.getter(name="networkResourceControlEnabled")
3002
2746
  def network_resource_control_enabled(self) -> Optional[pulumi.Input[bool]]:
3003
2747
  """
3004
- Set to `true` to enable
3005
- network I/O control. Default: `false`.
2748
+ Whether or not to enable network resource control, enabling advanced traffic shaping and resource control features.
3006
2749
  """
3007
2750
  return pulumi.get(self, "network_resource_control_enabled")
3008
2751
 
@@ -3014,8 +2757,7 @@ class _DistributedVirtualSwitchState:
3014
2757
  @pulumi.getter(name="networkResourceControlVersion")
3015
2758
  def network_resource_control_version(self) -> Optional[pulumi.Input[str]]:
3016
2759
  """
3017
- The version of network I/O
3018
- control to use. Can be one of `version2` or `version3`. Default: `version2`.
2760
+ The network I/O control version to use. Can be one of version2 or version3.
3019
2761
  """
3020
2762
  return pulumi.get(self, "network_resource_control_version")
3021
2763
 
@@ -3075,8 +2817,7 @@ class _DistributedVirtualSwitchState:
3075
2817
  @pulumi.getter(name="notifySwitches")
3076
2818
  def notify_switches(self) -> Optional[pulumi.Input[bool]]:
3077
2819
  """
3078
- If `true`, the teaming policy will notify the
3079
- broadcast network of an uplink failover, triggering cache updates.
2820
+ If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
3080
2821
  """
3081
2822
  return pulumi.get(self, "notify_switches")
3082
2823
 
@@ -3088,8 +2829,7 @@ class _DistributedVirtualSwitchState:
3088
2829
  @pulumi.getter(name="portPrivateSecondaryVlanId")
3089
2830
  def port_private_secondary_vlan_id(self) -> Optional[pulumi.Input[int]]:
3090
2831
  """
3091
- Used to define a secondary VLAN
3092
- ID when using private VLANs.
2832
+ The secondary VLAN ID for this port.
3093
2833
  """
3094
2834
  return pulumi.get(self, "port_private_secondary_vlan_id")
3095
2835
 
@@ -3101,8 +2841,7 @@ class _DistributedVirtualSwitchState:
3101
2841
  @pulumi.getter(name="pvlanMappings")
3102
2842
  def pvlan_mappings(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchPvlanMappingArgs']]]]:
3103
2843
  """
3104
- Use the `pvlan_mapping` block to declare a
3105
- private VLAN mapping. The options are:
2844
+ A private VLAN (PVLAN) mapping.
3106
2845
  """
3107
2846
  return pulumi.get(self, "pvlan_mappings")
3108
2847
 
@@ -3114,10 +2853,7 @@ class _DistributedVirtualSwitchState:
3114
2853
  @pulumi.getter(name="standbyUplinks")
3115
2854
  def standby_uplinks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
3116
2855
  """
3117
- A list of standby uplinks to be used in
3118
- failover. These uplinks need to match the definitions in the
3119
- `uplinks` VDS argument. See
3120
- here for more details.
2856
+ List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
3121
2857
  """
3122
2858
  return pulumi.get(self, "standby_uplinks")
3123
2859
 
@@ -3130,8 +2866,6 @@ class _DistributedVirtualSwitchState:
3130
2866
  def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
3131
2867
  """
3132
2868
  The IDs of any tags to attach to this resource.
3133
-
3134
- > **NOTE:** Tagging support requires vCenter Server 6.0 or higher.
3135
2869
  """
3136
2870
  return pulumi.get(self, "tags")
3137
2871
 
@@ -3143,9 +2877,8 @@ class _DistributedVirtualSwitchState:
3143
2877
  @pulumi.getter(name="teamingPolicy")
3144
2878
  def teaming_policy(self) -> Optional[pulumi.Input[str]]:
3145
2879
  """
3146
- The uplink teaming policy. Can be one of
3147
- `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`,
3148
- `failover_explicit`, or `loadbalance_loadbased`.
2880
+ The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid,
2881
+ failover_explicit, or loadbalance_loadbased.
3149
2882
  """
3150
2883
  return pulumi.get(self, "teaming_policy")
3151
2884
 
@@ -3157,8 +2890,8 @@ class _DistributedVirtualSwitchState:
3157
2890
  @pulumi.getter(name="txUplink")
3158
2891
  def tx_uplink(self) -> Optional[pulumi.Input[bool]]:
3159
2892
  """
3160
- Forward all traffic transmitted by ports for which
3161
- this policy applies to its VDS uplinks.
2893
+ If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet
2894
+ forwarded done by the switch.
3162
2895
  """
3163
2896
  return pulumi.get(self, "tx_uplink")
3164
2897
 
@@ -3170,11 +2903,8 @@ class _DistributedVirtualSwitchState:
3170
2903
  @pulumi.getter
3171
2904
  def uplinks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
3172
2905
  """
3173
- A list of strings that uniquely identifies the names
3174
- of the uplinks on the VDS across hosts. The number of items in this list
3175
- controls the number of uplinks that exist on the VDS, in addition to the
3176
- names. See here for an example on how to
3177
- use this option.
2906
+ A list of uplink ports. The contents of this list control both the uplink count and names of the uplinks on the DVS
2907
+ across hosts.
3178
2908
  """
3179
2909
  return pulumi.get(self, "uplinks")
3180
2910
 
@@ -3308,28 +3038,7 @@ class _DistributedVirtualSwitchState:
3308
3038
  @pulumi.getter(name="vlanRanges")
3309
3039
  def vlan_ranges(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DistributedVirtualSwitchVlanRangeArgs']]]]:
3310
3040
  """
3311
- Used to denote VLAN trunking. Use the `min_vlan`
3312
- and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple
3313
- `vlan_range` definitions are allowed, but they must not overlap. Example
3314
- below:
3315
-
3316
- <!--Start PulumiCodeChooser -->
3317
- ```python
3318
- import pulumi
3319
- import pulumi_vsphere as vsphere
3320
-
3321
- vds = vsphere.DistributedVirtualSwitch("vds", vlan_ranges=[
3322
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
3323
- max_vlan=199,
3324
- min_vlan=100,
3325
- ),
3326
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
3327
- max_vlan=399,
3328
- min_vlan=300,
3329
- ),
3330
- ])
3331
- ```
3332
- <!--End PulumiCodeChooser -->
3041
+ The VLAN ID for single VLAN mode. 0 denotes no VLAN.
3333
3042
  """
3334
3043
  return pulumi.get(self, "vlan_ranges")
3335
3044
 
@@ -3469,7 +3178,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3469
3178
  hbr_reservation_mbit: Optional[pulumi.Input[int]] = None,
3470
3179
  hbr_share_count: Optional[pulumi.Input[int]] = None,
3471
3180
  hbr_share_level: Optional[pulumi.Input[str]] = None,
3472
- hosts: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchHostArgs']]]]] = None,
3181
+ hosts: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchHostArgs', 'DistributedVirtualSwitchHostArgsDict']]]]] = None,
3473
3182
  ignore_other_pvlan_mappings: Optional[pulumi.Input[bool]] = None,
3474
3183
  ingress_shaping_average_bandwidth: Optional[pulumi.Input[int]] = None,
3475
3184
  ingress_shaping_burst_size: Optional[pulumi.Input[int]] = None,
@@ -3508,7 +3217,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3508
3217
  nfs_share_level: Optional[pulumi.Input[str]] = None,
3509
3218
  notify_switches: Optional[pulumi.Input[bool]] = None,
3510
3219
  port_private_secondary_vlan_id: Optional[pulumi.Input[int]] = None,
3511
- pvlan_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchPvlanMappingArgs']]]]] = None,
3220
+ pvlan_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchPvlanMappingArgs', 'DistributedVirtualSwitchPvlanMappingArgsDict']]]]] = None,
3512
3221
  standby_uplinks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3513
3222
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3514
3223
  teaming_policy: Optional[pulumi.Input[str]] = None,
@@ -3524,7 +3233,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3524
3233
  virtualmachine_share_count: Optional[pulumi.Input[int]] = None,
3525
3234
  virtualmachine_share_level: Optional[pulumi.Input[str]] = None,
3526
3235
  vlan_id: Optional[pulumi.Input[int]] = None,
3527
- vlan_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchVlanRangeArgs']]]]] = None,
3236
+ vlan_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchVlanRangeArgs', 'DistributedVirtualSwitchVlanRangeArgsDict']]]]] = None,
3528
3237
  vmotion_maximum_mbit: Optional[pulumi.Input[int]] = None,
3529
3238
  vmotion_reservation_mbit: Optional[pulumi.Input[int]] = None,
3530
3239
  vmotion_share_count: Optional[pulumi.Input[int]] = None,
@@ -3535,32 +3244,147 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3535
3244
  vsan_share_level: Optional[pulumi.Input[str]] = None,
3536
3245
  __props__=None):
3537
3246
  """
3538
- Create a DistributedVirtualSwitch resource with the given unique name, props, and options.
3247
+ The `DistributedVirtualSwitch` resource can be used to manage vSphere
3248
+ Distributed Switches (VDS).
3249
+
3250
+ An essential component of a distributed, scalable vSphere infrastructure, the
3251
+ VDS provides centralized management and monitoring of the networking
3252
+ configuration for all the hosts that are associated with the switch.
3253
+ In addition to adding distributed port groups
3254
+ (see the `DistributedPortGroup` resource)
3255
+ that can be used as networks for virtual machines, a VDS can be configured to
3256
+ perform advanced high availability, traffic shaping, network monitoring, etc.
3257
+
3258
+ For an overview on vSphere networking concepts, see
3259
+ [this page][ref-vsphere-net-concepts].
3260
+
3261
+ For more information on the VDS, see [this page][ref-vsphere-vds].
3262
+
3263
+ [ref-vsphere-net-concepts]: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-2B11DBB8-CB3C-4AFF-8885-EFEA0FC562F4.html
3264
+ [ref-vsphere-vds]: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-375B45C7-684C-4C51-BA3C-70E48DFABF04.html
3265
+
3266
+ > **NOTE:** This resource requires vCenter and is not available on
3267
+ direct ESXi host connections.
3268
+
3269
+ ## Example Usage
3270
+
3271
+ The following example below demonstrates a "standard" example of configuring a
3272
+ VDS in a 3-node vSphere datacenter named `dc1`, across 4 NICs with two being
3273
+ used as active, and two being used as passive. Note that the NIC failover order
3274
+ propagates to any port groups configured on this VDS and can be overridden.
3275
+
3276
+ ```python
3277
+ import pulumi
3278
+ import pulumi_vsphere as vsphere
3279
+
3280
+ config = pulumi.Config()
3281
+ hosts = config.get_object("hosts")
3282
+ if hosts is None:
3283
+ hosts = [
3284
+ "esxi-01.example.com",
3285
+ "esxi-02.example.com",
3286
+ "esxi-03.example.com",
3287
+ ]
3288
+ network_interfaces = config.get_object("networkInterfaces")
3289
+ if network_interfaces is None:
3290
+ network_interfaces = [
3291
+ "vmnic0",
3292
+ "vmnic1",
3293
+ "vmnic2",
3294
+ "vmnic3",
3295
+ ]
3296
+ datacenter = vsphere.get_datacenter(name="dc-01")
3297
+ host = [vsphere.get_host(name=hosts[__index],
3298
+ datacenter_id=datacenter.id) for __index in range(len(hosts))]
3299
+ vds = vsphere.DistributedVirtualSwitch("vds",
3300
+ name="vds-01",
3301
+ datacenter_id=datacenter.id,
3302
+ uplinks=[
3303
+ "uplink1",
3304
+ "uplink2",
3305
+ "uplink3",
3306
+ "uplink4",
3307
+ ],
3308
+ active_uplinks=[
3309
+ "uplink1",
3310
+ "uplink2",
3311
+ ],
3312
+ standby_uplinks=[
3313
+ "uplink3",
3314
+ "uplink4",
3315
+ ],
3316
+ hosts=[
3317
+ {
3318
+ "host_system_id": host[0].id,
3319
+ "devices": [network_interfaces],
3320
+ },
3321
+ {
3322
+ "host_system_id": host[1].id,
3323
+ "devices": [network_interfaces],
3324
+ },
3325
+ {
3326
+ "host_system_id": host[2].id,
3327
+ "devices": [network_interfaces],
3328
+ },
3329
+ ])
3330
+ ```
3331
+
3332
+ ### Uplink name and count control
3333
+
3334
+ The following abridged example below demonstrates how you can manage the number
3335
+ of uplinks, and the name of the uplinks via the `uplinks` parameter.
3336
+
3337
+ Note that if you change the uplink naming and count after creating the VDS, you
3338
+ may need to explicitly specify `active_uplinks` and `standby_uplinks` as these
3339
+ values are saved to state after creation, regardless of being
3340
+ specified in config, and will drift if not modified, causing errors.
3341
+
3342
+ ```python
3343
+ import pulumi
3344
+ import pulumi_vsphere as vsphere
3345
+
3346
+ vds = vsphere.DistributedVirtualSwitch("vds",
3347
+ name="vds-01",
3348
+ datacenter_id=datacenter["id"],
3349
+ uplinks=[
3350
+ "uplink1",
3351
+ "uplink2",
3352
+ ],
3353
+ active_uplinks=["uplink1"],
3354
+ standby_uplinks=["uplink2"])
3355
+ ```
3356
+
3357
+ > **NOTE:** The default uplink names when a VDS is created are `uplink1`
3358
+ through to `uplink4`, however this default is not guaranteed to be stable and
3359
+ you are encouraged to set your own.
3360
+
3361
+ ## Import
3362
+
3363
+ An existing VDS can be imported into this resource via the path
3364
+
3365
+ to the VDS, via the following command:
3366
+
3367
+ ```sh
3368
+ $ pulumi import vsphere:index/distributedVirtualSwitch:DistributedVirtualSwitch vds /dc-01/network/vds-01
3369
+ ```
3370
+
3371
+ The above would import the VDS named `vds-01` that is located in the `dc-01`
3372
+
3373
+ datacenter.
3374
+
3539
3375
  :param str resource_name: The name of the resource.
3540
3376
  :param pulumi.ResourceOptions opts: Options for the resource.
3541
- :param pulumi.Input[Sequence[pulumi.Input[str]]] active_uplinks: A list of active uplinks to be used in load
3542
- balancing. These uplinks need to match the definitions in the
3543
- `uplinks` VDS argument. See
3544
- here for more details.
3545
- :param pulumi.Input[bool] allow_forged_transmits: Controls whether or not a virtual
3546
- network adapter is allowed to send network traffic with a different MAC
3547
- address than that of its own.
3548
- :param pulumi.Input[bool] allow_mac_changes: Controls whether or not the Media Access
3549
- Control (MAC) address can be changed.
3550
- :param pulumi.Input[bool] allow_promiscuous: Enable promiscuous mode on the network. This
3551
- flag indicates whether or not all traffic is seen on a given port.
3377
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] active_uplinks: List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
3378
+ :param pulumi.Input[bool] allow_forged_transmits: Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than
3379
+ that of its own.
3380
+ :param pulumi.Input[bool] allow_mac_changes: Controls whether or not the Media Access Control (MAC) address can be changed.
3381
+ :param pulumi.Input[bool] allow_promiscuous: Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
3552
3382
  :param pulumi.Input[int] backupnfc_maximum_mbit: The maximum allowed usage for the backupNfc traffic class, in Mbits/sec.
3553
3383
  :param pulumi.Input[int] backupnfc_reservation_mbit: The amount of guaranteed bandwidth for the backupNfc traffic class, in Mbits/sec.
3554
3384
  :param pulumi.Input[int] backupnfc_share_count: The amount of shares to allocate to the backupNfc traffic class for a custom share level.
3555
3385
  :param pulumi.Input[str] backupnfc_share_level: The allocation level for the backupNfc traffic class. Can be one of high, low, normal, or custom.
3556
- :param pulumi.Input[bool] block_all_ports: Shuts down all ports in the port groups that
3557
- this policy applies to, effectively blocking all network access to connected
3558
- virtual devices.
3559
- :param pulumi.Input[bool] check_beacon: Enables beacon probing as an additional measure
3560
- to detect NIC failure.
3561
-
3562
- > **NOTE:** VMware recommends using a minimum of 3 NICs when using beacon
3563
- probing.
3386
+ :param pulumi.Input[bool] block_all_ports: Indicates whether to block all ports by default.
3387
+ :param pulumi.Input[bool] check_beacon: Enable beacon probing on the ports this policy applies to.
3564
3388
  :param pulumi.Input[str] contact_detail: The detailed contact information for the person
3565
3389
  who is responsible for the VDS.
3566
3390
  :param pulumi.Input[str] contact_name: The name of the person who is responsible for the
@@ -3573,18 +3397,12 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3573
3397
  :param pulumi.Input[str] datacenter_id: The ID of the datacenter where the VDS will be
3574
3398
  created. Forces a new resource if changed.
3575
3399
  :param pulumi.Input[str] description: A detailed description for the VDS.
3576
- :param pulumi.Input[bool] directpath_gen2_allowed: Allow VMDirectPath Gen2 for the ports
3577
- for which this policy applies to.
3578
- :param pulumi.Input[int] egress_shaping_average_bandwidth: The average bandwidth in bits
3579
- per second if egress traffic shaping is enabled on the port.
3580
- :param pulumi.Input[int] egress_shaping_burst_size: The maximum burst size allowed in
3581
- bytes if egress traffic shaping is enabled on the port.
3582
- :param pulumi.Input[bool] egress_shaping_enabled: `true` if the traffic shaper is enabled
3583
- on the port for egress traffic.
3584
- :param pulumi.Input[int] egress_shaping_peak_bandwidth: The peak bandwidth during bursts
3585
- in bits per second if egress traffic shaping is enabled on the port.
3586
- :param pulumi.Input[bool] failback: If `true`, the teaming policy will re-activate failed
3587
- uplinks higher in precedence when they come back up.
3400
+ :param pulumi.Input[bool] directpath_gen2_allowed: Allow VMDirectPath Gen2 on the ports this policy applies to.
3401
+ :param pulumi.Input[int] egress_shaping_average_bandwidth: The average egress bandwidth in bits per second if egress shaping is enabled on the port.
3402
+ :param pulumi.Input[int] egress_shaping_burst_size: The maximum egress burst size allowed in bytes if egress shaping is enabled on the port.
3403
+ :param pulumi.Input[bool] egress_shaping_enabled: True if the traffic shaper is enabled for egress traffic on the port.
3404
+ :param pulumi.Input[int] egress_shaping_peak_bandwidth: The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
3405
+ :param pulumi.Input[bool] failback: If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
3588
3406
  :param pulumi.Input[int] faulttolerance_maximum_mbit: The maximum allowed usage for the faultTolerance traffic class, in Mbits/sec.
3589
3407
  :param pulumi.Input[int] faulttolerance_reservation_mbit: The amount of guaranteed bandwidth for the faultTolerance traffic class, in Mbits/sec.
3590
3408
  :param pulumi.Input[int] faulttolerance_share_count: The amount of shares to allocate to the faultTolerance traffic class for a custom share level.
@@ -3595,18 +3413,12 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3595
3413
  :param pulumi.Input[int] hbr_reservation_mbit: The amount of guaranteed bandwidth for the hbr traffic class, in Mbits/sec.
3596
3414
  :param pulumi.Input[int] hbr_share_count: The amount of shares to allocate to the hbr traffic class for a custom share level.
3597
3415
  :param pulumi.Input[str] hbr_share_level: The allocation level for the hbr traffic class. Can be one of high, low, normal, or custom.
3598
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchHostArgs']]]] hosts: Use the `host` block to declare a host specification. The
3599
- options are:
3600
- :param pulumi.Input[bool] ignore_other_pvlan_mappings: Whether to ignore existing PVLAN
3601
- mappings not managed by this resource. Defaults to false.
3602
- :param pulumi.Input[int] ingress_shaping_average_bandwidth: The average bandwidth in
3603
- bits per second if ingress traffic shaping is enabled on the port.
3604
- :param pulumi.Input[int] ingress_shaping_burst_size: The maximum burst size allowed in
3605
- bytes if ingress traffic shaping is enabled on the port.
3606
- :param pulumi.Input[bool] ingress_shaping_enabled: `true` if the traffic shaper is
3607
- enabled on the port for ingress traffic.
3608
- :param pulumi.Input[int] ingress_shaping_peak_bandwidth: The peak bandwidth during
3609
- bursts in bits per second if ingress traffic shaping is enabled on the port.
3416
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchHostArgs', 'DistributedVirtualSwitchHostArgsDict']]]] hosts: A host member specification.
3417
+ :param pulumi.Input[bool] ignore_other_pvlan_mappings: Whether to ignore existing PVLAN mappings not managed by this resource. Defaults to false.
3418
+ :param pulumi.Input[int] ingress_shaping_average_bandwidth: The average ingress bandwidth in bits per second if ingress shaping is enabled on the port.
3419
+ :param pulumi.Input[int] ingress_shaping_burst_size: The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port.
3420
+ :param pulumi.Input[bool] ingress_shaping_enabled: True if the traffic shaper is enabled for ingress traffic on the port.
3421
+ :param pulumi.Input[int] ingress_shaping_peak_bandwidth: The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
3610
3422
  :param pulumi.Input[str] ipv4_address: An IPv4 address to identify the switch. This is
3611
3423
  mostly useful when used with the Netflow arguments.
3612
3424
  :param pulumi.Input[int] iscsi_maximum_mbit: The maximum allowed usage for the iSCSI traffic class, in Mbits/sec.
@@ -3616,9 +3428,8 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3616
3428
  :param pulumi.Input[str] lacp_api_version: The Link Aggregation Control Protocol group
3617
3429
  version to use with the VDS. Possible values are `singleLag` and
3618
3430
  `multipleLag`.
3619
- :param pulumi.Input[bool] lacp_enabled: Enables LACP for the ports that this policy
3620
- applies to.
3621
- :param pulumi.Input[str] lacp_mode: The LACP mode. Can be one of `active` or `passive`.
3431
+ :param pulumi.Input[bool] lacp_enabled: Whether or not to enable LACP on all uplink ports.
3432
+ :param pulumi.Input[str] lacp_mode: The uplink LACP mode to use. Can be one of active or passive.
3622
3433
  :param pulumi.Input[str] link_discovery_operation: Whether to `advertise` or `listen`
3623
3434
  for link discovery traffic.
3624
3435
  :param pulumi.Input[str] link_discovery_protocol: The discovery protocol type. Valid
@@ -3631,60 +3442,32 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3631
3442
  :param pulumi.Input[str] multicast_filtering_mode: The multicast filtering mode to use
3632
3443
  with the VDS. Can be one of `legacyFiltering` or `snooping`.
3633
3444
  :param pulumi.Input[str] name: The name of the VDS.
3634
- :param pulumi.Input[int] netflow_active_flow_timeout: The number of seconds after which
3635
- active flows are forced to be exported to the collector. Allowed range is
3636
- `60` to `3600`. Default: `60`.
3637
- :param pulumi.Input[str] netflow_collector_ip_address: IP address for the Netflow
3638
- collector, using IPv4 or IPv6. IPv6 is supported in VDS version 6.0 or later.
3639
- Must be set before Netflow can be enabled.
3640
- :param pulumi.Input[int] netflow_collector_port: Port for the Netflow collector. This
3641
- must be set before Netflow can be enabled.
3642
- :param pulumi.Input[bool] netflow_enabled: Enables Netflow on all ports that this policy
3643
- applies to.
3644
- :param pulumi.Input[int] netflow_idle_flow_timeout: The number of seconds after which
3645
- idle flows are forced to be exported to the collector. Allowed range is `10`
3646
- to `600`. Default: `15`.
3647
- :param pulumi.Input[bool] netflow_internal_flows_only: Whether to limit analysis to
3648
- traffic that has both source and destination served by the same host.
3649
- Default: `false`.
3650
- :param pulumi.Input[int] netflow_observation_domain_id: The observation domain ID for
3651
- the Netflow collector.
3652
- :param pulumi.Input[int] netflow_sampling_rate: The ratio of total number of packets to
3653
- the number of packets analyzed. The default is `0`, which indicates that the
3654
- VDS should analyze all packets. The maximum value is `1000`, which
3655
- indicates an analysis rate of 0.001%!
3656
- (MISSING)
3657
- :param pulumi.Input[bool] network_resource_control_enabled: Set to `true` to enable
3658
- network I/O control. Default: `false`.
3659
- :param pulumi.Input[str] network_resource_control_version: The version of network I/O
3660
- control to use. Can be one of `version2` or `version3`. Default: `version2`.
3445
+ :param pulumi.Input[int] netflow_active_flow_timeout: The number of seconds after which active flows are forced to be exported to the collector.
3446
+ :param pulumi.Input[str] netflow_collector_ip_address: IP address for the netflow collector, using IPv4 or IPv6.
3447
+ :param pulumi.Input[int] netflow_collector_port: The port for the netflow collector.
3448
+ :param pulumi.Input[bool] netflow_enabled: Indicates whether to enable netflow on all ports.
3449
+ :param pulumi.Input[int] netflow_idle_flow_timeout: The number of seconds after which idle flows are forced to be exported to the collector.
3450
+ :param pulumi.Input[bool] netflow_internal_flows_only: Whether to limit analysis to traffic that has both source and destination served by the same host.
3451
+ :param pulumi.Input[int] netflow_observation_domain_id: The observation Domain ID for the netflow collector.
3452
+ :param pulumi.Input[int] netflow_sampling_rate: The ratio of total number of packets to the number of packets analyzed. Set to 0 to disable sampling, meaning that all
3453
+ packets are analyzed.
3454
+ :param pulumi.Input[bool] network_resource_control_enabled: Whether or not to enable network resource control, enabling advanced traffic shaping and resource control features.
3455
+ :param pulumi.Input[str] network_resource_control_version: The network I/O control version to use. Can be one of version2 or version3.
3661
3456
  :param pulumi.Input[int] nfs_maximum_mbit: The maximum allowed usage for the nfs traffic class, in Mbits/sec.
3662
3457
  :param pulumi.Input[int] nfs_reservation_mbit: The amount of guaranteed bandwidth for the nfs traffic class, in Mbits/sec.
3663
3458
  :param pulumi.Input[int] nfs_share_count: The amount of shares to allocate to the nfs traffic class for a custom share level.
3664
3459
  :param pulumi.Input[str] nfs_share_level: The allocation level for the nfs traffic class. Can be one of high, low, normal, or custom.
3665
- :param pulumi.Input[bool] notify_switches: If `true`, the teaming policy will notify the
3666
- broadcast network of an uplink failover, triggering cache updates.
3667
- :param pulumi.Input[int] port_private_secondary_vlan_id: Used to define a secondary VLAN
3668
- ID when using private VLANs.
3669
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchPvlanMappingArgs']]]] pvlan_mappings: Use the `pvlan_mapping` block to declare a
3670
- private VLAN mapping. The options are:
3671
- :param pulumi.Input[Sequence[pulumi.Input[str]]] standby_uplinks: A list of standby uplinks to be used in
3672
- failover. These uplinks need to match the definitions in the
3673
- `uplinks` VDS argument. See
3674
- here for more details.
3460
+ :param pulumi.Input[bool] notify_switches: If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
3461
+ :param pulumi.Input[int] port_private_secondary_vlan_id: The secondary VLAN ID for this port.
3462
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchPvlanMappingArgs', 'DistributedVirtualSwitchPvlanMappingArgsDict']]]] pvlan_mappings: A private VLAN (PVLAN) mapping.
3463
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] standby_uplinks: List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
3675
3464
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The IDs of any tags to attach to this resource.
3676
-
3677
- > **NOTE:** Tagging support requires vCenter Server 6.0 or higher.
3678
- :param pulumi.Input[str] teaming_policy: The uplink teaming policy. Can be one of
3679
- `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`,
3680
- `failover_explicit`, or `loadbalance_loadbased`.
3681
- :param pulumi.Input[bool] tx_uplink: Forward all traffic transmitted by ports for which
3682
- this policy applies to its VDS uplinks.
3683
- :param pulumi.Input[Sequence[pulumi.Input[str]]] uplinks: A list of strings that uniquely identifies the names
3684
- of the uplinks on the VDS across hosts. The number of items in this list
3685
- controls the number of uplinks that exist on the VDS, in addition to the
3686
- names. See here for an example on how to
3687
- use this option.
3465
+ :param pulumi.Input[str] teaming_policy: The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid,
3466
+ failover_explicit, or loadbalance_loadbased.
3467
+ :param pulumi.Input[bool] tx_uplink: If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet
3468
+ forwarded done by the switch.
3469
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] uplinks: A list of uplink ports. The contents of this list control both the uplink count and names of the uplinks on the DVS
3470
+ across hosts.
3688
3471
  :param pulumi.Input[int] vdp_maximum_mbit: The maximum allowed usage for the vdp traffic class, in Mbits/sec.
3689
3472
  :param pulumi.Input[int] vdp_reservation_mbit: The amount of guaranteed bandwidth for the vdp traffic class, in Mbits/sec.
3690
3473
  :param pulumi.Input[int] vdp_share_count: The amount of shares to allocate to the vdp traffic class for a custom share level.
@@ -3697,28 +3480,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3697
3480
  :param pulumi.Input[int] virtualmachine_share_count: The amount of shares to allocate to the virtualMachine traffic class for a custom share level.
3698
3481
  :param pulumi.Input[str] virtualmachine_share_level: The allocation level for the virtualMachine traffic class. Can be one of high, low, normal, or custom.
3699
3482
  :param pulumi.Input[int] vlan_id: The VLAN ID for single VLAN mode. 0 denotes no VLAN.
3700
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchVlanRangeArgs']]]] vlan_ranges: Used to denote VLAN trunking. Use the `min_vlan`
3701
- and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple
3702
- `vlan_range` definitions are allowed, but they must not overlap. Example
3703
- below:
3704
-
3705
- <!--Start PulumiCodeChooser -->
3706
- ```python
3707
- import pulumi
3708
- import pulumi_vsphere as vsphere
3709
-
3710
- vds = vsphere.DistributedVirtualSwitch("vds", vlan_ranges=[
3711
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
3712
- max_vlan=199,
3713
- min_vlan=100,
3714
- ),
3715
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
3716
- max_vlan=399,
3717
- min_vlan=300,
3718
- ),
3719
- ])
3720
- ```
3721
- <!--End PulumiCodeChooser -->
3483
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchVlanRangeArgs', 'DistributedVirtualSwitchVlanRangeArgsDict']]]] vlan_ranges: The VLAN ID for single VLAN mode. 0 denotes no VLAN.
3722
3484
  :param pulumi.Input[int] vmotion_maximum_mbit: The maximum allowed usage for the vmotion traffic class, in Mbits/sec.
3723
3485
  :param pulumi.Input[int] vmotion_reservation_mbit: The amount of guaranteed bandwidth for the vmotion traffic class, in Mbits/sec.
3724
3486
  :param pulumi.Input[int] vmotion_share_count: The amount of shares to allocate to the vmotion traffic class for a custom share level.
@@ -3735,7 +3497,134 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3735
3497
  args: DistributedVirtualSwitchArgs,
3736
3498
  opts: Optional[pulumi.ResourceOptions] = None):
3737
3499
  """
3738
- Create a DistributedVirtualSwitch resource with the given unique name, props, and options.
3500
+ The `DistributedVirtualSwitch` resource can be used to manage vSphere
3501
+ Distributed Switches (VDS).
3502
+
3503
+ An essential component of a distributed, scalable vSphere infrastructure, the
3504
+ VDS provides centralized management and monitoring of the networking
3505
+ configuration for all the hosts that are associated with the switch.
3506
+ In addition to adding distributed port groups
3507
+ (see the `DistributedPortGroup` resource)
3508
+ that can be used as networks for virtual machines, a VDS can be configured to
3509
+ perform advanced high availability, traffic shaping, network monitoring, etc.
3510
+
3511
+ For an overview on vSphere networking concepts, see
3512
+ [this page][ref-vsphere-net-concepts].
3513
+
3514
+ For more information on the VDS, see [this page][ref-vsphere-vds].
3515
+
3516
+ [ref-vsphere-net-concepts]: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-2B11DBB8-CB3C-4AFF-8885-EFEA0FC562F4.html
3517
+ [ref-vsphere-vds]: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-375B45C7-684C-4C51-BA3C-70E48DFABF04.html
3518
+
3519
+ > **NOTE:** This resource requires vCenter and is not available on
3520
+ direct ESXi host connections.
3521
+
3522
+ ## Example Usage
3523
+
3524
+ The following example below demonstrates a "standard" example of configuring a
3525
+ VDS in a 3-node vSphere datacenter named `dc1`, across 4 NICs with two being
3526
+ used as active, and two being used as passive. Note that the NIC failover order
3527
+ propagates to any port groups configured on this VDS and can be overridden.
3528
+
3529
+ ```python
3530
+ import pulumi
3531
+ import pulumi_vsphere as vsphere
3532
+
3533
+ config = pulumi.Config()
3534
+ hosts = config.get_object("hosts")
3535
+ if hosts is None:
3536
+ hosts = [
3537
+ "esxi-01.example.com",
3538
+ "esxi-02.example.com",
3539
+ "esxi-03.example.com",
3540
+ ]
3541
+ network_interfaces = config.get_object("networkInterfaces")
3542
+ if network_interfaces is None:
3543
+ network_interfaces = [
3544
+ "vmnic0",
3545
+ "vmnic1",
3546
+ "vmnic2",
3547
+ "vmnic3",
3548
+ ]
3549
+ datacenter = vsphere.get_datacenter(name="dc-01")
3550
+ host = [vsphere.get_host(name=hosts[__index],
3551
+ datacenter_id=datacenter.id) for __index in range(len(hosts))]
3552
+ vds = vsphere.DistributedVirtualSwitch("vds",
3553
+ name="vds-01",
3554
+ datacenter_id=datacenter.id,
3555
+ uplinks=[
3556
+ "uplink1",
3557
+ "uplink2",
3558
+ "uplink3",
3559
+ "uplink4",
3560
+ ],
3561
+ active_uplinks=[
3562
+ "uplink1",
3563
+ "uplink2",
3564
+ ],
3565
+ standby_uplinks=[
3566
+ "uplink3",
3567
+ "uplink4",
3568
+ ],
3569
+ hosts=[
3570
+ {
3571
+ "host_system_id": host[0].id,
3572
+ "devices": [network_interfaces],
3573
+ },
3574
+ {
3575
+ "host_system_id": host[1].id,
3576
+ "devices": [network_interfaces],
3577
+ },
3578
+ {
3579
+ "host_system_id": host[2].id,
3580
+ "devices": [network_interfaces],
3581
+ },
3582
+ ])
3583
+ ```
3584
+
3585
+ ### Uplink name and count control
3586
+
3587
+ The following abridged example below demonstrates how you can manage the number
3588
+ of uplinks, and the name of the uplinks via the `uplinks` parameter.
3589
+
3590
+ Note that if you change the uplink naming and count after creating the VDS, you
3591
+ may need to explicitly specify `active_uplinks` and `standby_uplinks` as these
3592
+ values are saved to state after creation, regardless of being
3593
+ specified in config, and will drift if not modified, causing errors.
3594
+
3595
+ ```python
3596
+ import pulumi
3597
+ import pulumi_vsphere as vsphere
3598
+
3599
+ vds = vsphere.DistributedVirtualSwitch("vds",
3600
+ name="vds-01",
3601
+ datacenter_id=datacenter["id"],
3602
+ uplinks=[
3603
+ "uplink1",
3604
+ "uplink2",
3605
+ ],
3606
+ active_uplinks=["uplink1"],
3607
+ standby_uplinks=["uplink2"])
3608
+ ```
3609
+
3610
+ > **NOTE:** The default uplink names when a VDS is created are `uplink1`
3611
+ through to `uplink4`, however this default is not guaranteed to be stable and
3612
+ you are encouraged to set your own.
3613
+
3614
+ ## Import
3615
+
3616
+ An existing VDS can be imported into this resource via the path
3617
+
3618
+ to the VDS, via the following command:
3619
+
3620
+ ```sh
3621
+ $ pulumi import vsphere:index/distributedVirtualSwitch:DistributedVirtualSwitch vds /dc-01/network/vds-01
3622
+ ```
3623
+
3624
+ The above would import the VDS named `vds-01` that is located in the `dc-01`
3625
+
3626
+ datacenter.
3627
+
3739
3628
  :param str resource_name: The name of the resource.
3740
3629
  :param DistributedVirtualSwitchArgs args: The arguments to use to populate this resource's properties.
3741
3630
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -3781,7 +3670,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3781
3670
  hbr_reservation_mbit: Optional[pulumi.Input[int]] = None,
3782
3671
  hbr_share_count: Optional[pulumi.Input[int]] = None,
3783
3672
  hbr_share_level: Optional[pulumi.Input[str]] = None,
3784
- hosts: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchHostArgs']]]]] = None,
3673
+ hosts: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchHostArgs', 'DistributedVirtualSwitchHostArgsDict']]]]] = None,
3785
3674
  ignore_other_pvlan_mappings: Optional[pulumi.Input[bool]] = None,
3786
3675
  ingress_shaping_average_bandwidth: Optional[pulumi.Input[int]] = None,
3787
3676
  ingress_shaping_burst_size: Optional[pulumi.Input[int]] = None,
@@ -3820,7 +3709,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3820
3709
  nfs_share_level: Optional[pulumi.Input[str]] = None,
3821
3710
  notify_switches: Optional[pulumi.Input[bool]] = None,
3822
3711
  port_private_secondary_vlan_id: Optional[pulumi.Input[int]] = None,
3823
- pvlan_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchPvlanMappingArgs']]]]] = None,
3712
+ pvlan_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchPvlanMappingArgs', 'DistributedVirtualSwitchPvlanMappingArgsDict']]]]] = None,
3824
3713
  standby_uplinks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3825
3714
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3826
3715
  teaming_policy: Optional[pulumi.Input[str]] = None,
@@ -3836,7 +3725,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3836
3725
  virtualmachine_share_count: Optional[pulumi.Input[int]] = None,
3837
3726
  virtualmachine_share_level: Optional[pulumi.Input[str]] = None,
3838
3727
  vlan_id: Optional[pulumi.Input[int]] = None,
3839
- vlan_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchVlanRangeArgs']]]]] = None,
3728
+ vlan_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchVlanRangeArgs', 'DistributedVirtualSwitchVlanRangeArgsDict']]]]] = None,
3840
3729
  vmotion_maximum_mbit: Optional[pulumi.Input[int]] = None,
3841
3730
  vmotion_reservation_mbit: Optional[pulumi.Input[int]] = None,
3842
3731
  vmotion_share_count: Optional[pulumi.Input[int]] = None,
@@ -3992,7 +3881,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
3992
3881
  hbr_reservation_mbit: Optional[pulumi.Input[int]] = None,
3993
3882
  hbr_share_count: Optional[pulumi.Input[int]] = None,
3994
3883
  hbr_share_level: Optional[pulumi.Input[str]] = None,
3995
- hosts: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchHostArgs']]]]] = None,
3884
+ hosts: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchHostArgs', 'DistributedVirtualSwitchHostArgsDict']]]]] = None,
3996
3885
  ignore_other_pvlan_mappings: Optional[pulumi.Input[bool]] = None,
3997
3886
  ingress_shaping_average_bandwidth: Optional[pulumi.Input[int]] = None,
3998
3887
  ingress_shaping_burst_size: Optional[pulumi.Input[int]] = None,
@@ -4031,7 +3920,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4031
3920
  nfs_share_level: Optional[pulumi.Input[str]] = None,
4032
3921
  notify_switches: Optional[pulumi.Input[bool]] = None,
4033
3922
  port_private_secondary_vlan_id: Optional[pulumi.Input[int]] = None,
4034
- pvlan_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchPvlanMappingArgs']]]]] = None,
3923
+ pvlan_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchPvlanMappingArgs', 'DistributedVirtualSwitchPvlanMappingArgsDict']]]]] = None,
4035
3924
  standby_uplinks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
4036
3925
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
4037
3926
  teaming_policy: Optional[pulumi.Input[str]] = None,
@@ -4047,7 +3936,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4047
3936
  virtualmachine_share_count: Optional[pulumi.Input[int]] = None,
4048
3937
  virtualmachine_share_level: Optional[pulumi.Input[str]] = None,
4049
3938
  vlan_id: Optional[pulumi.Input[int]] = None,
4050
- vlan_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchVlanRangeArgs']]]]] = None,
3939
+ vlan_ranges: Optional[pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchVlanRangeArgs', 'DistributedVirtualSwitchVlanRangeArgsDict']]]]] = None,
4051
3940
  vmotion_maximum_mbit: Optional[pulumi.Input[int]] = None,
4052
3941
  vmotion_reservation_mbit: Optional[pulumi.Input[int]] = None,
4053
3942
  vmotion_share_count: Optional[pulumi.Input[int]] = None,
@@ -4063,29 +3952,17 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4063
3952
  :param str resource_name: The unique name of the resulting resource.
4064
3953
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
4065
3954
  :param pulumi.ResourceOptions opts: Options for the resource.
4066
- :param pulumi.Input[Sequence[pulumi.Input[str]]] active_uplinks: A list of active uplinks to be used in load
4067
- balancing. These uplinks need to match the definitions in the
4068
- `uplinks` VDS argument. See
4069
- here for more details.
4070
- :param pulumi.Input[bool] allow_forged_transmits: Controls whether or not a virtual
4071
- network adapter is allowed to send network traffic with a different MAC
4072
- address than that of its own.
4073
- :param pulumi.Input[bool] allow_mac_changes: Controls whether or not the Media Access
4074
- Control (MAC) address can be changed.
4075
- :param pulumi.Input[bool] allow_promiscuous: Enable promiscuous mode on the network. This
4076
- flag indicates whether or not all traffic is seen on a given port.
3955
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] active_uplinks: List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
3956
+ :param pulumi.Input[bool] allow_forged_transmits: Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than
3957
+ that of its own.
3958
+ :param pulumi.Input[bool] allow_mac_changes: Controls whether or not the Media Access Control (MAC) address can be changed.
3959
+ :param pulumi.Input[bool] allow_promiscuous: Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
4077
3960
  :param pulumi.Input[int] backupnfc_maximum_mbit: The maximum allowed usage for the backupNfc traffic class, in Mbits/sec.
4078
3961
  :param pulumi.Input[int] backupnfc_reservation_mbit: The amount of guaranteed bandwidth for the backupNfc traffic class, in Mbits/sec.
4079
3962
  :param pulumi.Input[int] backupnfc_share_count: The amount of shares to allocate to the backupNfc traffic class for a custom share level.
4080
3963
  :param pulumi.Input[str] backupnfc_share_level: The allocation level for the backupNfc traffic class. Can be one of high, low, normal, or custom.
4081
- :param pulumi.Input[bool] block_all_ports: Shuts down all ports in the port groups that
4082
- this policy applies to, effectively blocking all network access to connected
4083
- virtual devices.
4084
- :param pulumi.Input[bool] check_beacon: Enables beacon probing as an additional measure
4085
- to detect NIC failure.
4086
-
4087
- > **NOTE:** VMware recommends using a minimum of 3 NICs when using beacon
4088
- probing.
3964
+ :param pulumi.Input[bool] block_all_ports: Indicates whether to block all ports by default.
3965
+ :param pulumi.Input[bool] check_beacon: Enable beacon probing on the ports this policy applies to.
4089
3966
  :param pulumi.Input[str] config_version: The current version of the VDS configuration, incremented
4090
3967
  by subsequent updates to the VDS.
4091
3968
  :param pulumi.Input[str] contact_detail: The detailed contact information for the person
@@ -4100,18 +3977,12 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4100
3977
  :param pulumi.Input[str] datacenter_id: The ID of the datacenter where the VDS will be
4101
3978
  created. Forces a new resource if changed.
4102
3979
  :param pulumi.Input[str] description: A detailed description for the VDS.
4103
- :param pulumi.Input[bool] directpath_gen2_allowed: Allow VMDirectPath Gen2 for the ports
4104
- for which this policy applies to.
4105
- :param pulumi.Input[int] egress_shaping_average_bandwidth: The average bandwidth in bits
4106
- per second if egress traffic shaping is enabled on the port.
4107
- :param pulumi.Input[int] egress_shaping_burst_size: The maximum burst size allowed in
4108
- bytes if egress traffic shaping is enabled on the port.
4109
- :param pulumi.Input[bool] egress_shaping_enabled: `true` if the traffic shaper is enabled
4110
- on the port for egress traffic.
4111
- :param pulumi.Input[int] egress_shaping_peak_bandwidth: The peak bandwidth during bursts
4112
- in bits per second if egress traffic shaping is enabled on the port.
4113
- :param pulumi.Input[bool] failback: If `true`, the teaming policy will re-activate failed
4114
- uplinks higher in precedence when they come back up.
3980
+ :param pulumi.Input[bool] directpath_gen2_allowed: Allow VMDirectPath Gen2 on the ports this policy applies to.
3981
+ :param pulumi.Input[int] egress_shaping_average_bandwidth: The average egress bandwidth in bits per second if egress shaping is enabled on the port.
3982
+ :param pulumi.Input[int] egress_shaping_burst_size: The maximum egress burst size allowed in bytes if egress shaping is enabled on the port.
3983
+ :param pulumi.Input[bool] egress_shaping_enabled: True if the traffic shaper is enabled for egress traffic on the port.
3984
+ :param pulumi.Input[int] egress_shaping_peak_bandwidth: The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
3985
+ :param pulumi.Input[bool] failback: If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
4115
3986
  :param pulumi.Input[int] faulttolerance_maximum_mbit: The maximum allowed usage for the faultTolerance traffic class, in Mbits/sec.
4116
3987
  :param pulumi.Input[int] faulttolerance_reservation_mbit: The amount of guaranteed bandwidth for the faultTolerance traffic class, in Mbits/sec.
4117
3988
  :param pulumi.Input[int] faulttolerance_share_count: The amount of shares to allocate to the faultTolerance traffic class for a custom share level.
@@ -4122,18 +3993,12 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4122
3993
  :param pulumi.Input[int] hbr_reservation_mbit: The amount of guaranteed bandwidth for the hbr traffic class, in Mbits/sec.
4123
3994
  :param pulumi.Input[int] hbr_share_count: The amount of shares to allocate to the hbr traffic class for a custom share level.
4124
3995
  :param pulumi.Input[str] hbr_share_level: The allocation level for the hbr traffic class. Can be one of high, low, normal, or custom.
4125
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchHostArgs']]]] hosts: Use the `host` block to declare a host specification. The
4126
- options are:
4127
- :param pulumi.Input[bool] ignore_other_pvlan_mappings: Whether to ignore existing PVLAN
4128
- mappings not managed by this resource. Defaults to false.
4129
- :param pulumi.Input[int] ingress_shaping_average_bandwidth: The average bandwidth in
4130
- bits per second if ingress traffic shaping is enabled on the port.
4131
- :param pulumi.Input[int] ingress_shaping_burst_size: The maximum burst size allowed in
4132
- bytes if ingress traffic shaping is enabled on the port.
4133
- :param pulumi.Input[bool] ingress_shaping_enabled: `true` if the traffic shaper is
4134
- enabled on the port for ingress traffic.
4135
- :param pulumi.Input[int] ingress_shaping_peak_bandwidth: The peak bandwidth during
4136
- bursts in bits per second if ingress traffic shaping is enabled on the port.
3996
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchHostArgs', 'DistributedVirtualSwitchHostArgsDict']]]] hosts: A host member specification.
3997
+ :param pulumi.Input[bool] ignore_other_pvlan_mappings: Whether to ignore existing PVLAN mappings not managed by this resource. Defaults to false.
3998
+ :param pulumi.Input[int] ingress_shaping_average_bandwidth: The average ingress bandwidth in bits per second if ingress shaping is enabled on the port.
3999
+ :param pulumi.Input[int] ingress_shaping_burst_size: The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port.
4000
+ :param pulumi.Input[bool] ingress_shaping_enabled: True if the traffic shaper is enabled for ingress traffic on the port.
4001
+ :param pulumi.Input[int] ingress_shaping_peak_bandwidth: The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
4137
4002
  :param pulumi.Input[str] ipv4_address: An IPv4 address to identify the switch. This is
4138
4003
  mostly useful when used with the Netflow arguments.
4139
4004
  :param pulumi.Input[int] iscsi_maximum_mbit: The maximum allowed usage for the iSCSI traffic class, in Mbits/sec.
@@ -4143,9 +4008,8 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4143
4008
  :param pulumi.Input[str] lacp_api_version: The Link Aggregation Control Protocol group
4144
4009
  version to use with the VDS. Possible values are `singleLag` and
4145
4010
  `multipleLag`.
4146
- :param pulumi.Input[bool] lacp_enabled: Enables LACP for the ports that this policy
4147
- applies to.
4148
- :param pulumi.Input[str] lacp_mode: The LACP mode. Can be one of `active` or `passive`.
4011
+ :param pulumi.Input[bool] lacp_enabled: Whether or not to enable LACP on all uplink ports.
4012
+ :param pulumi.Input[str] lacp_mode: The uplink LACP mode to use. Can be one of active or passive.
4149
4013
  :param pulumi.Input[str] link_discovery_operation: Whether to `advertise` or `listen`
4150
4014
  for link discovery traffic.
4151
4015
  :param pulumi.Input[str] link_discovery_protocol: The discovery protocol type. Valid
@@ -4158,60 +4022,32 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4158
4022
  :param pulumi.Input[str] multicast_filtering_mode: The multicast filtering mode to use
4159
4023
  with the VDS. Can be one of `legacyFiltering` or `snooping`.
4160
4024
  :param pulumi.Input[str] name: The name of the VDS.
4161
- :param pulumi.Input[int] netflow_active_flow_timeout: The number of seconds after which
4162
- active flows are forced to be exported to the collector. Allowed range is
4163
- `60` to `3600`. Default: `60`.
4164
- :param pulumi.Input[str] netflow_collector_ip_address: IP address for the Netflow
4165
- collector, using IPv4 or IPv6. IPv6 is supported in VDS version 6.0 or later.
4166
- Must be set before Netflow can be enabled.
4167
- :param pulumi.Input[int] netflow_collector_port: Port for the Netflow collector. This
4168
- must be set before Netflow can be enabled.
4169
- :param pulumi.Input[bool] netflow_enabled: Enables Netflow on all ports that this policy
4170
- applies to.
4171
- :param pulumi.Input[int] netflow_idle_flow_timeout: The number of seconds after which
4172
- idle flows are forced to be exported to the collector. Allowed range is `10`
4173
- to `600`. Default: `15`.
4174
- :param pulumi.Input[bool] netflow_internal_flows_only: Whether to limit analysis to
4175
- traffic that has both source and destination served by the same host.
4176
- Default: `false`.
4177
- :param pulumi.Input[int] netflow_observation_domain_id: The observation domain ID for
4178
- the Netflow collector.
4179
- :param pulumi.Input[int] netflow_sampling_rate: The ratio of total number of packets to
4180
- the number of packets analyzed. The default is `0`, which indicates that the
4181
- VDS should analyze all packets. The maximum value is `1000`, which
4182
- indicates an analysis rate of 0.001%!
4183
- (MISSING)
4184
- :param pulumi.Input[bool] network_resource_control_enabled: Set to `true` to enable
4185
- network I/O control. Default: `false`.
4186
- :param pulumi.Input[str] network_resource_control_version: The version of network I/O
4187
- control to use. Can be one of `version2` or `version3`. Default: `version2`.
4025
+ :param pulumi.Input[int] netflow_active_flow_timeout: The number of seconds after which active flows are forced to be exported to the collector.
4026
+ :param pulumi.Input[str] netflow_collector_ip_address: IP address for the netflow collector, using IPv4 or IPv6.
4027
+ :param pulumi.Input[int] netflow_collector_port: The port for the netflow collector.
4028
+ :param pulumi.Input[bool] netflow_enabled: Indicates whether to enable netflow on all ports.
4029
+ :param pulumi.Input[int] netflow_idle_flow_timeout: The number of seconds after which idle flows are forced to be exported to the collector.
4030
+ :param pulumi.Input[bool] netflow_internal_flows_only: Whether to limit analysis to traffic that has both source and destination served by the same host.
4031
+ :param pulumi.Input[int] netflow_observation_domain_id: The observation Domain ID for the netflow collector.
4032
+ :param pulumi.Input[int] netflow_sampling_rate: The ratio of total number of packets to the number of packets analyzed. Set to 0 to disable sampling, meaning that all
4033
+ packets are analyzed.
4034
+ :param pulumi.Input[bool] network_resource_control_enabled: Whether or not to enable network resource control, enabling advanced traffic shaping and resource control features.
4035
+ :param pulumi.Input[str] network_resource_control_version: The network I/O control version to use. Can be one of version2 or version3.
4188
4036
  :param pulumi.Input[int] nfs_maximum_mbit: The maximum allowed usage for the nfs traffic class, in Mbits/sec.
4189
4037
  :param pulumi.Input[int] nfs_reservation_mbit: The amount of guaranteed bandwidth for the nfs traffic class, in Mbits/sec.
4190
4038
  :param pulumi.Input[int] nfs_share_count: The amount of shares to allocate to the nfs traffic class for a custom share level.
4191
4039
  :param pulumi.Input[str] nfs_share_level: The allocation level for the nfs traffic class. Can be one of high, low, normal, or custom.
4192
- :param pulumi.Input[bool] notify_switches: If `true`, the teaming policy will notify the
4193
- broadcast network of an uplink failover, triggering cache updates.
4194
- :param pulumi.Input[int] port_private_secondary_vlan_id: Used to define a secondary VLAN
4195
- ID when using private VLANs.
4196
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchPvlanMappingArgs']]]] pvlan_mappings: Use the `pvlan_mapping` block to declare a
4197
- private VLAN mapping. The options are:
4198
- :param pulumi.Input[Sequence[pulumi.Input[str]]] standby_uplinks: A list of standby uplinks to be used in
4199
- failover. These uplinks need to match the definitions in the
4200
- `uplinks` VDS argument. See
4201
- here for more details.
4040
+ :param pulumi.Input[bool] notify_switches: If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
4041
+ :param pulumi.Input[int] port_private_secondary_vlan_id: The secondary VLAN ID for this port.
4042
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchPvlanMappingArgs', 'DistributedVirtualSwitchPvlanMappingArgsDict']]]] pvlan_mappings: A private VLAN (PVLAN) mapping.
4043
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] standby_uplinks: List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
4202
4044
  :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: The IDs of any tags to attach to this resource.
4203
-
4204
- > **NOTE:** Tagging support requires vCenter Server 6.0 or higher.
4205
- :param pulumi.Input[str] teaming_policy: The uplink teaming policy. Can be one of
4206
- `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`,
4207
- `failover_explicit`, or `loadbalance_loadbased`.
4208
- :param pulumi.Input[bool] tx_uplink: Forward all traffic transmitted by ports for which
4209
- this policy applies to its VDS uplinks.
4210
- :param pulumi.Input[Sequence[pulumi.Input[str]]] uplinks: A list of strings that uniquely identifies the names
4211
- of the uplinks on the VDS across hosts. The number of items in this list
4212
- controls the number of uplinks that exist on the VDS, in addition to the
4213
- names. See here for an example on how to
4214
- use this option.
4045
+ :param pulumi.Input[str] teaming_policy: The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid,
4046
+ failover_explicit, or loadbalance_loadbased.
4047
+ :param pulumi.Input[bool] tx_uplink: If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet
4048
+ forwarded done by the switch.
4049
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] uplinks: A list of uplink ports. The contents of this list control both the uplink count and names of the uplinks on the DVS
4050
+ across hosts.
4215
4051
  :param pulumi.Input[int] vdp_maximum_mbit: The maximum allowed usage for the vdp traffic class, in Mbits/sec.
4216
4052
  :param pulumi.Input[int] vdp_reservation_mbit: The amount of guaranteed bandwidth for the vdp traffic class, in Mbits/sec.
4217
4053
  :param pulumi.Input[int] vdp_share_count: The amount of shares to allocate to the vdp traffic class for a custom share level.
@@ -4224,28 +4060,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4224
4060
  :param pulumi.Input[int] virtualmachine_share_count: The amount of shares to allocate to the virtualMachine traffic class for a custom share level.
4225
4061
  :param pulumi.Input[str] virtualmachine_share_level: The allocation level for the virtualMachine traffic class. Can be one of high, low, normal, or custom.
4226
4062
  :param pulumi.Input[int] vlan_id: The VLAN ID for single VLAN mode. 0 denotes no VLAN.
4227
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DistributedVirtualSwitchVlanRangeArgs']]]] vlan_ranges: Used to denote VLAN trunking. Use the `min_vlan`
4228
- and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple
4229
- `vlan_range` definitions are allowed, but they must not overlap. Example
4230
- below:
4231
-
4232
- <!--Start PulumiCodeChooser -->
4233
- ```python
4234
- import pulumi
4235
- import pulumi_vsphere as vsphere
4236
-
4237
- vds = vsphere.DistributedVirtualSwitch("vds", vlan_ranges=[
4238
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
4239
- max_vlan=199,
4240
- min_vlan=100,
4241
- ),
4242
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
4243
- max_vlan=399,
4244
- min_vlan=300,
4245
- ),
4246
- ])
4247
- ```
4248
- <!--End PulumiCodeChooser -->
4063
+ :param pulumi.Input[Sequence[pulumi.Input[Union['DistributedVirtualSwitchVlanRangeArgs', 'DistributedVirtualSwitchVlanRangeArgsDict']]]] vlan_ranges: The VLAN ID for single VLAN mode. 0 denotes no VLAN.
4249
4064
  :param pulumi.Input[int] vmotion_maximum_mbit: The maximum allowed usage for the vmotion traffic class, in Mbits/sec.
4250
4065
  :param pulumi.Input[int] vmotion_reservation_mbit: The amount of guaranteed bandwidth for the vmotion traffic class, in Mbits/sec.
4251
4066
  :param pulumi.Input[int] vmotion_share_count: The amount of shares to allocate to the vmotion traffic class for a custom share level.
@@ -4360,10 +4175,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4360
4175
  @pulumi.getter(name="activeUplinks")
4361
4176
  def active_uplinks(self) -> pulumi.Output[Sequence[str]]:
4362
4177
  """
4363
- A list of active uplinks to be used in load
4364
- balancing. These uplinks need to match the definitions in the
4365
- `uplinks` VDS argument. See
4366
- here for more details.
4178
+ List of active uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
4367
4179
  """
4368
4180
  return pulumi.get(self, "active_uplinks")
4369
4181
 
@@ -4371,9 +4183,8 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4371
4183
  @pulumi.getter(name="allowForgedTransmits")
4372
4184
  def allow_forged_transmits(self) -> pulumi.Output[bool]:
4373
4185
  """
4374
- Controls whether or not a virtual
4375
- network adapter is allowed to send network traffic with a different MAC
4376
- address than that of its own.
4186
+ Controls whether or not the virtual network adapter is allowed to send network traffic with a different MAC address than
4187
+ that of its own.
4377
4188
  """
4378
4189
  return pulumi.get(self, "allow_forged_transmits")
4379
4190
 
@@ -4381,8 +4192,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4381
4192
  @pulumi.getter(name="allowMacChanges")
4382
4193
  def allow_mac_changes(self) -> pulumi.Output[bool]:
4383
4194
  """
4384
- Controls whether or not the Media Access
4385
- Control (MAC) address can be changed.
4195
+ Controls whether or not the Media Access Control (MAC) address can be changed.
4386
4196
  """
4387
4197
  return pulumi.get(self, "allow_mac_changes")
4388
4198
 
@@ -4390,8 +4200,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4390
4200
  @pulumi.getter(name="allowPromiscuous")
4391
4201
  def allow_promiscuous(self) -> pulumi.Output[bool]:
4392
4202
  """
4393
- Enable promiscuous mode on the network. This
4394
- flag indicates whether or not all traffic is seen on a given port.
4203
+ Enable promiscuous mode on the network. This flag indicates whether or not all traffic is seen on a given port.
4395
4204
  """
4396
4205
  return pulumi.get(self, "allow_promiscuous")
4397
4206
 
@@ -4431,9 +4240,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4431
4240
  @pulumi.getter(name="blockAllPorts")
4432
4241
  def block_all_ports(self) -> pulumi.Output[bool]:
4433
4242
  """
4434
- Shuts down all ports in the port groups that
4435
- this policy applies to, effectively blocking all network access to connected
4436
- virtual devices.
4243
+ Indicates whether to block all ports by default.
4437
4244
  """
4438
4245
  return pulumi.get(self, "block_all_ports")
4439
4246
 
@@ -4441,11 +4248,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4441
4248
  @pulumi.getter(name="checkBeacon")
4442
4249
  def check_beacon(self) -> pulumi.Output[bool]:
4443
4250
  """
4444
- Enables beacon probing as an additional measure
4445
- to detect NIC failure.
4446
-
4447
- > **NOTE:** VMware recommends using a minimum of 3 NICs when using beacon
4448
- probing.
4251
+ Enable beacon probing on the ports this policy applies to.
4449
4252
  """
4450
4253
  return pulumi.get(self, "check_beacon")
4451
4254
 
@@ -4509,8 +4312,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4509
4312
  @pulumi.getter(name="directpathGen2Allowed")
4510
4313
  def directpath_gen2_allowed(self) -> pulumi.Output[bool]:
4511
4314
  """
4512
- Allow VMDirectPath Gen2 for the ports
4513
- for which this policy applies to.
4315
+ Allow VMDirectPath Gen2 on the ports this policy applies to.
4514
4316
  """
4515
4317
  return pulumi.get(self, "directpath_gen2_allowed")
4516
4318
 
@@ -4518,8 +4320,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4518
4320
  @pulumi.getter(name="egressShapingAverageBandwidth")
4519
4321
  def egress_shaping_average_bandwidth(self) -> pulumi.Output[int]:
4520
4322
  """
4521
- The average bandwidth in bits
4522
- per second if egress traffic shaping is enabled on the port.
4323
+ The average egress bandwidth in bits per second if egress shaping is enabled on the port.
4523
4324
  """
4524
4325
  return pulumi.get(self, "egress_shaping_average_bandwidth")
4525
4326
 
@@ -4527,8 +4328,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4527
4328
  @pulumi.getter(name="egressShapingBurstSize")
4528
4329
  def egress_shaping_burst_size(self) -> pulumi.Output[int]:
4529
4330
  """
4530
- The maximum burst size allowed in
4531
- bytes if egress traffic shaping is enabled on the port.
4331
+ The maximum egress burst size allowed in bytes if egress shaping is enabled on the port.
4532
4332
  """
4533
4333
  return pulumi.get(self, "egress_shaping_burst_size")
4534
4334
 
@@ -4536,8 +4336,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4536
4336
  @pulumi.getter(name="egressShapingEnabled")
4537
4337
  def egress_shaping_enabled(self) -> pulumi.Output[bool]:
4538
4338
  """
4539
- `true` if the traffic shaper is enabled
4540
- on the port for egress traffic.
4339
+ True if the traffic shaper is enabled for egress traffic on the port.
4541
4340
  """
4542
4341
  return pulumi.get(self, "egress_shaping_enabled")
4543
4342
 
@@ -4545,8 +4344,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4545
4344
  @pulumi.getter(name="egressShapingPeakBandwidth")
4546
4345
  def egress_shaping_peak_bandwidth(self) -> pulumi.Output[int]:
4547
4346
  """
4548
- The peak bandwidth during bursts
4549
- in bits per second if egress traffic shaping is enabled on the port.
4347
+ The peak egress bandwidth during bursts in bits per second if egress traffic shaping is enabled on the port.
4550
4348
  """
4551
4349
  return pulumi.get(self, "egress_shaping_peak_bandwidth")
4552
4350
 
@@ -4554,8 +4352,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4554
4352
  @pulumi.getter
4555
4353
  def failback(self) -> pulumi.Output[bool]:
4556
4354
  """
4557
- If `true`, the teaming policy will re-activate failed
4558
- uplinks higher in precedence when they come back up.
4355
+ If true, the teaming policy will re-activate failed interfaces higher in precedence when they come back up.
4559
4356
  """
4560
4357
  return pulumi.get(self, "failback")
4561
4358
 
@@ -4636,8 +4433,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4636
4433
  @pulumi.getter
4637
4434
  def hosts(self) -> pulumi.Output[Optional[Sequence['outputs.DistributedVirtualSwitchHost']]]:
4638
4435
  """
4639
- Use the `host` block to declare a host specification. The
4640
- options are:
4436
+ A host member specification.
4641
4437
  """
4642
4438
  return pulumi.get(self, "hosts")
4643
4439
 
@@ -4645,8 +4441,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4645
4441
  @pulumi.getter(name="ignoreOtherPvlanMappings")
4646
4442
  def ignore_other_pvlan_mappings(self) -> pulumi.Output[Optional[bool]]:
4647
4443
  """
4648
- Whether to ignore existing PVLAN
4649
- mappings not managed by this resource. Defaults to false.
4444
+ Whether to ignore existing PVLAN mappings not managed by this resource. Defaults to false.
4650
4445
  """
4651
4446
  return pulumi.get(self, "ignore_other_pvlan_mappings")
4652
4447
 
@@ -4654,8 +4449,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4654
4449
  @pulumi.getter(name="ingressShapingAverageBandwidth")
4655
4450
  def ingress_shaping_average_bandwidth(self) -> pulumi.Output[int]:
4656
4451
  """
4657
- The average bandwidth in
4658
- bits per second if ingress traffic shaping is enabled on the port.
4452
+ The average ingress bandwidth in bits per second if ingress shaping is enabled on the port.
4659
4453
  """
4660
4454
  return pulumi.get(self, "ingress_shaping_average_bandwidth")
4661
4455
 
@@ -4663,8 +4457,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4663
4457
  @pulumi.getter(name="ingressShapingBurstSize")
4664
4458
  def ingress_shaping_burst_size(self) -> pulumi.Output[int]:
4665
4459
  """
4666
- The maximum burst size allowed in
4667
- bytes if ingress traffic shaping is enabled on the port.
4460
+ The maximum ingress burst size allowed in bytes if ingress shaping is enabled on the port.
4668
4461
  """
4669
4462
  return pulumi.get(self, "ingress_shaping_burst_size")
4670
4463
 
@@ -4672,8 +4465,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4672
4465
  @pulumi.getter(name="ingressShapingEnabled")
4673
4466
  def ingress_shaping_enabled(self) -> pulumi.Output[bool]:
4674
4467
  """
4675
- `true` if the traffic shaper is
4676
- enabled on the port for ingress traffic.
4468
+ True if the traffic shaper is enabled for ingress traffic on the port.
4677
4469
  """
4678
4470
  return pulumi.get(self, "ingress_shaping_enabled")
4679
4471
 
@@ -4681,8 +4473,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4681
4473
  @pulumi.getter(name="ingressShapingPeakBandwidth")
4682
4474
  def ingress_shaping_peak_bandwidth(self) -> pulumi.Output[int]:
4683
4475
  """
4684
- The peak bandwidth during
4685
- bursts in bits per second if ingress traffic shaping is enabled on the port.
4476
+ The peak ingress bandwidth during bursts in bits per second if ingress traffic shaping is enabled on the port.
4686
4477
  """
4687
4478
  return pulumi.get(self, "ingress_shaping_peak_bandwidth")
4688
4479
 
@@ -4741,8 +4532,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4741
4532
  @pulumi.getter(name="lacpEnabled")
4742
4533
  def lacp_enabled(self) -> pulumi.Output[bool]:
4743
4534
  """
4744
- Enables LACP for the ports that this policy
4745
- applies to.
4535
+ Whether or not to enable LACP on all uplink ports.
4746
4536
  """
4747
4537
  return pulumi.get(self, "lacp_enabled")
4748
4538
 
@@ -4750,7 +4540,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4750
4540
  @pulumi.getter(name="lacpMode")
4751
4541
  def lacp_mode(self) -> pulumi.Output[str]:
4752
4542
  """
4753
- The LACP mode. Can be one of `active` or `passive`.
4543
+ The uplink LACP mode to use. Can be one of active or passive.
4754
4544
  """
4755
4545
  return pulumi.get(self, "lacp_mode")
4756
4546
 
@@ -4833,9 +4623,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4833
4623
  @pulumi.getter(name="netflowActiveFlowTimeout")
4834
4624
  def netflow_active_flow_timeout(self) -> pulumi.Output[Optional[int]]:
4835
4625
  """
4836
- The number of seconds after which
4837
- active flows are forced to be exported to the collector. Allowed range is
4838
- `60` to `3600`. Default: `60`.
4626
+ The number of seconds after which active flows are forced to be exported to the collector.
4839
4627
  """
4840
4628
  return pulumi.get(self, "netflow_active_flow_timeout")
4841
4629
 
@@ -4843,9 +4631,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4843
4631
  @pulumi.getter(name="netflowCollectorIpAddress")
4844
4632
  def netflow_collector_ip_address(self) -> pulumi.Output[Optional[str]]:
4845
4633
  """
4846
- IP address for the Netflow
4847
- collector, using IPv4 or IPv6. IPv6 is supported in VDS version 6.0 or later.
4848
- Must be set before Netflow can be enabled.
4634
+ IP address for the netflow collector, using IPv4 or IPv6.
4849
4635
  """
4850
4636
  return pulumi.get(self, "netflow_collector_ip_address")
4851
4637
 
@@ -4853,8 +4639,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4853
4639
  @pulumi.getter(name="netflowCollectorPort")
4854
4640
  def netflow_collector_port(self) -> pulumi.Output[Optional[int]]:
4855
4641
  """
4856
- Port for the Netflow collector. This
4857
- must be set before Netflow can be enabled.
4642
+ The port for the netflow collector.
4858
4643
  """
4859
4644
  return pulumi.get(self, "netflow_collector_port")
4860
4645
 
@@ -4862,8 +4647,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4862
4647
  @pulumi.getter(name="netflowEnabled")
4863
4648
  def netflow_enabled(self) -> pulumi.Output[bool]:
4864
4649
  """
4865
- Enables Netflow on all ports that this policy
4866
- applies to.
4650
+ Indicates whether to enable netflow on all ports.
4867
4651
  """
4868
4652
  return pulumi.get(self, "netflow_enabled")
4869
4653
 
@@ -4871,9 +4655,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4871
4655
  @pulumi.getter(name="netflowIdleFlowTimeout")
4872
4656
  def netflow_idle_flow_timeout(self) -> pulumi.Output[Optional[int]]:
4873
4657
  """
4874
- The number of seconds after which
4875
- idle flows are forced to be exported to the collector. Allowed range is `10`
4876
- to `600`. Default: `15`.
4658
+ The number of seconds after which idle flows are forced to be exported to the collector.
4877
4659
  """
4878
4660
  return pulumi.get(self, "netflow_idle_flow_timeout")
4879
4661
 
@@ -4881,9 +4663,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4881
4663
  @pulumi.getter(name="netflowInternalFlowsOnly")
4882
4664
  def netflow_internal_flows_only(self) -> pulumi.Output[Optional[bool]]:
4883
4665
  """
4884
- Whether to limit analysis to
4885
- traffic that has both source and destination served by the same host.
4886
- Default: `false`.
4666
+ Whether to limit analysis to traffic that has both source and destination served by the same host.
4887
4667
  """
4888
4668
  return pulumi.get(self, "netflow_internal_flows_only")
4889
4669
 
@@ -4891,8 +4671,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4891
4671
  @pulumi.getter(name="netflowObservationDomainId")
4892
4672
  def netflow_observation_domain_id(self) -> pulumi.Output[Optional[int]]:
4893
4673
  """
4894
- The observation domain ID for
4895
- the Netflow collector.
4674
+ The observation Domain ID for the netflow collector.
4896
4675
  """
4897
4676
  return pulumi.get(self, "netflow_observation_domain_id")
4898
4677
 
@@ -4900,11 +4679,8 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4900
4679
  @pulumi.getter(name="netflowSamplingRate")
4901
4680
  def netflow_sampling_rate(self) -> pulumi.Output[Optional[int]]:
4902
4681
  """
4903
- The ratio of total number of packets to
4904
- the number of packets analyzed. The default is `0`, which indicates that the
4905
- VDS should analyze all packets. The maximum value is `1000`, which
4906
- indicates an analysis rate of 0.001%!
4907
- (MISSING)
4682
+ The ratio of total number of packets to the number of packets analyzed. Set to 0 to disable sampling, meaning that all
4683
+ packets are analyzed.
4908
4684
  """
4909
4685
  return pulumi.get(self, "netflow_sampling_rate")
4910
4686
 
@@ -4912,8 +4688,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4912
4688
  @pulumi.getter(name="networkResourceControlEnabled")
4913
4689
  def network_resource_control_enabled(self) -> pulumi.Output[Optional[bool]]:
4914
4690
  """
4915
- Set to `true` to enable
4916
- network I/O control. Default: `false`.
4691
+ Whether or not to enable network resource control, enabling advanced traffic shaping and resource control features.
4917
4692
  """
4918
4693
  return pulumi.get(self, "network_resource_control_enabled")
4919
4694
 
@@ -4921,8 +4696,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4921
4696
  @pulumi.getter(name="networkResourceControlVersion")
4922
4697
  def network_resource_control_version(self) -> pulumi.Output[str]:
4923
4698
  """
4924
- The version of network I/O
4925
- control to use. Can be one of `version2` or `version3`. Default: `version2`.
4699
+ The network I/O control version to use. Can be one of version2 or version3.
4926
4700
  """
4927
4701
  return pulumi.get(self, "network_resource_control_version")
4928
4702
 
@@ -4962,8 +4736,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4962
4736
  @pulumi.getter(name="notifySwitches")
4963
4737
  def notify_switches(self) -> pulumi.Output[bool]:
4964
4738
  """
4965
- If `true`, the teaming policy will notify the
4966
- broadcast network of an uplink failover, triggering cache updates.
4739
+ If true, the teaming policy will notify the broadcast network of a NIC failover, triggering cache updates.
4967
4740
  """
4968
4741
  return pulumi.get(self, "notify_switches")
4969
4742
 
@@ -4971,8 +4744,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4971
4744
  @pulumi.getter(name="portPrivateSecondaryVlanId")
4972
4745
  def port_private_secondary_vlan_id(self) -> pulumi.Output[int]:
4973
4746
  """
4974
- Used to define a secondary VLAN
4975
- ID when using private VLANs.
4747
+ The secondary VLAN ID for this port.
4976
4748
  """
4977
4749
  return pulumi.get(self, "port_private_secondary_vlan_id")
4978
4750
 
@@ -4980,8 +4752,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4980
4752
  @pulumi.getter(name="pvlanMappings")
4981
4753
  def pvlan_mappings(self) -> pulumi.Output[Optional[Sequence['outputs.DistributedVirtualSwitchPvlanMapping']]]:
4982
4754
  """
4983
- Use the `pvlan_mapping` block to declare a
4984
- private VLAN mapping. The options are:
4755
+ A private VLAN (PVLAN) mapping.
4985
4756
  """
4986
4757
  return pulumi.get(self, "pvlan_mappings")
4987
4758
 
@@ -4989,10 +4760,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
4989
4760
  @pulumi.getter(name="standbyUplinks")
4990
4761
  def standby_uplinks(self) -> pulumi.Output[Sequence[str]]:
4991
4762
  """
4992
- A list of standby uplinks to be used in
4993
- failover. These uplinks need to match the definitions in the
4994
- `uplinks` VDS argument. See
4995
- here for more details.
4763
+ List of standby uplinks used for load balancing, matching the names of the uplinks assigned in the DVS.
4996
4764
  """
4997
4765
  return pulumi.get(self, "standby_uplinks")
4998
4766
 
@@ -5001,8 +4769,6 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
5001
4769
  def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
5002
4770
  """
5003
4771
  The IDs of any tags to attach to this resource.
5004
-
5005
- > **NOTE:** Tagging support requires vCenter Server 6.0 or higher.
5006
4772
  """
5007
4773
  return pulumi.get(self, "tags")
5008
4774
 
@@ -5010,9 +4776,8 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
5010
4776
  @pulumi.getter(name="teamingPolicy")
5011
4777
  def teaming_policy(self) -> pulumi.Output[str]:
5012
4778
  """
5013
- The uplink teaming policy. Can be one of
5014
- `loadbalance_ip`, `loadbalance_srcmac`, `loadbalance_srcid`,
5015
- `failover_explicit`, or `loadbalance_loadbased`.
4779
+ The network adapter teaming policy. Can be one of loadbalance_ip, loadbalance_srcmac, loadbalance_srcid,
4780
+ failover_explicit, or loadbalance_loadbased.
5016
4781
  """
5017
4782
  return pulumi.get(self, "teaming_policy")
5018
4783
 
@@ -5020,8 +4785,8 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
5020
4785
  @pulumi.getter(name="txUplink")
5021
4786
  def tx_uplink(self) -> pulumi.Output[bool]:
5022
4787
  """
5023
- Forward all traffic transmitted by ports for which
5024
- this policy applies to its VDS uplinks.
4788
+ If true, a copy of packets sent to the switch will always be forwarded to an uplink in addition to the regular packet
4789
+ forwarded done by the switch.
5025
4790
  """
5026
4791
  return pulumi.get(self, "tx_uplink")
5027
4792
 
@@ -5029,11 +4794,8 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
5029
4794
  @pulumi.getter
5030
4795
  def uplinks(self) -> pulumi.Output[Sequence[str]]:
5031
4796
  """
5032
- A list of strings that uniquely identifies the names
5033
- of the uplinks on the VDS across hosts. The number of items in this list
5034
- controls the number of uplinks that exist on the VDS, in addition to the
5035
- names. See here for an example on how to
5036
- use this option.
4797
+ A list of uplink ports. The contents of this list control both the uplink count and names of the uplinks on the DVS
4798
+ across hosts.
5037
4799
  """
5038
4800
  return pulumi.get(self, "uplinks")
5039
4801
 
@@ -5123,28 +4885,7 @@ class DistributedVirtualSwitch(pulumi.CustomResource):
5123
4885
  @pulumi.getter(name="vlanRanges")
5124
4886
  def vlan_ranges(self) -> pulumi.Output[Sequence['outputs.DistributedVirtualSwitchVlanRange']]:
5125
4887
  """
5126
- Used to denote VLAN trunking. Use the `min_vlan`
5127
- and `max_vlan` sub-arguments to define the tagged VLAN range. Multiple
5128
- `vlan_range` definitions are allowed, but they must not overlap. Example
5129
- below:
5130
-
5131
- <!--Start PulumiCodeChooser -->
5132
- ```python
5133
- import pulumi
5134
- import pulumi_vsphere as vsphere
5135
-
5136
- vds = vsphere.DistributedVirtualSwitch("vds", vlan_ranges=[
5137
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
5138
- max_vlan=199,
5139
- min_vlan=100,
5140
- ),
5141
- vsphere.DistributedVirtualSwitchVlanRangeArgs(
5142
- max_vlan=399,
5143
- min_vlan=300,
5144
- ),
5145
- ])
5146
- ```
5147
- <!--End PulumiCodeChooser -->
4888
+ The VLAN ID for single VLAN mode. 0 denotes no VLAN.
5148
4889
  """
5149
4890
  return pulumi.get(self, "vlan_ranges")
5150
4891