@pulumi/vsphere 4.11.2 → 4.11.3-alpha.1727724971

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 (162) hide show
  1. package/computeCluster.d.ts +89 -0
  2. package/computeCluster.js +89 -0
  3. package/computeCluster.js.map +1 -1
  4. package/computeClusterHostGroup.d.ts +32 -0
  5. package/computeClusterHostGroup.js +32 -0
  6. package/computeClusterHostGroup.js.map +1 -1
  7. package/computeClusterVmAffinityRule.d.ts +12 -1
  8. package/computeClusterVmAffinityRule.js +12 -1
  9. package/computeClusterVmAffinityRule.js.map +1 -1
  10. package/computeClusterVmAntiAffinityRule.d.ts +19 -0
  11. package/computeClusterVmAntiAffinityRule.js +19 -0
  12. package/computeClusterVmAntiAffinityRule.js.map +1 -1
  13. package/computeClusterVmDependencyRule.d.ts +114 -0
  14. package/computeClusterVmDependencyRule.js +114 -0
  15. package/computeClusterVmDependencyRule.js.map +1 -1
  16. package/computeClusterVmGroup.d.ts +91 -0
  17. package/computeClusterVmGroup.js +91 -0
  18. package/computeClusterVmGroup.js.map +1 -1
  19. package/computeClusterVmHostRule.d.ts +35 -0
  20. package/computeClusterVmHostRule.js +35 -0
  21. package/computeClusterVmHostRule.js.map +1 -1
  22. package/contentLibrary.d.ts +60 -0
  23. package/contentLibrary.js +60 -0
  24. package/contentLibrary.js.map +1 -1
  25. package/contentLibraryItem.d.ts +85 -0
  26. package/contentLibraryItem.js +85 -0
  27. package/contentLibraryItem.js.map +1 -1
  28. package/customAttribute.d.ts +38 -0
  29. package/customAttribute.js +38 -0
  30. package/customAttribute.js.map +1 -1
  31. package/datacenter.d.ts +7 -2
  32. package/datacenter.js +7 -2
  33. package/datacenter.js.map +1 -1
  34. package/datastoreCluster.d.ts +30 -0
  35. package/datastoreCluster.js +30 -0
  36. package/datastoreCluster.js.map +1 -1
  37. package/datastoreClusterVmAntiAffinityRule.d.ts +89 -0
  38. package/datastoreClusterVmAntiAffinityRule.js +89 -0
  39. package/datastoreClusterVmAntiAffinityRule.js.map +1 -1
  40. package/distributedPortGroup.d.ts +145 -0
  41. package/distributedPortGroup.js +145 -0
  42. package/distributedPortGroup.js.map +1 -1
  43. package/distributedVirtualSwitch.d.ts +131 -0
  44. package/distributedVirtualSwitch.js +131 -0
  45. package/distributedVirtualSwitch.js.map +1 -1
  46. package/dpmHostOverride.d.ts +30 -0
  47. package/dpmHostOverride.js +30 -0
  48. package/dpmHostOverride.js.map +1 -1
  49. package/drsVmOverride.d.ts +32 -0
  50. package/drsVmOverride.js +32 -0
  51. package/drsVmOverride.js.map +1 -1
  52. package/folder.d.ts +72 -0
  53. package/folder.js +72 -0
  54. package/folder.js.map +1 -1
  55. package/getComputeCluster.js +5 -1
  56. package/getComputeCluster.js.map +1 -1
  57. package/getComputeClusterHostGroup.d.ts +2 -2
  58. package/getComputeClusterHostGroup.js +7 -3
  59. package/getComputeClusterHostGroup.js.map +1 -1
  60. package/getContentLibrary.js +4 -1
  61. package/getContentLibrary.js.map +1 -1
  62. package/getContentLibraryItem.js +6 -1
  63. package/getContentLibraryItem.js.map +1 -1
  64. package/getCustomAttribute.js +4 -1
  65. package/getCustomAttribute.js.map +1 -1
  66. package/getDatacenter.js +5 -1
  67. package/getDatacenter.js.map +1 -1
  68. package/getDatastore.js +6 -1
  69. package/getDatastore.js.map +1 -1
  70. package/getDatastoreCluster.js +5 -1
  71. package/getDatastoreCluster.js.map +1 -1
  72. package/getDatastoreStats.js +6 -1
  73. package/getDatastoreStats.js.map +1 -1
  74. package/getDistributedVirtualSwitch.js +5 -1
  75. package/getDistributedVirtualSwitch.js.map +1 -1
  76. package/getDynamic.js +6 -1
  77. package/getDynamic.js.map +1 -1
  78. package/getFolder.js +4 -1
  79. package/getFolder.js.map +1 -1
  80. package/getGuestOsCustomization.js +4 -1
  81. package/getGuestOsCustomization.js.map +1 -1
  82. package/getHost.js +5 -1
  83. package/getHost.js.map +1 -1
  84. package/getHostBaseImages.js +2 -1
  85. package/getHostBaseImages.js.map +1 -1
  86. package/getHostPciDevice.js +7 -1
  87. package/getHostPciDevice.js.map +1 -1
  88. package/getHostThumbprint.js +6 -1
  89. package/getHostThumbprint.js.map +1 -1
  90. package/getHostVgpuProfile.js +5 -1
  91. package/getHostVgpuProfile.js.map +1 -1
  92. package/getLicense.js +4 -1
  93. package/getLicense.js.map +1 -1
  94. package/getNetwork.js +6 -1
  95. package/getNetwork.js.map +1 -1
  96. package/getOvfVmTemplate.js +17 -1
  97. package/getOvfVmTemplate.js.map +1 -1
  98. package/getPolicy.js +4 -1
  99. package/getPolicy.js.map +1 -1
  100. package/getResourcePool.js +6 -1
  101. package/getResourcePool.js.map +1 -1
  102. package/getRole.js +7 -1
  103. package/getRole.js.map +1 -1
  104. package/getTag.js +5 -1
  105. package/getTag.js.map +1 -1
  106. package/getTagCategory.js +4 -1
  107. package/getTagCategory.js.map +1 -1
  108. package/getVappContainer.js +5 -1
  109. package/getVappContainer.js.map +1 -1
  110. package/getVirtualMachine.js +59 -1
  111. package/getVirtualMachine.js.map +1 -1
  112. package/getVmfsDisks.js +6 -1
  113. package/getVmfsDisks.js.map +1 -1
  114. package/haVmOverride.d.ts +90 -0
  115. package/haVmOverride.js +90 -0
  116. package/haVmOverride.js.map +1 -1
  117. package/host.d.ts +131 -0
  118. package/host.js +131 -0
  119. package/host.js.map +1 -1
  120. package/hostPortGroup.d.ts +6 -1
  121. package/hostPortGroup.js +6 -1
  122. package/hostPortGroup.js.map +1 -1
  123. package/hostVirtualSwitch.d.ts +33 -0
  124. package/hostVirtualSwitch.js +33 -0
  125. package/hostVirtualSwitch.js.map +1 -1
  126. package/nasDatastore.d.ts +32 -0
  127. package/nasDatastore.js +32 -0
  128. package/nasDatastore.js.map +1 -1
  129. package/package.json +2 -2
  130. package/resourcePool.d.ts +2 -8
  131. package/resourcePool.js +2 -8
  132. package/resourcePool.js.map +1 -1
  133. package/role.d.ts +15 -0
  134. package/role.js +15 -0
  135. package/role.js.map +1 -1
  136. package/storageDrsVmOverride.d.ts +77 -0
  137. package/storageDrsVmOverride.js +77 -0
  138. package/storageDrsVmOverride.js.map +1 -1
  139. package/tag.d.ts +82 -0
  140. package/tag.js +82 -0
  141. package/tag.js.map +1 -1
  142. package/tagCategory.d.ts +41 -0
  143. package/tagCategory.js +41 -0
  144. package/tagCategory.js.map +1 -1
  145. package/vappContainer.d.ts +95 -0
  146. package/vappContainer.js +95 -0
  147. package/vappContainer.js.map +1 -1
  148. package/vappEntity.d.ts +79 -0
  149. package/vappEntity.js +79 -0
  150. package/vappEntity.js.map +1 -1
  151. package/virtualDisk.d.ts +44 -0
  152. package/virtualDisk.js +44 -0
  153. package/virtualDisk.js.map +1 -1
  154. package/virtualMachine.d.ts +25 -0
  155. package/virtualMachine.js +25 -0
  156. package/virtualMachine.js.map +1 -1
  157. package/vmfsDatastore.d.ts +144 -0
  158. package/vmfsDatastore.js +144 -0
  159. package/vmfsDatastore.js.map +1 -1
  160. package/vnic.d.ts +7 -2
  161. package/vnic.js +7 -2
  162. package/vnic.js.map +1 -1
