pulumi-vsphere 4.11.0a1715339766__py3-none-any.whl → 4.11.0a1715766364__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.
@@ -0,0 +1,858 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from . import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['SupervisorArgs', 'Supervisor']
15
+
16
+ @pulumi.input_type
17
+ class SupervisorArgs:
18
+ def __init__(__self__, *,
19
+ cluster: pulumi.Input[str],
20
+ content_library: pulumi.Input[str],
21
+ dvs_uuid: pulumi.Input[str],
22
+ edge_cluster: pulumi.Input[str],
23
+ egress_cidrs: pulumi.Input[Sequence[pulumi.Input['SupervisorEgressCidrArgs']]],
24
+ ingress_cidrs: pulumi.Input[Sequence[pulumi.Input['SupervisorIngressCidrArgs']]],
25
+ main_dns: pulumi.Input[Sequence[pulumi.Input[str]]],
26
+ management_network: pulumi.Input['SupervisorManagementNetworkArgs'],
27
+ pod_cidrs: pulumi.Input[Sequence[pulumi.Input['SupervisorPodCidrArgs']]],
28
+ search_domains: pulumi.Input[str],
29
+ service_cidr: pulumi.Input['SupervisorServiceCidrArgs'],
30
+ sizing_hint: pulumi.Input[str],
31
+ storage_policy: pulumi.Input[str],
32
+ worker_dns: pulumi.Input[Sequence[pulumi.Input[str]]],
33
+ namespaces: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorNamespaceArgs']]]] = None):
34
+ """
35
+ The set of arguments for constructing a Supervisor resource.
36
+ :param pulumi.Input[str] cluster: The identifier of the compute cluster.
37
+ :param pulumi.Input[str] content_library: The identifier of the subscribed content library.
38
+ :param pulumi.Input[str] dvs_uuid: The UUID of the distributed switch.
39
+ :param pulumi.Input[str] edge_cluster: The identifier of the NSX Edge Cluster.
40
+ :param pulumi.Input[Sequence[pulumi.Input['SupervisorEgressCidrArgs']]] egress_cidrs: CIDR blocks from which NSX assigns IP addresses used for performing SNAT from container IPs to external IPs.
41
+ :param pulumi.Input[Sequence[pulumi.Input['SupervisorIngressCidrArgs']]] ingress_cidrs: CIDR blocks from which NSX assigns IP addresses for Kubernetes Ingresses and Kubernetes Services of type LoadBalancer.
42
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] main_dns: The list of addresses of the primary DNS servers.
43
+ :param pulumi.Input['SupervisorManagementNetworkArgs'] management_network: The configuration for the management network which the control plane VMs will be connected to.
44
+ * * `network` - ID of the network. (e.g. a distributed port group).
45
+ * * `starting_address` - Starting address of the management network range.
46
+ * * `subnet_mask` - Subnet mask.
47
+ * * `gateway` - Gateway IP address.
48
+ * * `address_count` - Number of addresses to allocate. Starts from `starting_address`
49
+ :param pulumi.Input[Sequence[pulumi.Input['SupervisorPodCidrArgs']]] pod_cidrs: CIDR blocks from which Kubernetes allocates pod IP addresses. Minimum subnet size is 23.
50
+ :param pulumi.Input[str] search_domains: List of DNS search domains.
51
+ :param pulumi.Input['SupervisorServiceCidrArgs'] service_cidr: CIDR block from which Kubernetes allocates service cluster IP addresses.
52
+ :param pulumi.Input[str] sizing_hint: The size of the Kubernetes API server.
53
+ :param pulumi.Input[str] storage_policy: The name of the storage policy.
54
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] worker_dns: The list of addresses of the DNS servers to use for the worker nodes.
55
+ :param pulumi.Input[Sequence[pulumi.Input['SupervisorNamespaceArgs']]] namespaces: The list of namespaces to create in the Supervisor cluster
56
+ """
57
+ pulumi.set(__self__, "cluster", cluster)
58
+ pulumi.set(__self__, "content_library", content_library)
59
+ pulumi.set(__self__, "dvs_uuid", dvs_uuid)
60
+ pulumi.set(__self__, "edge_cluster", edge_cluster)
61
+ pulumi.set(__self__, "egress_cidrs", egress_cidrs)
62
+ pulumi.set(__self__, "ingress_cidrs", ingress_cidrs)
63
+ pulumi.set(__self__, "main_dns", main_dns)
64
+ pulumi.set(__self__, "management_network", management_network)
65
+ pulumi.set(__self__, "pod_cidrs", pod_cidrs)
66
+ pulumi.set(__self__, "search_domains", search_domains)
67
+ pulumi.set(__self__, "service_cidr", service_cidr)
68
+ pulumi.set(__self__, "sizing_hint", sizing_hint)
69
+ pulumi.set(__self__, "storage_policy", storage_policy)
70
+ pulumi.set(__self__, "worker_dns", worker_dns)
71
+ if namespaces is not None:
72
+ pulumi.set(__self__, "namespaces", namespaces)
73
+
74
+ @property
75
+ @pulumi.getter
76
+ def cluster(self) -> pulumi.Input[str]:
77
+ """
78
+ The identifier of the compute cluster.
79
+ """
80
+ return pulumi.get(self, "cluster")
81
+
82
+ @cluster.setter
83
+ def cluster(self, value: pulumi.Input[str]):
84
+ pulumi.set(self, "cluster", value)
85
+
86
+ @property
87
+ @pulumi.getter(name="contentLibrary")
88
+ def content_library(self) -> pulumi.Input[str]:
89
+ """
90
+ The identifier of the subscribed content library.
91
+ """
92
+ return pulumi.get(self, "content_library")
93
+
94
+ @content_library.setter
95
+ def content_library(self, value: pulumi.Input[str]):
96
+ pulumi.set(self, "content_library", value)
97
+
98
+ @property
99
+ @pulumi.getter(name="dvsUuid")
100
+ def dvs_uuid(self) -> pulumi.Input[str]:
101
+ """
102
+ The UUID of the distributed switch.
103
+ """
104
+ return pulumi.get(self, "dvs_uuid")
105
+
106
+ @dvs_uuid.setter
107
+ def dvs_uuid(self, value: pulumi.Input[str]):
108
+ pulumi.set(self, "dvs_uuid", value)
109
+
110
+ @property
111
+ @pulumi.getter(name="edgeCluster")
112
+ def edge_cluster(self) -> pulumi.Input[str]:
113
+ """
114
+ The identifier of the NSX Edge Cluster.
115
+ """
116
+ return pulumi.get(self, "edge_cluster")
117
+
118
+ @edge_cluster.setter
119
+ def edge_cluster(self, value: pulumi.Input[str]):
120
+ pulumi.set(self, "edge_cluster", value)
121
+
122
+ @property
123
+ @pulumi.getter(name="egressCidrs")
124
+ def egress_cidrs(self) -> pulumi.Input[Sequence[pulumi.Input['SupervisorEgressCidrArgs']]]:
125
+ """
126
+ CIDR blocks from which NSX assigns IP addresses used for performing SNAT from container IPs to external IPs.
127
+ """
128
+ return pulumi.get(self, "egress_cidrs")
129
+
130
+ @egress_cidrs.setter
131
+ def egress_cidrs(self, value: pulumi.Input[Sequence[pulumi.Input['SupervisorEgressCidrArgs']]]):
132
+ pulumi.set(self, "egress_cidrs", value)
133
+
134
+ @property
135
+ @pulumi.getter(name="ingressCidrs")
136
+ def ingress_cidrs(self) -> pulumi.Input[Sequence[pulumi.Input['SupervisorIngressCidrArgs']]]:
137
+ """
138
+ CIDR blocks from which NSX assigns IP addresses for Kubernetes Ingresses and Kubernetes Services of type LoadBalancer.
139
+ """
140
+ return pulumi.get(self, "ingress_cidrs")
141
+
142
+ @ingress_cidrs.setter
143
+ def ingress_cidrs(self, value: pulumi.Input[Sequence[pulumi.Input['SupervisorIngressCidrArgs']]]):
144
+ pulumi.set(self, "ingress_cidrs", value)
145
+
146
+ @property
147
+ @pulumi.getter(name="mainDns")
148
+ def main_dns(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
149
+ """
150
+ The list of addresses of the primary DNS servers.
151
+ """
152
+ return pulumi.get(self, "main_dns")
153
+
154
+ @main_dns.setter
155
+ def main_dns(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
156
+ pulumi.set(self, "main_dns", value)
157
+
158
+ @property
159
+ @pulumi.getter(name="managementNetwork")
160
+ def management_network(self) -> pulumi.Input['SupervisorManagementNetworkArgs']:
161
+ """
162
+ The configuration for the management network which the control plane VMs will be connected to.
163
+ * * `network` - ID of the network. (e.g. a distributed port group).
164
+ * * `starting_address` - Starting address of the management network range.
165
+ * * `subnet_mask` - Subnet mask.
166
+ * * `gateway` - Gateway IP address.
167
+ * * `address_count` - Number of addresses to allocate. Starts from `starting_address`
168
+ """
169
+ return pulumi.get(self, "management_network")
170
+
171
+ @management_network.setter
172
+ def management_network(self, value: pulumi.Input['SupervisorManagementNetworkArgs']):
173
+ pulumi.set(self, "management_network", value)
174
+
175
+ @property
176
+ @pulumi.getter(name="podCidrs")
177
+ def pod_cidrs(self) -> pulumi.Input[Sequence[pulumi.Input['SupervisorPodCidrArgs']]]:
178
+ """
179
+ CIDR blocks from which Kubernetes allocates pod IP addresses. Minimum subnet size is 23.
180
+ """
181
+ return pulumi.get(self, "pod_cidrs")
182
+
183
+ @pod_cidrs.setter
184
+ def pod_cidrs(self, value: pulumi.Input[Sequence[pulumi.Input['SupervisorPodCidrArgs']]]):
185
+ pulumi.set(self, "pod_cidrs", value)
186
+
187
+ @property
188
+ @pulumi.getter(name="searchDomains")
189
+ def search_domains(self) -> pulumi.Input[str]:
190
+ """
191
+ List of DNS search domains.
192
+ """
193
+ return pulumi.get(self, "search_domains")
194
+
195
+ @search_domains.setter
196
+ def search_domains(self, value: pulumi.Input[str]):
197
+ pulumi.set(self, "search_domains", value)
198
+
199
+ @property
200
+ @pulumi.getter(name="serviceCidr")
201
+ def service_cidr(self) -> pulumi.Input['SupervisorServiceCidrArgs']:
202
+ """
203
+ CIDR block from which Kubernetes allocates service cluster IP addresses.
204
+ """
205
+ return pulumi.get(self, "service_cidr")
206
+
207
+ @service_cidr.setter
208
+ def service_cidr(self, value: pulumi.Input['SupervisorServiceCidrArgs']):
209
+ pulumi.set(self, "service_cidr", value)
210
+
211
+ @property
212
+ @pulumi.getter(name="sizingHint")
213
+ def sizing_hint(self) -> pulumi.Input[str]:
214
+ """
215
+ The size of the Kubernetes API server.
216
+ """
217
+ return pulumi.get(self, "sizing_hint")
218
+
219
+ @sizing_hint.setter
220
+ def sizing_hint(self, value: pulumi.Input[str]):
221
+ pulumi.set(self, "sizing_hint", value)
222
+
223
+ @property
224
+ @pulumi.getter(name="storagePolicy")
225
+ def storage_policy(self) -> pulumi.Input[str]:
226
+ """
227
+ The name of the storage policy.
228
+ """
229
+ return pulumi.get(self, "storage_policy")
230
+
231
+ @storage_policy.setter
232
+ def storage_policy(self, value: pulumi.Input[str]):
233
+ pulumi.set(self, "storage_policy", value)
234
+
235
+ @property
236
+ @pulumi.getter(name="workerDns")
237
+ def worker_dns(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
238
+ """
239
+ The list of addresses of the DNS servers to use for the worker nodes.
240
+ """
241
+ return pulumi.get(self, "worker_dns")
242
+
243
+ @worker_dns.setter
244
+ def worker_dns(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
245
+ pulumi.set(self, "worker_dns", value)
246
+
247
+ @property
248
+ @pulumi.getter
249
+ def namespaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorNamespaceArgs']]]]:
250
+ """
251
+ The list of namespaces to create in the Supervisor cluster
252
+ """
253
+ return pulumi.get(self, "namespaces")
254
+
255
+ @namespaces.setter
256
+ def namespaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorNamespaceArgs']]]]):
257
+ pulumi.set(self, "namespaces", value)
258
+
259
+
260
+ @pulumi.input_type
261
+ class _SupervisorState:
262
+ def __init__(__self__, *,
263
+ cluster: Optional[pulumi.Input[str]] = None,
264
+ content_library: Optional[pulumi.Input[str]] = None,
265
+ dvs_uuid: Optional[pulumi.Input[str]] = None,
266
+ edge_cluster: Optional[pulumi.Input[str]] = None,
267
+ egress_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorEgressCidrArgs']]]] = None,
268
+ ingress_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorIngressCidrArgs']]]] = None,
269
+ main_dns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
270
+ management_network: Optional[pulumi.Input['SupervisorManagementNetworkArgs']] = None,
271
+ namespaces: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorNamespaceArgs']]]] = None,
272
+ pod_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorPodCidrArgs']]]] = None,
273
+ search_domains: Optional[pulumi.Input[str]] = None,
274
+ service_cidr: Optional[pulumi.Input['SupervisorServiceCidrArgs']] = None,
275
+ sizing_hint: Optional[pulumi.Input[str]] = None,
276
+ storage_policy: Optional[pulumi.Input[str]] = None,
277
+ worker_dns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
278
+ """
279
+ Input properties used for looking up and filtering Supervisor resources.
280
+ :param pulumi.Input[str] cluster: The identifier of the compute cluster.
281
+ :param pulumi.Input[str] content_library: The identifier of the subscribed content library.
282
+ :param pulumi.Input[str] dvs_uuid: The UUID of the distributed switch.
283
+ :param pulumi.Input[str] edge_cluster: The identifier of the NSX Edge Cluster.
284
+ :param pulumi.Input[Sequence[pulumi.Input['SupervisorEgressCidrArgs']]] egress_cidrs: CIDR blocks from which NSX assigns IP addresses used for performing SNAT from container IPs to external IPs.
285
+ :param pulumi.Input[Sequence[pulumi.Input['SupervisorIngressCidrArgs']]] ingress_cidrs: CIDR blocks from which NSX assigns IP addresses for Kubernetes Ingresses and Kubernetes Services of type LoadBalancer.
286
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] main_dns: The list of addresses of the primary DNS servers.
287
+ :param pulumi.Input['SupervisorManagementNetworkArgs'] management_network: The configuration for the management network which the control plane VMs will be connected to.
288
+ * * `network` - ID of the network. (e.g. a distributed port group).
289
+ * * `starting_address` - Starting address of the management network range.
290
+ * * `subnet_mask` - Subnet mask.
291
+ * * `gateway` - Gateway IP address.
292
+ * * `address_count` - Number of addresses to allocate. Starts from `starting_address`
293
+ :param pulumi.Input[Sequence[pulumi.Input['SupervisorNamespaceArgs']]] namespaces: The list of namespaces to create in the Supervisor cluster
294
+ :param pulumi.Input[Sequence[pulumi.Input['SupervisorPodCidrArgs']]] pod_cidrs: CIDR blocks from which Kubernetes allocates pod IP addresses. Minimum subnet size is 23.
295
+ :param pulumi.Input[str] search_domains: List of DNS search domains.
296
+ :param pulumi.Input['SupervisorServiceCidrArgs'] service_cidr: CIDR block from which Kubernetes allocates service cluster IP addresses.
297
+ :param pulumi.Input[str] sizing_hint: The size of the Kubernetes API server.
298
+ :param pulumi.Input[str] storage_policy: The name of the storage policy.
299
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] worker_dns: The list of addresses of the DNS servers to use for the worker nodes.
300
+ """
301
+ if cluster is not None:
302
+ pulumi.set(__self__, "cluster", cluster)
303
+ if content_library is not None:
304
+ pulumi.set(__self__, "content_library", content_library)
305
+ if dvs_uuid is not None:
306
+ pulumi.set(__self__, "dvs_uuid", dvs_uuid)
307
+ if edge_cluster is not None:
308
+ pulumi.set(__self__, "edge_cluster", edge_cluster)
309
+ if egress_cidrs is not None:
310
+ pulumi.set(__self__, "egress_cidrs", egress_cidrs)
311
+ if ingress_cidrs is not None:
312
+ pulumi.set(__self__, "ingress_cidrs", ingress_cidrs)
313
+ if main_dns is not None:
314
+ pulumi.set(__self__, "main_dns", main_dns)
315
+ if management_network is not None:
316
+ pulumi.set(__self__, "management_network", management_network)
317
+ if namespaces is not None:
318
+ pulumi.set(__self__, "namespaces", namespaces)
319
+ if pod_cidrs is not None:
320
+ pulumi.set(__self__, "pod_cidrs", pod_cidrs)
321
+ if search_domains is not None:
322
+ pulumi.set(__self__, "search_domains", search_domains)
323
+ if service_cidr is not None:
324
+ pulumi.set(__self__, "service_cidr", service_cidr)
325
+ if sizing_hint is not None:
326
+ pulumi.set(__self__, "sizing_hint", sizing_hint)
327
+ if storage_policy is not None:
328
+ pulumi.set(__self__, "storage_policy", storage_policy)
329
+ if worker_dns is not None:
330
+ pulumi.set(__self__, "worker_dns", worker_dns)
331
+
332
+ @property
333
+ @pulumi.getter
334
+ def cluster(self) -> Optional[pulumi.Input[str]]:
335
+ """
336
+ The identifier of the compute cluster.
337
+ """
338
+ return pulumi.get(self, "cluster")
339
+
340
+ @cluster.setter
341
+ def cluster(self, value: Optional[pulumi.Input[str]]):
342
+ pulumi.set(self, "cluster", value)
343
+
344
+ @property
345
+ @pulumi.getter(name="contentLibrary")
346
+ def content_library(self) -> Optional[pulumi.Input[str]]:
347
+ """
348
+ The identifier of the subscribed content library.
349
+ """
350
+ return pulumi.get(self, "content_library")
351
+
352
+ @content_library.setter
353
+ def content_library(self, value: Optional[pulumi.Input[str]]):
354
+ pulumi.set(self, "content_library", value)
355
+
356
+ @property
357
+ @pulumi.getter(name="dvsUuid")
358
+ def dvs_uuid(self) -> Optional[pulumi.Input[str]]:
359
+ """
360
+ The UUID of the distributed switch.
361
+ """
362
+ return pulumi.get(self, "dvs_uuid")
363
+
364
+ @dvs_uuid.setter
365
+ def dvs_uuid(self, value: Optional[pulumi.Input[str]]):
366
+ pulumi.set(self, "dvs_uuid", value)
367
+
368
+ @property
369
+ @pulumi.getter(name="edgeCluster")
370
+ def edge_cluster(self) -> Optional[pulumi.Input[str]]:
371
+ """
372
+ The identifier of the NSX Edge Cluster.
373
+ """
374
+ return pulumi.get(self, "edge_cluster")
375
+
376
+ @edge_cluster.setter
377
+ def edge_cluster(self, value: Optional[pulumi.Input[str]]):
378
+ pulumi.set(self, "edge_cluster", value)
379
+
380
+ @property
381
+ @pulumi.getter(name="egressCidrs")
382
+ def egress_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorEgressCidrArgs']]]]:
383
+ """
384
+ CIDR blocks from which NSX assigns IP addresses used for performing SNAT from container IPs to external IPs.
385
+ """
386
+ return pulumi.get(self, "egress_cidrs")
387
+
388
+ @egress_cidrs.setter
389
+ def egress_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorEgressCidrArgs']]]]):
390
+ pulumi.set(self, "egress_cidrs", value)
391
+
392
+ @property
393
+ @pulumi.getter(name="ingressCidrs")
394
+ def ingress_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorIngressCidrArgs']]]]:
395
+ """
396
+ CIDR blocks from which NSX assigns IP addresses for Kubernetes Ingresses and Kubernetes Services of type LoadBalancer.
397
+ """
398
+ return pulumi.get(self, "ingress_cidrs")
399
+
400
+ @ingress_cidrs.setter
401
+ def ingress_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorIngressCidrArgs']]]]):
402
+ pulumi.set(self, "ingress_cidrs", value)
403
+
404
+ @property
405
+ @pulumi.getter(name="mainDns")
406
+ def main_dns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
407
+ """
408
+ The list of addresses of the primary DNS servers.
409
+ """
410
+ return pulumi.get(self, "main_dns")
411
+
412
+ @main_dns.setter
413
+ def main_dns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
414
+ pulumi.set(self, "main_dns", value)
415
+
416
+ @property
417
+ @pulumi.getter(name="managementNetwork")
418
+ def management_network(self) -> Optional[pulumi.Input['SupervisorManagementNetworkArgs']]:
419
+ """
420
+ The configuration for the management network which the control plane VMs will be connected to.
421
+ * * `network` - ID of the network. (e.g. a distributed port group).
422
+ * * `starting_address` - Starting address of the management network range.
423
+ * * `subnet_mask` - Subnet mask.
424
+ * * `gateway` - Gateway IP address.
425
+ * * `address_count` - Number of addresses to allocate. Starts from `starting_address`
426
+ """
427
+ return pulumi.get(self, "management_network")
428
+
429
+ @management_network.setter
430
+ def management_network(self, value: Optional[pulumi.Input['SupervisorManagementNetworkArgs']]):
431
+ pulumi.set(self, "management_network", value)
432
+
433
+ @property
434
+ @pulumi.getter
435
+ def namespaces(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorNamespaceArgs']]]]:
436
+ """
437
+ The list of namespaces to create in the Supervisor cluster
438
+ """
439
+ return pulumi.get(self, "namespaces")
440
+
441
+ @namespaces.setter
442
+ def namespaces(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorNamespaceArgs']]]]):
443
+ pulumi.set(self, "namespaces", value)
444
+
445
+ @property
446
+ @pulumi.getter(name="podCidrs")
447
+ def pod_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorPodCidrArgs']]]]:
448
+ """
449
+ CIDR blocks from which Kubernetes allocates pod IP addresses. Minimum subnet size is 23.
450
+ """
451
+ return pulumi.get(self, "pod_cidrs")
452
+
453
+ @pod_cidrs.setter
454
+ def pod_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SupervisorPodCidrArgs']]]]):
455
+ pulumi.set(self, "pod_cidrs", value)
456
+
457
+ @property
458
+ @pulumi.getter(name="searchDomains")
459
+ def search_domains(self) -> Optional[pulumi.Input[str]]:
460
+ """
461
+ List of DNS search domains.
462
+ """
463
+ return pulumi.get(self, "search_domains")
464
+
465
+ @search_domains.setter
466
+ def search_domains(self, value: Optional[pulumi.Input[str]]):
467
+ pulumi.set(self, "search_domains", value)
468
+
469
+ @property
470
+ @pulumi.getter(name="serviceCidr")
471
+ def service_cidr(self) -> Optional[pulumi.Input['SupervisorServiceCidrArgs']]:
472
+ """
473
+ CIDR block from which Kubernetes allocates service cluster IP addresses.
474
+ """
475
+ return pulumi.get(self, "service_cidr")
476
+
477
+ @service_cidr.setter
478
+ def service_cidr(self, value: Optional[pulumi.Input['SupervisorServiceCidrArgs']]):
479
+ pulumi.set(self, "service_cidr", value)
480
+
481
+ @property
482
+ @pulumi.getter(name="sizingHint")
483
+ def sizing_hint(self) -> Optional[pulumi.Input[str]]:
484
+ """
485
+ The size of the Kubernetes API server.
486
+ """
487
+ return pulumi.get(self, "sizing_hint")
488
+
489
+ @sizing_hint.setter
490
+ def sizing_hint(self, value: Optional[pulumi.Input[str]]):
491
+ pulumi.set(self, "sizing_hint", value)
492
+
493
+ @property
494
+ @pulumi.getter(name="storagePolicy")
495
+ def storage_policy(self) -> Optional[pulumi.Input[str]]:
496
+ """
497
+ The name of the storage policy.
498
+ """
499
+ return pulumi.get(self, "storage_policy")
500
+
501
+ @storage_policy.setter
502
+ def storage_policy(self, value: Optional[pulumi.Input[str]]):
503
+ pulumi.set(self, "storage_policy", value)
504
+
505
+ @property
506
+ @pulumi.getter(name="workerDns")
507
+ def worker_dns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
508
+ """
509
+ The list of addresses of the DNS servers to use for the worker nodes.
510
+ """
511
+ return pulumi.get(self, "worker_dns")
512
+
513
+ @worker_dns.setter
514
+ def worker_dns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
515
+ pulumi.set(self, "worker_dns", value)
516
+
517
+
518
+ class Supervisor(pulumi.CustomResource):
519
+ @overload
520
+ def __init__(__self__,
521
+ resource_name: str,
522
+ opts: Optional[pulumi.ResourceOptions] = None,
523
+ cluster: Optional[pulumi.Input[str]] = None,
524
+ content_library: Optional[pulumi.Input[str]] = None,
525
+ dvs_uuid: Optional[pulumi.Input[str]] = None,
526
+ edge_cluster: Optional[pulumi.Input[str]] = None,
527
+ egress_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorEgressCidrArgs']]]]] = None,
528
+ ingress_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorIngressCidrArgs']]]]] = None,
529
+ main_dns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
530
+ management_network: Optional[pulumi.Input[pulumi.InputType['SupervisorManagementNetworkArgs']]] = None,
531
+ namespaces: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorNamespaceArgs']]]]] = None,
532
+ pod_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorPodCidrArgs']]]]] = None,
533
+ search_domains: Optional[pulumi.Input[str]] = None,
534
+ service_cidr: Optional[pulumi.Input[pulumi.InputType['SupervisorServiceCidrArgs']]] = None,
535
+ sizing_hint: Optional[pulumi.Input[str]] = None,
536
+ storage_policy: Optional[pulumi.Input[str]] = None,
537
+ worker_dns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
538
+ __props__=None):
539
+ """
540
+ Provides a resource for configuring Workload Management.
541
+
542
+ ## Example Usage
543
+
544
+ :param str resource_name: The name of the resource.
545
+ :param pulumi.ResourceOptions opts: Options for the resource.
546
+ :param pulumi.Input[str] cluster: The identifier of the compute cluster.
547
+ :param pulumi.Input[str] content_library: The identifier of the subscribed content library.
548
+ :param pulumi.Input[str] dvs_uuid: The UUID of the distributed switch.
549
+ :param pulumi.Input[str] edge_cluster: The identifier of the NSX Edge Cluster.
550
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorEgressCidrArgs']]]] egress_cidrs: CIDR blocks from which NSX assigns IP addresses used for performing SNAT from container IPs to external IPs.
551
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorIngressCidrArgs']]]] ingress_cidrs: CIDR blocks from which NSX assigns IP addresses for Kubernetes Ingresses and Kubernetes Services of type LoadBalancer.
552
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] main_dns: The list of addresses of the primary DNS servers.
553
+ :param pulumi.Input[pulumi.InputType['SupervisorManagementNetworkArgs']] management_network: The configuration for the management network which the control plane VMs will be connected to.
554
+ * * `network` - ID of the network. (e.g. a distributed port group).
555
+ * * `starting_address` - Starting address of the management network range.
556
+ * * `subnet_mask` - Subnet mask.
557
+ * * `gateway` - Gateway IP address.
558
+ * * `address_count` - Number of addresses to allocate. Starts from `starting_address`
559
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorNamespaceArgs']]]] namespaces: The list of namespaces to create in the Supervisor cluster
560
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorPodCidrArgs']]]] pod_cidrs: CIDR blocks from which Kubernetes allocates pod IP addresses. Minimum subnet size is 23.
561
+ :param pulumi.Input[str] search_domains: List of DNS search domains.
562
+ :param pulumi.Input[pulumi.InputType['SupervisorServiceCidrArgs']] service_cidr: CIDR block from which Kubernetes allocates service cluster IP addresses.
563
+ :param pulumi.Input[str] sizing_hint: The size of the Kubernetes API server.
564
+ :param pulumi.Input[str] storage_policy: The name of the storage policy.
565
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] worker_dns: The list of addresses of the DNS servers to use for the worker nodes.
566
+ """
567
+ ...
568
+ @overload
569
+ def __init__(__self__,
570
+ resource_name: str,
571
+ args: SupervisorArgs,
572
+ opts: Optional[pulumi.ResourceOptions] = None):
573
+ """
574
+ Provides a resource for configuring Workload Management.
575
+
576
+ ## Example Usage
577
+
578
+ :param str resource_name: The name of the resource.
579
+ :param SupervisorArgs args: The arguments to use to populate this resource's properties.
580
+ :param pulumi.ResourceOptions opts: Options for the resource.
581
+ """
582
+ ...
583
+ def __init__(__self__, resource_name: str, *args, **kwargs):
584
+ resource_args, opts = _utilities.get_resource_args_opts(SupervisorArgs, pulumi.ResourceOptions, *args, **kwargs)
585
+ if resource_args is not None:
586
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
587
+ else:
588
+ __self__._internal_init(resource_name, *args, **kwargs)
589
+
590
+ def _internal_init(__self__,
591
+ resource_name: str,
592
+ opts: Optional[pulumi.ResourceOptions] = None,
593
+ cluster: Optional[pulumi.Input[str]] = None,
594
+ content_library: Optional[pulumi.Input[str]] = None,
595
+ dvs_uuid: Optional[pulumi.Input[str]] = None,
596
+ edge_cluster: Optional[pulumi.Input[str]] = None,
597
+ egress_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorEgressCidrArgs']]]]] = None,
598
+ ingress_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorIngressCidrArgs']]]]] = None,
599
+ main_dns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
600
+ management_network: Optional[pulumi.Input[pulumi.InputType['SupervisorManagementNetworkArgs']]] = None,
601
+ namespaces: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorNamespaceArgs']]]]] = None,
602
+ pod_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorPodCidrArgs']]]]] = None,
603
+ search_domains: Optional[pulumi.Input[str]] = None,
604
+ service_cidr: Optional[pulumi.Input[pulumi.InputType['SupervisorServiceCidrArgs']]] = None,
605
+ sizing_hint: Optional[pulumi.Input[str]] = None,
606
+ storage_policy: Optional[pulumi.Input[str]] = None,
607
+ worker_dns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
608
+ __props__=None):
609
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
610
+ if not isinstance(opts, pulumi.ResourceOptions):
611
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
612
+ if opts.id is None:
613
+ if __props__ is not None:
614
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
615
+ __props__ = SupervisorArgs.__new__(SupervisorArgs)
616
+
617
+ if cluster is None and not opts.urn:
618
+ raise TypeError("Missing required property 'cluster'")
619
+ __props__.__dict__["cluster"] = cluster
620
+ if content_library is None and not opts.urn:
621
+ raise TypeError("Missing required property 'content_library'")
622
+ __props__.__dict__["content_library"] = content_library
623
+ if dvs_uuid is None and not opts.urn:
624
+ raise TypeError("Missing required property 'dvs_uuid'")
625
+ __props__.__dict__["dvs_uuid"] = dvs_uuid
626
+ if edge_cluster is None and not opts.urn:
627
+ raise TypeError("Missing required property 'edge_cluster'")
628
+ __props__.__dict__["edge_cluster"] = edge_cluster
629
+ if egress_cidrs is None and not opts.urn:
630
+ raise TypeError("Missing required property 'egress_cidrs'")
631
+ __props__.__dict__["egress_cidrs"] = egress_cidrs
632
+ if ingress_cidrs is None and not opts.urn:
633
+ raise TypeError("Missing required property 'ingress_cidrs'")
634
+ __props__.__dict__["ingress_cidrs"] = ingress_cidrs
635
+ if main_dns is None and not opts.urn:
636
+ raise TypeError("Missing required property 'main_dns'")
637
+ __props__.__dict__["main_dns"] = main_dns
638
+ if management_network is None and not opts.urn:
639
+ raise TypeError("Missing required property 'management_network'")
640
+ __props__.__dict__["management_network"] = management_network
641
+ __props__.__dict__["namespaces"] = namespaces
642
+ if pod_cidrs is None and not opts.urn:
643
+ raise TypeError("Missing required property 'pod_cidrs'")
644
+ __props__.__dict__["pod_cidrs"] = pod_cidrs
645
+ if search_domains is None and not opts.urn:
646
+ raise TypeError("Missing required property 'search_domains'")
647
+ __props__.__dict__["search_domains"] = search_domains
648
+ if service_cidr is None and not opts.urn:
649
+ raise TypeError("Missing required property 'service_cidr'")
650
+ __props__.__dict__["service_cidr"] = service_cidr
651
+ if sizing_hint is None and not opts.urn:
652
+ raise TypeError("Missing required property 'sizing_hint'")
653
+ __props__.__dict__["sizing_hint"] = sizing_hint
654
+ if storage_policy is None and not opts.urn:
655
+ raise TypeError("Missing required property 'storage_policy'")
656
+ __props__.__dict__["storage_policy"] = storage_policy
657
+ if worker_dns is None and not opts.urn:
658
+ raise TypeError("Missing required property 'worker_dns'")
659
+ __props__.__dict__["worker_dns"] = worker_dns
660
+ super(Supervisor, __self__).__init__(
661
+ 'vsphere:index/supervisor:Supervisor',
662
+ resource_name,
663
+ __props__,
664
+ opts)
665
+
666
+ @staticmethod
667
+ def get(resource_name: str,
668
+ id: pulumi.Input[str],
669
+ opts: Optional[pulumi.ResourceOptions] = None,
670
+ cluster: Optional[pulumi.Input[str]] = None,
671
+ content_library: Optional[pulumi.Input[str]] = None,
672
+ dvs_uuid: Optional[pulumi.Input[str]] = None,
673
+ edge_cluster: Optional[pulumi.Input[str]] = None,
674
+ egress_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorEgressCidrArgs']]]]] = None,
675
+ ingress_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorIngressCidrArgs']]]]] = None,
676
+ main_dns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
677
+ management_network: Optional[pulumi.Input[pulumi.InputType['SupervisorManagementNetworkArgs']]] = None,
678
+ namespaces: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorNamespaceArgs']]]]] = None,
679
+ pod_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorPodCidrArgs']]]]] = None,
680
+ search_domains: Optional[pulumi.Input[str]] = None,
681
+ service_cidr: Optional[pulumi.Input[pulumi.InputType['SupervisorServiceCidrArgs']]] = None,
682
+ sizing_hint: Optional[pulumi.Input[str]] = None,
683
+ storage_policy: Optional[pulumi.Input[str]] = None,
684
+ worker_dns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'Supervisor':
685
+ """
686
+ Get an existing Supervisor resource's state with the given name, id, and optional extra
687
+ properties used to qualify the lookup.
688
+
689
+ :param str resource_name: The unique name of the resulting resource.
690
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
691
+ :param pulumi.ResourceOptions opts: Options for the resource.
692
+ :param pulumi.Input[str] cluster: The identifier of the compute cluster.
693
+ :param pulumi.Input[str] content_library: The identifier of the subscribed content library.
694
+ :param pulumi.Input[str] dvs_uuid: The UUID of the distributed switch.
695
+ :param pulumi.Input[str] edge_cluster: The identifier of the NSX Edge Cluster.
696
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorEgressCidrArgs']]]] egress_cidrs: CIDR blocks from which NSX assigns IP addresses used for performing SNAT from container IPs to external IPs.
697
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorIngressCidrArgs']]]] ingress_cidrs: CIDR blocks from which NSX assigns IP addresses for Kubernetes Ingresses and Kubernetes Services of type LoadBalancer.
698
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] main_dns: The list of addresses of the primary DNS servers.
699
+ :param pulumi.Input[pulumi.InputType['SupervisorManagementNetworkArgs']] management_network: The configuration for the management network which the control plane VMs will be connected to.
700
+ * * `network` - ID of the network. (e.g. a distributed port group).
701
+ * * `starting_address` - Starting address of the management network range.
702
+ * * `subnet_mask` - Subnet mask.
703
+ * * `gateway` - Gateway IP address.
704
+ * * `address_count` - Number of addresses to allocate. Starts from `starting_address`
705
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorNamespaceArgs']]]] namespaces: The list of namespaces to create in the Supervisor cluster
706
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SupervisorPodCidrArgs']]]] pod_cidrs: CIDR blocks from which Kubernetes allocates pod IP addresses. Minimum subnet size is 23.
707
+ :param pulumi.Input[str] search_domains: List of DNS search domains.
708
+ :param pulumi.Input[pulumi.InputType['SupervisorServiceCidrArgs']] service_cidr: CIDR block from which Kubernetes allocates service cluster IP addresses.
709
+ :param pulumi.Input[str] sizing_hint: The size of the Kubernetes API server.
710
+ :param pulumi.Input[str] storage_policy: The name of the storage policy.
711
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] worker_dns: The list of addresses of the DNS servers to use for the worker nodes.
712
+ """
713
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
714
+
715
+ __props__ = _SupervisorState.__new__(_SupervisorState)
716
+
717
+ __props__.__dict__["cluster"] = cluster
718
+ __props__.__dict__["content_library"] = content_library
719
+ __props__.__dict__["dvs_uuid"] = dvs_uuid
720
+ __props__.__dict__["edge_cluster"] = edge_cluster
721
+ __props__.__dict__["egress_cidrs"] = egress_cidrs
722
+ __props__.__dict__["ingress_cidrs"] = ingress_cidrs
723
+ __props__.__dict__["main_dns"] = main_dns
724
+ __props__.__dict__["management_network"] = management_network
725
+ __props__.__dict__["namespaces"] = namespaces
726
+ __props__.__dict__["pod_cidrs"] = pod_cidrs
727
+ __props__.__dict__["search_domains"] = search_domains
728
+ __props__.__dict__["service_cidr"] = service_cidr
729
+ __props__.__dict__["sizing_hint"] = sizing_hint
730
+ __props__.__dict__["storage_policy"] = storage_policy
731
+ __props__.__dict__["worker_dns"] = worker_dns
732
+ return Supervisor(resource_name, opts=opts, __props__=__props__)
733
+
734
+ @property
735
+ @pulumi.getter
736
+ def cluster(self) -> pulumi.Output[str]:
737
+ """
738
+ The identifier of the compute cluster.
739
+ """
740
+ return pulumi.get(self, "cluster")
741
+
742
+ @property
743
+ @pulumi.getter(name="contentLibrary")
744
+ def content_library(self) -> pulumi.Output[str]:
745
+ """
746
+ The identifier of the subscribed content library.
747
+ """
748
+ return pulumi.get(self, "content_library")
749
+
750
+ @property
751
+ @pulumi.getter(name="dvsUuid")
752
+ def dvs_uuid(self) -> pulumi.Output[str]:
753
+ """
754
+ The UUID of the distributed switch.
755
+ """
756
+ return pulumi.get(self, "dvs_uuid")
757
+
758
+ @property
759
+ @pulumi.getter(name="edgeCluster")
760
+ def edge_cluster(self) -> pulumi.Output[str]:
761
+ """
762
+ The identifier of the NSX Edge Cluster.
763
+ """
764
+ return pulumi.get(self, "edge_cluster")
765
+
766
+ @property
767
+ @pulumi.getter(name="egressCidrs")
768
+ def egress_cidrs(self) -> pulumi.Output[Sequence['outputs.SupervisorEgressCidr']]:
769
+ """
770
+ CIDR blocks from which NSX assigns IP addresses used for performing SNAT from container IPs to external IPs.
771
+ """
772
+ return pulumi.get(self, "egress_cidrs")
773
+
774
+ @property
775
+ @pulumi.getter(name="ingressCidrs")
776
+ def ingress_cidrs(self) -> pulumi.Output[Sequence['outputs.SupervisorIngressCidr']]:
777
+ """
778
+ CIDR blocks from which NSX assigns IP addresses for Kubernetes Ingresses and Kubernetes Services of type LoadBalancer.
779
+ """
780
+ return pulumi.get(self, "ingress_cidrs")
781
+
782
+ @property
783
+ @pulumi.getter(name="mainDns")
784
+ def main_dns(self) -> pulumi.Output[Sequence[str]]:
785
+ """
786
+ The list of addresses of the primary DNS servers.
787
+ """
788
+ return pulumi.get(self, "main_dns")
789
+
790
+ @property
791
+ @pulumi.getter(name="managementNetwork")
792
+ def management_network(self) -> pulumi.Output['outputs.SupervisorManagementNetwork']:
793
+ """
794
+ The configuration for the management network which the control plane VMs will be connected to.
795
+ * * `network` - ID of the network. (e.g. a distributed port group).
796
+ * * `starting_address` - Starting address of the management network range.
797
+ * * `subnet_mask` - Subnet mask.
798
+ * * `gateway` - Gateway IP address.
799
+ * * `address_count` - Number of addresses to allocate. Starts from `starting_address`
800
+ """
801
+ return pulumi.get(self, "management_network")
802
+
803
+ @property
804
+ @pulumi.getter
805
+ def namespaces(self) -> pulumi.Output[Optional[Sequence['outputs.SupervisorNamespace']]]:
806
+ """
807
+ The list of namespaces to create in the Supervisor cluster
808
+ """
809
+ return pulumi.get(self, "namespaces")
810
+
811
+ @property
812
+ @pulumi.getter(name="podCidrs")
813
+ def pod_cidrs(self) -> pulumi.Output[Sequence['outputs.SupervisorPodCidr']]:
814
+ """
815
+ CIDR blocks from which Kubernetes allocates pod IP addresses. Minimum subnet size is 23.
816
+ """
817
+ return pulumi.get(self, "pod_cidrs")
818
+
819
+ @property
820
+ @pulumi.getter(name="searchDomains")
821
+ def search_domains(self) -> pulumi.Output[str]:
822
+ """
823
+ List of DNS search domains.
824
+ """
825
+ return pulumi.get(self, "search_domains")
826
+
827
+ @property
828
+ @pulumi.getter(name="serviceCidr")
829
+ def service_cidr(self) -> pulumi.Output['outputs.SupervisorServiceCidr']:
830
+ """
831
+ CIDR block from which Kubernetes allocates service cluster IP addresses.
832
+ """
833
+ return pulumi.get(self, "service_cidr")
834
+
835
+ @property
836
+ @pulumi.getter(name="sizingHint")
837
+ def sizing_hint(self) -> pulumi.Output[str]:
838
+ """
839
+ The size of the Kubernetes API server.
840
+ """
841
+ return pulumi.get(self, "sizing_hint")
842
+
843
+ @property
844
+ @pulumi.getter(name="storagePolicy")
845
+ def storage_policy(self) -> pulumi.Output[str]:
846
+ """
847
+ The name of the storage policy.
848
+ """
849
+ return pulumi.get(self, "storage_policy")
850
+
851
+ @property
852
+ @pulumi.getter(name="workerDns")
853
+ def worker_dns(self) -> pulumi.Output[Sequence[str]]:
854
+ """
855
+ The list of addresses of the DNS servers to use for the worker nodes.
856
+ """
857
+ return pulumi.get(self, "worker_dns")
858
+