@@ -1,6 +1,151 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  import * as inputs from "./types/input";
3
3
  import * as outputs from "./types/output";
4
+ /**
5
+ * The `vsphere.DistributedPortGroup` resource can be used to manage
6
+ * distributed port groups connected to vSphere Distributed Switches (VDS).
7
+ * A vSphere Distributed Switch can be managed by the
8
+ * `vsphere.DistributedVirtualSwitch` resource.
9
+ *
10
+ * Distributed port groups can be used as networks for virtual machines, allowing
11
+ * the virtual machines to use the networking supplied by a vSphere Distributed
12
+ * Switch, with a set of policies that apply to that individual network, if
13
+ * desired.
14
+ *
15
+ * * For an overview on vSphere networking concepts, refer to the vSphere
16
+ * [product documentation][ref-vsphere-net-concepts].
17
+ *
18
+ * * For more information on distributed port groups, refer to the vSphere
19
+ * [product documentation][ref-vsphere-dvportgroup].
20
+ *
21
+ * [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
22
+ * [ref-vsphere-dvportgroup]: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-69933F6E-2442-46CF-AA17-1196CB9A0A09.html
23
+ *
24
+ * > **NOTE:** This resource requires vCenter and is not available on
25
+ * direct ESXi host connections.
26
+ *
27
+ * ## Example Usage
28
+ *
29
+ * The configuration below builds on the example given in the
30
+ * `vsphere.DistributedVirtualSwitch` resource by
31
+ * adding the `vsphere.DistributedPortGroup` resource, attaching itself to the
32
+ * vSphere Distributed Switch and assigning VLAN ID 1000.
33
+ *
34
+ * ```typescript
35
+ * import * as pulumi from "@pulumi/pulumi";
36
+ * import * as vsphere from "@pulumi/vsphere";
37
+ *
38
+ * const config = new pulumi.Config();
39
+ * const hosts = config.getObject("hosts") || [
40
+ * "esxi-01.example.com",
41
+ * "esxi-02.example.com",
42
+ * "esxi-03.example.com",
43
+ * ];
44
+ * const networkInterfaces = config.getObject("networkInterfaces") || [
45
+ * "vmnic0",
46
+ * "vmnic1",
47
+ * "vmnic2",
48
+ * "vmnic3",
49
+ * ];
50
+ * const datacenter = vsphere.getDatacenter({
51
+ * name: "dc-01",
52
+ * });
53
+ * const host = (new Array(hosts.length)).map((_, i) => i).map(__index => (vsphere.getHost({
54
+ * name: hosts[__index],
55
+ * datacenterId: _arg0_.id,
56
+ * })));
57
+ * const vds = new vsphere.DistributedVirtualSwitch("vds", {
58
+ * name: "vds-01",
59
+ * datacenterId: datacenter.then(datacenter => datacenter.id),
60
+ * uplinks: [
61
+ * "uplink1",
62
+ * "uplink2",
63
+ * "uplink3",
64
+ * "uplink4",
65
+ * ],
66
+ * activeUplinks: [
67
+ * "uplink1",
68
+ * "uplink2",
69
+ * ],
70
+ * standbyUplinks: [
71
+ * "uplink3",
72
+ * "uplink4",
73
+ * ],
74
+ * hosts: [
75
+ * {
76
+ * hostSystemId: host[0].then(host => host.id),
77
+ * devices: [networkInterfaces],
78
+ * },
79
+ * {
80
+ * hostSystemId: host[1].then(host => host.id),
81
+ * devices: [networkInterfaces],
82
+ * },
83
+ * {
84
+ * hostSystemId: host[2].then(host => host.id),
85
+ * devices: [networkInterfaces],
86
+ * },
87
+ * ],
88
+ * });
89
+ * const pg = new vsphere.DistributedPortGroup("pg", {
90
+ * name: "pg-01",
91
+ * distributedVirtualSwitchUuid: vds.id,
92
+ * vlanId: 1000,
93
+ * });
94
+ * ```
95
+ *
96
+ * ### Overriding VDS policies
97
+ *
98
+ * All of the default port policies available in the
99
+ * `vsphere.DistributedVirtualSwitch` resource can be overridden on the port
100
+ * group level by specifying new settings for them.
101
+ *
102
+ * As an example, we also take this example from the
103
+ * `vsphere.DistributedVirtualSwitch` resource where we manually specify our
104
+ * uplink count and uplink order. While the vSphere Distributed Switch has a
105
+ * default policy of using the first uplink as an active uplink and the second
106
+ * one as a standby, the overridden port group policy means that both uplinks
107
+ * will be used as active uplinks in this specific port group.
108
+ *
109
+ * ```typescript
110
+ * import * as pulumi from "@pulumi/pulumi";
111
+ * import * as vsphere from "@pulumi/vsphere";
112
+ *
113
+ * const vds = new vsphere.DistributedVirtualSwitch("vds", {
114
+ * name: "vds-01",
115
+ * datacenterId: datacenter.id,
116
+ * uplinks: [
117
+ * "uplink1",
118
+ * "uplink2",
119
+ * ],
120
+ * activeUplinks: ["uplink1"],
121
+ * standbyUplinks: ["uplink2"],
122
+ * });
123
+ * const pg = new vsphere.DistributedPortGroup("pg", {
124
+ * name: "pg-01",
125
+ * distributedVirtualSwitchUuid: vds.id,
126
+ * vlanId: 1000,
127
+ * activeUplinks: [
128
+ * "uplink1",
129
+ * "uplink2",
130
+ * ],
131
+ * standbyUplinks: [],
132
+ * });
133
+ * ```
134
+ *
135
+ * ## Import
136
+ *
137
+ * An existing port group can be imported into this resource using
138
+ *
139
+ * the managed object id of the port group, via the following command:
140
+ *
141
+ * ```sh
142
+ * $ pulumi import vsphere:index/distributedPortGroup:DistributedPortGroup pg /dc-01/network/pg-01
143
+ * ```
144
+ *
145
+ * The above would import the port group named `pg-01` that is located in the `dc-01`
146
+ *
147
+ * datacenter.
148
+ */
4
149
  export declare class DistributedPortGroup extends pulumi.CustomResource {
5
150
  /**
6
151
  * Get an existing DistributedPortGroup resource's state with the given name, ID, and optional extra
@@ -5,6 +5,151 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.DistributedPortGroup = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("./utilities");
8
+ /**
9
+ * The `vsphere.DistributedPortGroup` resource can be used to manage
10
+ * distributed port groups connected to vSphere Distributed Switches (VDS).
11
+ * A vSphere Distributed Switch can be managed by the
12
+ * `vsphere.DistributedVirtualSwitch` resource.
13
+ *
14
+ * Distributed port groups can be used as networks for virtual machines, allowing
15
+ * the virtual machines to use the networking supplied by a vSphere Distributed
16
+ * Switch, with a set of policies that apply to that individual network, if
17
+ * desired.
18
+ *
19
+ * * For an overview on vSphere networking concepts, refer to the vSphere
20
+ * [product documentation][ref-vsphere-net-concepts].
21
+ *
22
+ * * For more information on distributed port groups, refer to the vSphere
23
+ * [product documentation][ref-vsphere-dvportgroup].
24
+ *
25
+ * [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
26
+ * [ref-vsphere-dvportgroup]: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-69933F6E-2442-46CF-AA17-1196CB9A0A09.html
27
+ *
28
+ * > **NOTE:** This resource requires vCenter and is not available on
29
+ * direct ESXi host connections.
30
+ *
31
+ * ## Example Usage
32
+ *
33
+ * The configuration below builds on the example given in the
34
+ * `vsphere.DistributedVirtualSwitch` resource by
35
+ * adding the `vsphere.DistributedPortGroup` resource, attaching itself to the
36
+ * vSphere Distributed Switch and assigning VLAN ID 1000.
37
+ *
38
+ * ```typescript
39
+ * import * as pulumi from "@pulumi/pulumi";
40
+ * import * as vsphere from "@pulumi/vsphere";
41
+ *
42
+ * const config = new pulumi.Config();
43
+ * const hosts = config.getObject("hosts") || [
44
+ * "esxi-01.example.com",
45
+ * "esxi-02.example.com",
46
+ * "esxi-03.example.com",
47
+ * ];
48
+ * const networkInterfaces = config.getObject("networkInterfaces") || [
49
+ * "vmnic0",
50
+ * "vmnic1",
51
+ * "vmnic2",
52
+ * "vmnic3",
53
+ * ];
54
+ * const datacenter = vsphere.getDatacenter({
55
+ * name: "dc-01",
56
+ * });
57
+ * const host = (new Array(hosts.length)).map((_, i) => i).map(__index => (vsphere.getHost({
58
+ * name: hosts[__index],
59
+ * datacenterId: _arg0_.id,
60
+ * })));
61
+ * const vds = new vsphere.DistributedVirtualSwitch("vds", {
62
+ * name: "vds-01",
63
+ * datacenterId: datacenter.then(datacenter => datacenter.id),
64
+ * uplinks: [
65
+ * "uplink1",
66
+ * "uplink2",
67
+ * "uplink3",
68
+ * "uplink4",
69
+ * ],
70
+ * activeUplinks: [
71
+ * "uplink1",
72
+ * "uplink2",
73
+ * ],
74
+ * standbyUplinks: [
75
+ * "uplink3",
76
+ * "uplink4",
77
+ * ],
78
+ * hosts: [
79
+ * {
80
+ * hostSystemId: host[0].then(host => host.id),
81
+ * devices: [networkInterfaces],
82
+ * },
83
+ * {
84
+ * hostSystemId: host[1].then(host => host.id),
85
+ * devices: [networkInterfaces],
86
+ * },
87
+ * {
88
+ * hostSystemId: host[2].then(host => host.id),
89
+ * devices: [networkInterfaces],
90
+ * },
91
+ * ],
92
+ * });
93
+ * const pg = new vsphere.DistributedPortGroup("pg", {
94
+ * name: "pg-01",
95
+ * distributedVirtualSwitchUuid: vds.id,
96
+ * vlanId: 1000,
97
+ * });
98
+ * ```
99
+ *
100
+ * ### Overriding VDS policies
101
+ *
102
+ * All of the default port policies available in the
103
+ * `vsphere.DistributedVirtualSwitch` resource can be overridden on the port
104
+ * group level by specifying new settings for them.
105
+ *
106
+ * As an example, we also take this example from the
107
+ * `vsphere.DistributedVirtualSwitch` resource where we manually specify our
108
+ * uplink count and uplink order. While the vSphere Distributed Switch has a
109
+ * default policy of using the first uplink as an active uplink and the second
110
+ * one as a standby, the overridden port group policy means that both uplinks
111
+ * will be used as active uplinks in this specific port group.
112
+ *
113
+ * ```typescript
114
+ * import * as pulumi from "@pulumi/pulumi";
115
+ * import * as vsphere from "@pulumi/vsphere";
116
+ *
117
+ * const vds = new vsphere.DistributedVirtualSwitch("vds", {
118
+ * name: "vds-01",
119
+ * datacenterId: datacenter.id,
120
+ * uplinks: [
121
+ * "uplink1",
122
+ * "uplink2",
123
+ * ],
124
+ * activeUplinks: ["uplink1"],
125
+ * standbyUplinks: ["uplink2"],
126
+ * });
127
+ * const pg = new vsphere.DistributedPortGroup("pg", {
128
+ * name: "pg-01",
129
+ * distributedVirtualSwitchUuid: vds.id,
130
+ * vlanId: 1000,
131
+ * activeUplinks: [
132
+ * "uplink1",
133
+ * "uplink2",
134
+ * ],
135
+ * standbyUplinks: [],
136
+ * });
137
+ * ```
138
+ *
139
+ * ## Import
140
+ *
141
+ * An existing port group can be imported into this resource using
142
+ *
143
+ * the managed object id of the port group, via the following command:
144
+ *
145
+ * ```sh
146
+ * $ pulumi import vsphere:index/distributedPortGroup:DistributedPortGroup pg /dc-01/network/pg-01
147
+ * ```
148
+ *
149
+ * The above would import the port group named `pg-01` that is located in the `dc-01`
150
+ *
151
+ * datacenter.
152
+ */
8
153
  class DistributedPortGroup extends pulumi.CustomResource {
9
154
  /**
10
155
  * Get an existing DistributedPortGroup resource's state with the given name, ID, and optional extra
@@ -1 +1 @@
1
- {"version":3,"file":"distributedPortGroup.js","sourceRoot":"","sources":["../distributedPortGroup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"distributedPortGroup.js","sourceRoot":"","sources":["../distributedPortGroup.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,137 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  import * as inputs from "./types/input";
3
3
  import * as outputs from "./types/output";
4
+ /**
5
+ * The `vsphere.DistributedVirtualSwitch` resource can be used to manage vSphere
6
+ * Distributed Switches (VDS).
7
+ *
8
+ * An essential component of a distributed, scalable vSphere infrastructure, the
9
+ * VDS provides centralized management and monitoring of the networking
10
+ * configuration for all the hosts that are associated with the switch.
11
+ * In addition to adding distributed port groups
12
+ * (see the `vsphere.DistributedPortGroup` resource)
13
+ * that can be used as networks for virtual machines, a VDS can be configured to
14
+ * perform advanced high availability, traffic shaping, network monitoring, etc.
15
+ *
16
+ * For an overview on vSphere networking concepts, see
17
+ * [this page][ref-vsphere-net-concepts].
18
+ *
19
+ * For more information on the VDS, see [this page][ref-vsphere-vds].
20
+ *
21
+ * [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
22
+ * [ref-vsphere-vds]: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-375B45C7-684C-4C51-BA3C-70E48DFABF04.html
23
+ *
24
+ * > **NOTE:** This resource requires vCenter and is not available on
25
+ * direct ESXi host connections.
26
+ *
27
+ * ## Example Usage
28
+ *
29
+ * The following example below demonstrates a "standard" example of configuring a
30
+ * VDS in a 3-node vSphere datacenter named `dc1`, across 4 NICs with two being
31
+ * used as active, and two being used as passive. Note that the NIC failover order
32
+ * propagates to any port groups configured on this VDS and can be overridden.
33
+ *
34
+ * ```typescript
35
+ * import * as pulumi from "@pulumi/pulumi";
36
+ * import * as vsphere from "@pulumi/vsphere";
37
+ *
38
+ * const config = new pulumi.Config();
39
+ * const hosts = config.getObject("hosts") || [
40
+ * "esxi-01.example.com",
41
+ * "esxi-02.example.com",
42
+ * "esxi-03.example.com",
43
+ * ];
44
+ * const networkInterfaces = config.getObject("networkInterfaces") || [
45
+ * "vmnic0",
46
+ * "vmnic1",
47
+ * "vmnic2",
48
+ * "vmnic3",
49
+ * ];
50
+ * const datacenter = vsphere.getDatacenter({
51
+ * name: "dc-01",
52
+ * });
53
+ * const host = (new Array(hosts.length)).map((_, i) => i).map(__index => (vsphere.getHost({
54
+ * name: hosts[__index],
55
+ * datacenterId: _arg0_.id,
56
+ * })));
57
+ * const vds = new vsphere.DistributedVirtualSwitch("vds", {
58
+ * name: "vds-01",
59
+ * datacenterId: datacenter.then(datacenter => datacenter.id),
60
+ * uplinks: [
61
+ * "uplink1",
62
+ * "uplink2",
63
+ * "uplink3",
64
+ * "uplink4",
65
+ * ],
66
+ * activeUplinks: [
67
+ * "uplink1",
68
+ * "uplink2",
69
+ * ],
70
+ * standbyUplinks: [
71
+ * "uplink3",
72
+ * "uplink4",
73
+ * ],
74
+ * hosts: [
75
+ * {
76
+ * hostSystemId: host[0].then(host => host.id),
77
+ * devices: [networkInterfaces],
78
+ * },
79
+ * {
80
+ * hostSystemId: host[1].then(host => host.id),
81
+ * devices: [networkInterfaces],
82
+ * },
83
+ * {
84
+ * hostSystemId: host[2].then(host => host.id),
85
+ * devices: [networkInterfaces],
86
+ * },
87
+ * ],
88
+ * });
89
+ * ```
90
+ *
91
+ * ### Uplink name and count control
92
+ *
93
+ * The following abridged example below demonstrates how you can manage the number
94
+ * of uplinks, and the name of the uplinks via the `uplinks` parameter.
95
+ *
96
+ * Note that if you change the uplink naming and count after creating the VDS, you
97
+ * may need to explicitly specify `activeUplinks` and `standbyUplinks` as these
98
+ * values are saved to state after creation, regardless of being
99
+ * specified in config, and will drift if not modified, causing errors.
100
+ *
101
+ * ```typescript
102
+ * import * as pulumi from "@pulumi/pulumi";
103
+ * import * as vsphere from "@pulumi/vsphere";
104
+ *
105
+ * const vds = new vsphere.DistributedVirtualSwitch("vds", {
106
+ * name: "vds-01",
107
+ * datacenterId: datacenter.id,
108
+ * uplinks: [
109
+ * "uplink1",
110
+ * "uplink2",
111
+ * ],
112
+ * activeUplinks: ["uplink1"],
113
+ * standbyUplinks: ["uplink2"],
114
+ * });
115
+ * ```
116
+ *
117
+ * > **NOTE:** The default uplink names when a VDS is created are `uplink1`
118
+ * through to `uplink4`, however this default is not guaranteed to be stable and
119
+ * you are encouraged to set your own.
120
+ *
121
+ * ## Import
122
+ *
123
+ * An existing VDS can be imported into this resource via the path
124
+ *
125
+ * to the VDS, via the following command:
126
+ *
127
+ * ```sh
128
+ * $ pulumi import vsphere:index/distributedVirtualSwitch:DistributedVirtualSwitch vds /dc-01/network/vds-01
129
+ * ```
130
+ *
131
+ * The above would import the VDS named `vds-01` that is located in the `dc-01`
132
+ *
133
+ * datacenter.
134
+ */
4
135
  export declare class DistributedVirtualSwitch extends pulumi.CustomResource {
5
136
  /**
6
137
  * Get an existing DistributedVirtualSwitch resource's state with the given name, ID, and optional extra
@@ -5,6 +5,137 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.DistributedVirtualSwitch = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("./utilities");
8
+ /**
9
+ * The `vsphere.DistributedVirtualSwitch` resource can be used to manage vSphere
10
+ * Distributed Switches (VDS).
11
+ *
12
+ * An essential component of a distributed, scalable vSphere infrastructure, the
13
+ * VDS provides centralized management and monitoring of the networking
14
+ * configuration for all the hosts that are associated with the switch.
15
+ * In addition to adding distributed port groups
16
+ * (see the `vsphere.DistributedPortGroup` resource)
17
+ * that can be used as networks for virtual machines, a VDS can be configured to
18
+ * perform advanced high availability, traffic shaping, network monitoring, etc.
19
+ *
20
+ * For an overview on vSphere networking concepts, see
21
+ * [this page][ref-vsphere-net-concepts].
22
+ *
23
+ * For more information on the VDS, see [this page][ref-vsphere-vds].
24
+ *
25
+ * [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
26
+ * [ref-vsphere-vds]: https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-375B45C7-684C-4C51-BA3C-70E48DFABF04.html
27
+ *
28
+ * > **NOTE:** This resource requires vCenter and is not available on
29
+ * direct ESXi host connections.
30
+ *
31
+ * ## Example Usage
32
+ *
33
+ * The following example below demonstrates a "standard" example of configuring a
34
+ * VDS in a 3-node vSphere datacenter named `dc1`, across 4 NICs with two being
35
+ * used as active, and two being used as passive. Note that the NIC failover order
36
+ * propagates to any port groups configured on this VDS and can be overridden.
37
+ *
38
+ * ```typescript
39
+ * import * as pulumi from "@pulumi/pulumi";
40
+ * import * as vsphere from "@pulumi/vsphere";
41
+ *
42
+ * const config = new pulumi.Config();
43
+ * const hosts = config.getObject("hosts") || [
44
+ * "esxi-01.example.com",
45
+ * "esxi-02.example.com",
46
+ * "esxi-03.example.com",
47
+ * ];
48
+ * const networkInterfaces = config.getObject("networkInterfaces") || [
49
+ * "vmnic0",
50
+ * "vmnic1",
51
+ * "vmnic2",
52
+ * "vmnic3",
53
+ * ];
54
+ * const datacenter = vsphere.getDatacenter({
55
+ * name: "dc-01",
56
+ * });
57
+ * const host = (new Array(hosts.length)).map((_, i) => i).map(__index => (vsphere.getHost({
58
+ * name: hosts[__index],
59
+ * datacenterId: _arg0_.id,
60
+ * })));
61
+ * const vds = new vsphere.DistributedVirtualSwitch("vds", {
62
+ * name: "vds-01",
63
+ * datacenterId: datacenter.then(datacenter => datacenter.id),
64
+ * uplinks: [
65
+ * "uplink1",
66
+ * "uplink2",
67
+ * "uplink3",
68
+ * "uplink4",
69
+ * ],
70
+ * activeUplinks: [
71
+ * "uplink1",
72
+ * "uplink2",
73
+ * ],
74
+ * standbyUplinks: [
75
+ * "uplink3",
76
+ * "uplink4",
77
+ * ],
78
+ * hosts: [
79
+ * {
80
+ * hostSystemId: host[0].then(host => host.id),
81
+ * devices: [networkInterfaces],
82
+ * },
83
+ * {
84
+ * hostSystemId: host[1].then(host => host.id),
85
+ * devices: [networkInterfaces],
86
+ * },
87
+ * {
88
+ * hostSystemId: host[2].then(host => host.id),
89
+ * devices: [networkInterfaces],
90
+ * },
91
+ * ],
92
+ * });
93
+ * ```
94
+ *
95
+ * ### Uplink name and count control
96
+ *
97
+ * The following abridged example below demonstrates how you can manage the number
98
+ * of uplinks, and the name of the uplinks via the `uplinks` parameter.
99
+ *
100
+ * Note that if you change the uplink naming and count after creating the VDS, you
101
+ * may need to explicitly specify `activeUplinks` and `standbyUplinks` as these
102
+ * values are saved to state after creation, regardless of being
103
+ * specified in config, and will drift if not modified, causing errors.
104
+ *
105
+ * ```typescript
106
+ * import * as pulumi from "@pulumi/pulumi";
107
+ * import * as vsphere from "@pulumi/vsphere";
108
+ *
109
+ * const vds = new vsphere.DistributedVirtualSwitch("vds", {
110
+ * name: "vds-01",
111
+ * datacenterId: datacenter.id,
112
+ * uplinks: [
113
+ * "uplink1",
114
+ * "uplink2",
115
+ * ],
116
+ * activeUplinks: ["uplink1"],
117
+ * standbyUplinks: ["uplink2"],
118
+ * });
119
+ * ```
120
+ *
121
+ * > **NOTE:** The default uplink names when a VDS is created are `uplink1`
122
+ * through to `uplink4`, however this default is not guaranteed to be stable and
123
+ * you are encouraged to set your own.
124
+ *
125
+ * ## Import
126
+ *
127
+ * An existing VDS can be imported into this resource via the path
128
+ *
129
+ * to the VDS, via the following command:
130
+ *
131
+ * ```sh
132
+ * $ pulumi import vsphere:index/distributedVirtualSwitch:DistributedVirtualSwitch vds /dc-01/network/vds-01
133
+ * ```
134
+ *
135
+ * The above would import the VDS named `vds-01` that is located in the `dc-01`
136
+ *
137
+ * datacenter.
138
+ */
8
139
  class DistributedVirtualSwitch extends pulumi.CustomResource {
9
140
  /**
10
141
  * Get an existing DistributedVirtualSwitch resource's state with the given name, ID, and optional extra