pulumi-alicloud 3.66.0a1731648019__py3-none-any.whl → 3.67.0__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.

Potentially problematic release.


This version of pulumi-alicloud might be problematic. Click here for more details.

Files changed (81) hide show
  1. pulumi_alicloud/__init__.py +110 -0
  2. pulumi_alicloud/alikafka/instance.py +112 -0
  3. pulumi_alicloud/cen/flow_log.py +373 -58
  4. pulumi_alicloud/cen/transit_router_ecr_attachment.py +4 -4
  5. pulumi_alicloud/cloudsso/_inputs.py +9 -9
  6. pulumi_alicloud/cloudsso/access_configuration.py +100 -34
  7. pulumi_alicloud/cloudsso/outputs.py +6 -6
  8. pulumi_alicloud/cr/registry_enterprise_instance.py +474 -90
  9. pulumi_alicloud/ecs/ecs_image_component.py +221 -48
  10. pulumi_alicloud/esa/__init__.py +9 -0
  11. pulumi_alicloud/esa/rate_plan_instance.py +626 -0
  12. pulumi_alicloud/esa/site.py +533 -0
  13. pulumi_alicloud/ess/_inputs.py +94 -0
  14. pulumi_alicloud/ess/eci_scaling_configuration.py +42 -14
  15. pulumi_alicloud/ess/outputs.py +79 -0
  16. pulumi_alicloud/ess/scaling_configuration.py +47 -0
  17. pulumi_alicloud/expressconnect/router_vbr_child_instance.py +86 -25
  18. pulumi_alicloud/fc/_inputs.py +243 -135
  19. pulumi_alicloud/fc/outputs.py +173 -90
  20. pulumi_alicloud/fc/v3_alias.py +28 -0
  21. pulumi_alicloud/fc/v3_async_invoke_config.py +56 -0
  22. pulumi_alicloud/fc/v3_concurrency_config.py +28 -0
  23. pulumi_alicloud/fc/v3_custom_domain.py +118 -6
  24. pulumi_alicloud/fc/v3_function.py +308 -0
  25. pulumi_alicloud/fc/v3_function_version.py +30 -2
  26. pulumi_alicloud/fc/v3_layer_version.py +104 -1
  27. pulumi_alicloud/fc/v3_provision_config.py +86 -2
  28. pulumi_alicloud/fc/v3_trigger.py +114 -0
  29. pulumi_alicloud/gwlb/__init__.py +12 -0
  30. pulumi_alicloud/gwlb/_inputs.py +673 -0
  31. pulumi_alicloud/gwlb/listener.py +434 -0
  32. pulumi_alicloud/gwlb/load_balancer.py +537 -0
  33. pulumi_alicloud/gwlb/outputs.py +533 -0
  34. pulumi_alicloud/gwlb/server_group.py +780 -0
  35. pulumi_alicloud/kms/key.py +1 -1
  36. pulumi_alicloud/kvstore/account.py +24 -24
  37. pulumi_alicloud/kvstore/audit_log_config.py +4 -4
  38. pulumi_alicloud/kvstore/backup_policy.py +2 -2
  39. pulumi_alicloud/kvstore/connection.py +8 -8
  40. pulumi_alicloud/kvstore/get_accounts.py +4 -4
  41. pulumi_alicloud/kvstore/get_connections.py +5 -5
  42. pulumi_alicloud/kvstore/get_instance_classes.py +12 -12
  43. pulumi_alicloud/kvstore/get_instance_engines.py +7 -7
  44. pulumi_alicloud/kvstore/get_permission.py +10 -10
  45. pulumi_alicloud/kvstore/get_zones.py +4 -4
  46. pulumi_alicloud/kvstore/outputs.py +2 -2
  47. pulumi_alicloud/mongodb/instance.py +47 -0
  48. pulumi_alicloud/mongodb/sharding_instance.py +47 -0
  49. pulumi_alicloud/oss/__init__.py +2 -0
  50. pulumi_alicloud/oss/_inputs.py +194 -0
  51. pulumi_alicloud/oss/bucket_cname.py +509 -0
  52. pulumi_alicloud/oss/bucket_cname_token.py +239 -0
  53. pulumi_alicloud/oss/outputs.py +141 -0
  54. pulumi_alicloud/polardb/cluster.py +7 -7
  55. pulumi_alicloud/privatelink/vpc_endpoint_service.py +42 -91
  56. pulumi_alicloud/privatelink/vpc_endpoint_service_connection.py +27 -23
  57. pulumi_alicloud/privatelink/vpc_endpoint_service_resource.py +34 -37
  58. pulumi_alicloud/privatelink/vpc_endpoint_zone.py +28 -0
  59. pulumi_alicloud/pulumi-plugin.json +1 -1
  60. pulumi_alicloud/quotas/_inputs.py +6 -6
  61. pulumi_alicloud/quotas/outputs.py +4 -4
  62. pulumi_alicloud/quotas/quota_application.py +21 -28
  63. pulumi_alicloud/rds/__init__.py +2 -0
  64. pulumi_alicloud/rds/_inputs.py +146 -0
  65. pulumi_alicloud/rds/custom.py +1630 -0
  66. pulumi_alicloud/rds/custom_deployment_set.py +525 -0
  67. pulumi_alicloud/rds/outputs.py +105 -0
  68. pulumi_alicloud/redis/tair_instance.py +97 -78
  69. pulumi_alicloud/vpc/__init__.py +4 -0
  70. pulumi_alicloud/vpc/_inputs.py +54 -0
  71. pulumi_alicloud/vpc/ipam_ipam.py +531 -0
  72. pulumi_alicloud/vpc/ipam_ipam_pool.py +850 -0
  73. pulumi_alicloud/vpc/ipam_ipam_pool_cidr.py +313 -0
  74. pulumi_alicloud/vpc/ipam_ipam_scope.py +537 -0
  75. pulumi_alicloud/vpc/nat_gateway.py +175 -14
  76. pulumi_alicloud/vpc/outputs.py +51 -0
  77. pulumi_alicloud/vpn/gateway_vco_route.py +68 -21
  78. {pulumi_alicloud-3.66.0a1731648019.dist-info → pulumi_alicloud-3.67.0.dist-info}/METADATA +5 -5
  79. {pulumi_alicloud-3.66.0a1731648019.dist-info → pulumi_alicloud-3.67.0.dist-info}/RECORD +81 -64
  80. {pulumi_alicloud-3.66.0a1731648019.dist-info → pulumi_alicloud-3.67.0.dist-info}/WHEEL +1 -1
  81. {pulumi_alicloud-3.66.0a1731648019.dist-info → pulumi_alicloud-3.67.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,780 @@
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 sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from .. import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['ServerGroupArgs', 'ServerGroup']
20
+
21
+ @pulumi.input_type
22
+ class ServerGroupArgs:
23
+ def __init__(__self__, *,
24
+ vpc_id: pulumi.Input[str],
25
+ connection_drain_config: Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']] = None,
26
+ dry_run: Optional[pulumi.Input[bool]] = None,
27
+ health_check_config: Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']] = None,
28
+ protocol: Optional[pulumi.Input[str]] = None,
29
+ resource_group_id: Optional[pulumi.Input[str]] = None,
30
+ scheduler: Optional[pulumi.Input[str]] = None,
31
+ server_group_name: Optional[pulumi.Input[str]] = None,
32
+ server_group_type: Optional[pulumi.Input[str]] = None,
33
+ servers: Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]] = None,
34
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
35
+ """
36
+ The set of arguments for constructing a ServerGroup resource.
37
+ :param pulumi.Input[str] vpc_id: The VPC instance ID.
38
+
39
+ > **NOTE:** If the value of ServerGroupType is Instance, only servers in the VPC can be added to the server group.
40
+ :param pulumi.Input['ServerGroupConnectionDrainConfigArgs'] connection_drain_config: Connected graceful interrupt configuration. See `connection_drain_config` below.
41
+ :param pulumi.Input[bool] dry_run: Specifies whether to perform only a dry run, without performing the actual request.
42
+ :param pulumi.Input['ServerGroupHealthCheckConfigArgs'] health_check_config: Health check configurations. See `health_check_config` below.
43
+ :param pulumi.Input[str] protocol: Backend Protocol. Value:
44
+
45
+ - *GENEVE (default)**.
46
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group.
47
+ :param pulumi.Input[str] scheduler: Scheduling algorithm. Value:
48
+ - **5TCH (default)**: quintuple hash, which is based on the consistent hash of the quintuple (source IP, Destination IP, source port, destination port, and protocol). The same flow is scheduled to the same backend server.
49
+ - `3TCH`: a three-tuple hash, which is based on the consistent hash of three tuples (source IP address, destination IP address, and protocol). The same flow is dispatched to the same backend server.
50
+ - `2TCH`: Binary Group hash, which is based on the consistent hash of the binary group (source IP and destination IP). The same flow is scheduled to the same backend server.
51
+ :param pulumi.Input[str] server_group_name: The server group name.
52
+
53
+ It must be 2 to 128 characters in length, start with an uppercase letter or a Chinese character, and can contain digits, half-width periods (.), underscores (_), and dashes (-).
54
+ :param pulumi.Input[str] server_group_type: The server group type. Value:
55
+ - **Instance (default)**: The instance type. You can add Ecs, Eni, and Eci instances to the server group.
56
+ - `Ip`: The Ip address type. You can directly add backend servers of the Ip address type to the server group.
57
+ :param pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]] servers: List of servers. See `servers` below.
58
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: List of resource tags.
59
+ """
60
+ pulumi.set(__self__, "vpc_id", vpc_id)
61
+ if connection_drain_config is not None:
62
+ pulumi.set(__self__, "connection_drain_config", connection_drain_config)
63
+ if dry_run is not None:
64
+ pulumi.set(__self__, "dry_run", dry_run)
65
+ if health_check_config is not None:
66
+ pulumi.set(__self__, "health_check_config", health_check_config)
67
+ if protocol is not None:
68
+ pulumi.set(__self__, "protocol", protocol)
69
+ if resource_group_id is not None:
70
+ pulumi.set(__self__, "resource_group_id", resource_group_id)
71
+ if scheduler is not None:
72
+ pulumi.set(__self__, "scheduler", scheduler)
73
+ if server_group_name is not None:
74
+ pulumi.set(__self__, "server_group_name", server_group_name)
75
+ if server_group_type is not None:
76
+ pulumi.set(__self__, "server_group_type", server_group_type)
77
+ if servers is not None:
78
+ pulumi.set(__self__, "servers", servers)
79
+ if tags is not None:
80
+ pulumi.set(__self__, "tags", tags)
81
+
82
+ @property
83
+ @pulumi.getter(name="vpcId")
84
+ def vpc_id(self) -> pulumi.Input[str]:
85
+ """
86
+ The VPC instance ID.
87
+
88
+ > **NOTE:** If the value of ServerGroupType is Instance, only servers in the VPC can be added to the server group.
89
+ """
90
+ return pulumi.get(self, "vpc_id")
91
+
92
+ @vpc_id.setter
93
+ def vpc_id(self, value: pulumi.Input[str]):
94
+ pulumi.set(self, "vpc_id", value)
95
+
96
+ @property
97
+ @pulumi.getter(name="connectionDrainConfig")
98
+ def connection_drain_config(self) -> Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']]:
99
+ """
100
+ Connected graceful interrupt configuration. See `connection_drain_config` below.
101
+ """
102
+ return pulumi.get(self, "connection_drain_config")
103
+
104
+ @connection_drain_config.setter
105
+ def connection_drain_config(self, value: Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']]):
106
+ pulumi.set(self, "connection_drain_config", value)
107
+
108
+ @property
109
+ @pulumi.getter(name="dryRun")
110
+ def dry_run(self) -> Optional[pulumi.Input[bool]]:
111
+ """
112
+ Specifies whether to perform only a dry run, without performing the actual request.
113
+ """
114
+ return pulumi.get(self, "dry_run")
115
+
116
+ @dry_run.setter
117
+ def dry_run(self, value: Optional[pulumi.Input[bool]]):
118
+ pulumi.set(self, "dry_run", value)
119
+
120
+ @property
121
+ @pulumi.getter(name="healthCheckConfig")
122
+ def health_check_config(self) -> Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']]:
123
+ """
124
+ Health check configurations. See `health_check_config` below.
125
+ """
126
+ return pulumi.get(self, "health_check_config")
127
+
128
+ @health_check_config.setter
129
+ def health_check_config(self, value: Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']]):
130
+ pulumi.set(self, "health_check_config", value)
131
+
132
+ @property
133
+ @pulumi.getter
134
+ def protocol(self) -> Optional[pulumi.Input[str]]:
135
+ """
136
+ Backend Protocol. Value:
137
+
138
+ - *GENEVE (default)**.
139
+ """
140
+ return pulumi.get(self, "protocol")
141
+
142
+ @protocol.setter
143
+ def protocol(self, value: Optional[pulumi.Input[str]]):
144
+ pulumi.set(self, "protocol", value)
145
+
146
+ @property
147
+ @pulumi.getter(name="resourceGroupId")
148
+ def resource_group_id(self) -> Optional[pulumi.Input[str]]:
149
+ """
150
+ The ID of the resource group.
151
+ """
152
+ return pulumi.get(self, "resource_group_id")
153
+
154
+ @resource_group_id.setter
155
+ def resource_group_id(self, value: Optional[pulumi.Input[str]]):
156
+ pulumi.set(self, "resource_group_id", value)
157
+
158
+ @property
159
+ @pulumi.getter
160
+ def scheduler(self) -> Optional[pulumi.Input[str]]:
161
+ """
162
+ Scheduling algorithm. Value:
163
+ - **5TCH (default)**: quintuple hash, which is based on the consistent hash of the quintuple (source IP, Destination IP, source port, destination port, and protocol). The same flow is scheduled to the same backend server.
164
+ - `3TCH`: a three-tuple hash, which is based on the consistent hash of three tuples (source IP address, destination IP address, and protocol). The same flow is dispatched to the same backend server.
165
+ - `2TCH`: Binary Group hash, which is based on the consistent hash of the binary group (source IP and destination IP). The same flow is scheduled to the same backend server.
166
+ """
167
+ return pulumi.get(self, "scheduler")
168
+
169
+ @scheduler.setter
170
+ def scheduler(self, value: Optional[pulumi.Input[str]]):
171
+ pulumi.set(self, "scheduler", value)
172
+
173
+ @property
174
+ @pulumi.getter(name="serverGroupName")
175
+ def server_group_name(self) -> Optional[pulumi.Input[str]]:
176
+ """
177
+ The server group name.
178
+
179
+ It must be 2 to 128 characters in length, start with an uppercase letter or a Chinese character, and can contain digits, half-width periods (.), underscores (_), and dashes (-).
180
+ """
181
+ return pulumi.get(self, "server_group_name")
182
+
183
+ @server_group_name.setter
184
+ def server_group_name(self, value: Optional[pulumi.Input[str]]):
185
+ pulumi.set(self, "server_group_name", value)
186
+
187
+ @property
188
+ @pulumi.getter(name="serverGroupType")
189
+ def server_group_type(self) -> Optional[pulumi.Input[str]]:
190
+ """
191
+ The server group type. Value:
192
+ - **Instance (default)**: The instance type. You can add Ecs, Eni, and Eci instances to the server group.
193
+ - `Ip`: The Ip address type. You can directly add backend servers of the Ip address type to the server group.
194
+ """
195
+ return pulumi.get(self, "server_group_type")
196
+
197
+ @server_group_type.setter
198
+ def server_group_type(self, value: Optional[pulumi.Input[str]]):
199
+ pulumi.set(self, "server_group_type", value)
200
+
201
+ @property
202
+ @pulumi.getter
203
+ def servers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]]:
204
+ """
205
+ List of servers. See `servers` below.
206
+ """
207
+ return pulumi.get(self, "servers")
208
+
209
+ @servers.setter
210
+ def servers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]]):
211
+ pulumi.set(self, "servers", value)
212
+
213
+ @property
214
+ @pulumi.getter
215
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
216
+ """
217
+ List of resource tags.
218
+ """
219
+ return pulumi.get(self, "tags")
220
+
221
+ @tags.setter
222
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
223
+ pulumi.set(self, "tags", value)
224
+
225
+
226
+ @pulumi.input_type
227
+ class _ServerGroupState:
228
+ def __init__(__self__, *,
229
+ connection_drain_config: Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']] = None,
230
+ create_time: Optional[pulumi.Input[str]] = None,
231
+ dry_run: Optional[pulumi.Input[bool]] = None,
232
+ health_check_config: Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']] = None,
233
+ protocol: Optional[pulumi.Input[str]] = None,
234
+ resource_group_id: Optional[pulumi.Input[str]] = None,
235
+ scheduler: Optional[pulumi.Input[str]] = None,
236
+ server_group_name: Optional[pulumi.Input[str]] = None,
237
+ server_group_type: Optional[pulumi.Input[str]] = None,
238
+ servers: Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]] = None,
239
+ status: Optional[pulumi.Input[str]] = None,
240
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
241
+ vpc_id: Optional[pulumi.Input[str]] = None):
242
+ """
243
+ Input properties used for looking up and filtering ServerGroup resources.
244
+ :param pulumi.Input['ServerGroupConnectionDrainConfigArgs'] connection_drain_config: Connected graceful interrupt configuration. See `connection_drain_config` below.
245
+ :param pulumi.Input[str] create_time: The creation time of the server group.
246
+ :param pulumi.Input[bool] dry_run: Specifies whether to perform only a dry run, without performing the actual request.
247
+ :param pulumi.Input['ServerGroupHealthCheckConfigArgs'] health_check_config: Health check configurations. See `health_check_config` below.
248
+ :param pulumi.Input[str] protocol: Backend Protocol. Value:
249
+
250
+ - *GENEVE (default)**.
251
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group.
252
+ :param pulumi.Input[str] scheduler: Scheduling algorithm. Value:
253
+ - **5TCH (default)**: quintuple hash, which is based on the consistent hash of the quintuple (source IP, Destination IP, source port, destination port, and protocol). The same flow is scheduled to the same backend server.
254
+ - `3TCH`: a three-tuple hash, which is based on the consistent hash of three tuples (source IP address, destination IP address, and protocol). The same flow is dispatched to the same backend server.
255
+ - `2TCH`: Binary Group hash, which is based on the consistent hash of the binary group (source IP and destination IP). The same flow is scheduled to the same backend server.
256
+ :param pulumi.Input[str] server_group_name: The server group name.
257
+
258
+ It must be 2 to 128 characters in length, start with an uppercase letter or a Chinese character, and can contain digits, half-width periods (.), underscores (_), and dashes (-).
259
+ :param pulumi.Input[str] server_group_type: The server group type. Value:
260
+ - **Instance (default)**: The instance type. You can add Ecs, Eni, and Eci instances to the server group.
261
+ - `Ip`: The Ip address type. You can directly add backend servers of the Ip address type to the server group.
262
+ :param pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]] servers: List of servers. See `servers` below.
263
+ :param pulumi.Input[str] status: Server group status. Value:
264
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: List of resource tags.
265
+ :param pulumi.Input[str] vpc_id: The VPC instance ID.
266
+
267
+ > **NOTE:** If the value of ServerGroupType is Instance, only servers in the VPC can be added to the server group.
268
+ """
269
+ if connection_drain_config is not None:
270
+ pulumi.set(__self__, "connection_drain_config", connection_drain_config)
271
+ if create_time is not None:
272
+ pulumi.set(__self__, "create_time", create_time)
273
+ if dry_run is not None:
274
+ pulumi.set(__self__, "dry_run", dry_run)
275
+ if health_check_config is not None:
276
+ pulumi.set(__self__, "health_check_config", health_check_config)
277
+ if protocol is not None:
278
+ pulumi.set(__self__, "protocol", protocol)
279
+ if resource_group_id is not None:
280
+ pulumi.set(__self__, "resource_group_id", resource_group_id)
281
+ if scheduler is not None:
282
+ pulumi.set(__self__, "scheduler", scheduler)
283
+ if server_group_name is not None:
284
+ pulumi.set(__self__, "server_group_name", server_group_name)
285
+ if server_group_type is not None:
286
+ pulumi.set(__self__, "server_group_type", server_group_type)
287
+ if servers is not None:
288
+ pulumi.set(__self__, "servers", servers)
289
+ if status is not None:
290
+ pulumi.set(__self__, "status", status)
291
+ if tags is not None:
292
+ pulumi.set(__self__, "tags", tags)
293
+ if vpc_id is not None:
294
+ pulumi.set(__self__, "vpc_id", vpc_id)
295
+
296
+ @property
297
+ @pulumi.getter(name="connectionDrainConfig")
298
+ def connection_drain_config(self) -> Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']]:
299
+ """
300
+ Connected graceful interrupt configuration. See `connection_drain_config` below.
301
+ """
302
+ return pulumi.get(self, "connection_drain_config")
303
+
304
+ @connection_drain_config.setter
305
+ def connection_drain_config(self, value: Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']]):
306
+ pulumi.set(self, "connection_drain_config", value)
307
+
308
+ @property
309
+ @pulumi.getter(name="createTime")
310
+ def create_time(self) -> Optional[pulumi.Input[str]]:
311
+ """
312
+ The creation time of the server group.
313
+ """
314
+ return pulumi.get(self, "create_time")
315
+
316
+ @create_time.setter
317
+ def create_time(self, value: Optional[pulumi.Input[str]]):
318
+ pulumi.set(self, "create_time", value)
319
+
320
+ @property
321
+ @pulumi.getter(name="dryRun")
322
+ def dry_run(self) -> Optional[pulumi.Input[bool]]:
323
+ """
324
+ Specifies whether to perform only a dry run, without performing the actual request.
325
+ """
326
+ return pulumi.get(self, "dry_run")
327
+
328
+ @dry_run.setter
329
+ def dry_run(self, value: Optional[pulumi.Input[bool]]):
330
+ pulumi.set(self, "dry_run", value)
331
+
332
+ @property
333
+ @pulumi.getter(name="healthCheckConfig")
334
+ def health_check_config(self) -> Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']]:
335
+ """
336
+ Health check configurations. See `health_check_config` below.
337
+ """
338
+ return pulumi.get(self, "health_check_config")
339
+
340
+ @health_check_config.setter
341
+ def health_check_config(self, value: Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']]):
342
+ pulumi.set(self, "health_check_config", value)
343
+
344
+ @property
345
+ @pulumi.getter
346
+ def protocol(self) -> Optional[pulumi.Input[str]]:
347
+ """
348
+ Backend Protocol. Value:
349
+
350
+ - *GENEVE (default)**.
351
+ """
352
+ return pulumi.get(self, "protocol")
353
+
354
+ @protocol.setter
355
+ def protocol(self, value: Optional[pulumi.Input[str]]):
356
+ pulumi.set(self, "protocol", value)
357
+
358
+ @property
359
+ @pulumi.getter(name="resourceGroupId")
360
+ def resource_group_id(self) -> Optional[pulumi.Input[str]]:
361
+ """
362
+ The ID of the resource group.
363
+ """
364
+ return pulumi.get(self, "resource_group_id")
365
+
366
+ @resource_group_id.setter
367
+ def resource_group_id(self, value: Optional[pulumi.Input[str]]):
368
+ pulumi.set(self, "resource_group_id", value)
369
+
370
+ @property
371
+ @pulumi.getter
372
+ def scheduler(self) -> Optional[pulumi.Input[str]]:
373
+ """
374
+ Scheduling algorithm. Value:
375
+ - **5TCH (default)**: quintuple hash, which is based on the consistent hash of the quintuple (source IP, Destination IP, source port, destination port, and protocol). The same flow is scheduled to the same backend server.
376
+ - `3TCH`: a three-tuple hash, which is based on the consistent hash of three tuples (source IP address, destination IP address, and protocol). The same flow is dispatched to the same backend server.
377
+ - `2TCH`: Binary Group hash, which is based on the consistent hash of the binary group (source IP and destination IP). The same flow is scheduled to the same backend server.
378
+ """
379
+ return pulumi.get(self, "scheduler")
380
+
381
+ @scheduler.setter
382
+ def scheduler(self, value: Optional[pulumi.Input[str]]):
383
+ pulumi.set(self, "scheduler", value)
384
+
385
+ @property
386
+ @pulumi.getter(name="serverGroupName")
387
+ def server_group_name(self) -> Optional[pulumi.Input[str]]:
388
+ """
389
+ The server group name.
390
+
391
+ It must be 2 to 128 characters in length, start with an uppercase letter or a Chinese character, and can contain digits, half-width periods (.), underscores (_), and dashes (-).
392
+ """
393
+ return pulumi.get(self, "server_group_name")
394
+
395
+ @server_group_name.setter
396
+ def server_group_name(self, value: Optional[pulumi.Input[str]]):
397
+ pulumi.set(self, "server_group_name", value)
398
+
399
+ @property
400
+ @pulumi.getter(name="serverGroupType")
401
+ def server_group_type(self) -> Optional[pulumi.Input[str]]:
402
+ """
403
+ The server group type. Value:
404
+ - **Instance (default)**: The instance type. You can add Ecs, Eni, and Eci instances to the server group.
405
+ - `Ip`: The Ip address type. You can directly add backend servers of the Ip address type to the server group.
406
+ """
407
+ return pulumi.get(self, "server_group_type")
408
+
409
+ @server_group_type.setter
410
+ def server_group_type(self, value: Optional[pulumi.Input[str]]):
411
+ pulumi.set(self, "server_group_type", value)
412
+
413
+ @property
414
+ @pulumi.getter
415
+ def servers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]]:
416
+ """
417
+ List of servers. See `servers` below.
418
+ """
419
+ return pulumi.get(self, "servers")
420
+
421
+ @servers.setter
422
+ def servers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]]):
423
+ pulumi.set(self, "servers", value)
424
+
425
+ @property
426
+ @pulumi.getter
427
+ def status(self) -> Optional[pulumi.Input[str]]:
428
+ """
429
+ Server group status. Value:
430
+ """
431
+ return pulumi.get(self, "status")
432
+
433
+ @status.setter
434
+ def status(self, value: Optional[pulumi.Input[str]]):
435
+ pulumi.set(self, "status", value)
436
+
437
+ @property
438
+ @pulumi.getter
439
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
440
+ """
441
+ List of resource tags.
442
+ """
443
+ return pulumi.get(self, "tags")
444
+
445
+ @tags.setter
446
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
447
+ pulumi.set(self, "tags", value)
448
+
449
+ @property
450
+ @pulumi.getter(name="vpcId")
451
+ def vpc_id(self) -> Optional[pulumi.Input[str]]:
452
+ """
453
+ The VPC instance ID.
454
+
455
+ > **NOTE:** If the value of ServerGroupType is Instance, only servers in the VPC can be added to the server group.
456
+ """
457
+ return pulumi.get(self, "vpc_id")
458
+
459
+ @vpc_id.setter
460
+ def vpc_id(self, value: Optional[pulumi.Input[str]]):
461
+ pulumi.set(self, "vpc_id", value)
462
+
463
+
464
+ class ServerGroup(pulumi.CustomResource):
465
+ @overload
466
+ def __init__(__self__,
467
+ resource_name: str,
468
+ opts: Optional[pulumi.ResourceOptions] = None,
469
+ connection_drain_config: Optional[pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']]] = None,
470
+ dry_run: Optional[pulumi.Input[bool]] = None,
471
+ health_check_config: Optional[pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']]] = None,
472
+ protocol: Optional[pulumi.Input[str]] = None,
473
+ resource_group_id: Optional[pulumi.Input[str]] = None,
474
+ scheduler: Optional[pulumi.Input[str]] = None,
475
+ server_group_name: Optional[pulumi.Input[str]] = None,
476
+ server_group_type: Optional[pulumi.Input[str]] = None,
477
+ servers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]]] = None,
478
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
479
+ vpc_id: Optional[pulumi.Input[str]] = None,
480
+ __props__=None):
481
+ """
482
+ Provides a GWLB Server Group resource.
483
+
484
+ For information about GWLB Server Group and how to use it, see [What is Server Group](https://www.alibabacloud.com/help/en/).
485
+
486
+ > **NOTE:** Available since v1.234.0.
487
+
488
+ ## Import
489
+
490
+ GWLB Server Group can be imported using the id, e.g.
491
+
492
+ ```sh
493
+ $ pulumi import alicloud:gwlb/serverGroup:ServerGroup example <id>
494
+ ```
495
+
496
+ :param str resource_name: The name of the resource.
497
+ :param pulumi.ResourceOptions opts: Options for the resource.
498
+ :param pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']] connection_drain_config: Connected graceful interrupt configuration. See `connection_drain_config` below.
499
+ :param pulumi.Input[bool] dry_run: Specifies whether to perform only a dry run, without performing the actual request.
500
+ :param pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']] health_check_config: Health check configurations. See `health_check_config` below.
501
+ :param pulumi.Input[str] protocol: Backend Protocol. Value:
502
+
503
+ - *GENEVE (default)**.
504
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group.
505
+ :param pulumi.Input[str] scheduler: Scheduling algorithm. Value:
506
+ - **5TCH (default)**: quintuple hash, which is based on the consistent hash of the quintuple (source IP, Destination IP, source port, destination port, and protocol). The same flow is scheduled to the same backend server.
507
+ - `3TCH`: a three-tuple hash, which is based on the consistent hash of three tuples (source IP address, destination IP address, and protocol). The same flow is dispatched to the same backend server.
508
+ - `2TCH`: Binary Group hash, which is based on the consistent hash of the binary group (source IP and destination IP). The same flow is scheduled to the same backend server.
509
+ :param pulumi.Input[str] server_group_name: The server group name.
510
+
511
+ It must be 2 to 128 characters in length, start with an uppercase letter or a Chinese character, and can contain digits, half-width periods (.), underscores (_), and dashes (-).
512
+ :param pulumi.Input[str] server_group_type: The server group type. Value:
513
+ - **Instance (default)**: The instance type. You can add Ecs, Eni, and Eci instances to the server group.
514
+ - `Ip`: The Ip address type. You can directly add backend servers of the Ip address type to the server group.
515
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]] servers: List of servers. See `servers` below.
516
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: List of resource tags.
517
+ :param pulumi.Input[str] vpc_id: The VPC instance ID.
518
+
519
+ > **NOTE:** If the value of ServerGroupType is Instance, only servers in the VPC can be added to the server group.
520
+ """
521
+ ...
522
+ @overload
523
+ def __init__(__self__,
524
+ resource_name: str,
525
+ args: ServerGroupArgs,
526
+ opts: Optional[pulumi.ResourceOptions] = None):
527
+ """
528
+ Provides a GWLB Server Group resource.
529
+
530
+ For information about GWLB Server Group and how to use it, see [What is Server Group](https://www.alibabacloud.com/help/en/).
531
+
532
+ > **NOTE:** Available since v1.234.0.
533
+
534
+ ## Import
535
+
536
+ GWLB Server Group can be imported using the id, e.g.
537
+
538
+ ```sh
539
+ $ pulumi import alicloud:gwlb/serverGroup:ServerGroup example <id>
540
+ ```
541
+
542
+ :param str resource_name: The name of the resource.
543
+ :param ServerGroupArgs args: The arguments to use to populate this resource's properties.
544
+ :param pulumi.ResourceOptions opts: Options for the resource.
545
+ """
546
+ ...
547
+ def __init__(__self__, resource_name: str, *args, **kwargs):
548
+ resource_args, opts = _utilities.get_resource_args_opts(ServerGroupArgs, pulumi.ResourceOptions, *args, **kwargs)
549
+ if resource_args is not None:
550
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
551
+ else:
552
+ __self__._internal_init(resource_name, *args, **kwargs)
553
+
554
+ def _internal_init(__self__,
555
+ resource_name: str,
556
+ opts: Optional[pulumi.ResourceOptions] = None,
557
+ connection_drain_config: Optional[pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']]] = None,
558
+ dry_run: Optional[pulumi.Input[bool]] = None,
559
+ health_check_config: Optional[pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']]] = None,
560
+ protocol: Optional[pulumi.Input[str]] = None,
561
+ resource_group_id: Optional[pulumi.Input[str]] = None,
562
+ scheduler: Optional[pulumi.Input[str]] = None,
563
+ server_group_name: Optional[pulumi.Input[str]] = None,
564
+ server_group_type: Optional[pulumi.Input[str]] = None,
565
+ servers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]]] = None,
566
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
567
+ vpc_id: Optional[pulumi.Input[str]] = None,
568
+ __props__=None):
569
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
570
+ if not isinstance(opts, pulumi.ResourceOptions):
571
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
572
+ if opts.id is None:
573
+ if __props__ is not None:
574
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
575
+ __props__ = ServerGroupArgs.__new__(ServerGroupArgs)
576
+
577
+ __props__.__dict__["connection_drain_config"] = connection_drain_config
578
+ __props__.__dict__["dry_run"] = dry_run
579
+ __props__.__dict__["health_check_config"] = health_check_config
580
+ __props__.__dict__["protocol"] = protocol
581
+ __props__.__dict__["resource_group_id"] = resource_group_id
582
+ __props__.__dict__["scheduler"] = scheduler
583
+ __props__.__dict__["server_group_name"] = server_group_name
584
+ __props__.__dict__["server_group_type"] = server_group_type
585
+ __props__.__dict__["servers"] = servers
586
+ __props__.__dict__["tags"] = tags
587
+ if vpc_id is None and not opts.urn:
588
+ raise TypeError("Missing required property 'vpc_id'")
589
+ __props__.__dict__["vpc_id"] = vpc_id
590
+ __props__.__dict__["create_time"] = None
591
+ __props__.__dict__["status"] = None
592
+ super(ServerGroup, __self__).__init__(
593
+ 'alicloud:gwlb/serverGroup:ServerGroup',
594
+ resource_name,
595
+ __props__,
596
+ opts)
597
+
598
+ @staticmethod
599
+ def get(resource_name: str,
600
+ id: pulumi.Input[str],
601
+ opts: Optional[pulumi.ResourceOptions] = None,
602
+ connection_drain_config: Optional[pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']]] = None,
603
+ create_time: Optional[pulumi.Input[str]] = None,
604
+ dry_run: Optional[pulumi.Input[bool]] = None,
605
+ health_check_config: Optional[pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']]] = None,
606
+ protocol: Optional[pulumi.Input[str]] = None,
607
+ resource_group_id: Optional[pulumi.Input[str]] = None,
608
+ scheduler: Optional[pulumi.Input[str]] = None,
609
+ server_group_name: Optional[pulumi.Input[str]] = None,
610
+ server_group_type: Optional[pulumi.Input[str]] = None,
611
+ servers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]]] = None,
612
+ status: Optional[pulumi.Input[str]] = None,
613
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
614
+ vpc_id: Optional[pulumi.Input[str]] = None) -> 'ServerGroup':
615
+ """
616
+ Get an existing ServerGroup resource's state with the given name, id, and optional extra
617
+ properties used to qualify the lookup.
618
+
619
+ :param str resource_name: The unique name of the resulting resource.
620
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
621
+ :param pulumi.ResourceOptions opts: Options for the resource.
622
+ :param pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']] connection_drain_config: Connected graceful interrupt configuration. See `connection_drain_config` below.
623
+ :param pulumi.Input[str] create_time: The creation time of the server group.
624
+ :param pulumi.Input[bool] dry_run: Specifies whether to perform only a dry run, without performing the actual request.
625
+ :param pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']] health_check_config: Health check configurations. See `health_check_config` below.
626
+ :param pulumi.Input[str] protocol: Backend Protocol. Value:
627
+
628
+ - *GENEVE (default)**.
629
+ :param pulumi.Input[str] resource_group_id: The ID of the resource group.
630
+ :param pulumi.Input[str] scheduler: Scheduling algorithm. Value:
631
+ - **5TCH (default)**: quintuple hash, which is based on the consistent hash of the quintuple (source IP, Destination IP, source port, destination port, and protocol). The same flow is scheduled to the same backend server.
632
+ - `3TCH`: a three-tuple hash, which is based on the consistent hash of three tuples (source IP address, destination IP address, and protocol). The same flow is dispatched to the same backend server.
633
+ - `2TCH`: Binary Group hash, which is based on the consistent hash of the binary group (source IP and destination IP). The same flow is scheduled to the same backend server.
634
+ :param pulumi.Input[str] server_group_name: The server group name.
635
+
636
+ It must be 2 to 128 characters in length, start with an uppercase letter or a Chinese character, and can contain digits, half-width periods (.), underscores (_), and dashes (-).
637
+ :param pulumi.Input[str] server_group_type: The server group type. Value:
638
+ - **Instance (default)**: The instance type. You can add Ecs, Eni, and Eci instances to the server group.
639
+ - `Ip`: The Ip address type. You can directly add backend servers of the Ip address type to the server group.
640
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]] servers: List of servers. See `servers` below.
641
+ :param pulumi.Input[str] status: Server group status. Value:
642
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: List of resource tags.
643
+ :param pulumi.Input[str] vpc_id: The VPC instance ID.
644
+
645
+ > **NOTE:** If the value of ServerGroupType is Instance, only servers in the VPC can be added to the server group.
646
+ """
647
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
648
+
649
+ __props__ = _ServerGroupState.__new__(_ServerGroupState)
650
+
651
+ __props__.__dict__["connection_drain_config"] = connection_drain_config
652
+ __props__.__dict__["create_time"] = create_time
653
+ __props__.__dict__["dry_run"] = dry_run
654
+ __props__.__dict__["health_check_config"] = health_check_config
655
+ __props__.__dict__["protocol"] = protocol
656
+ __props__.__dict__["resource_group_id"] = resource_group_id
657
+ __props__.__dict__["scheduler"] = scheduler
658
+ __props__.__dict__["server_group_name"] = server_group_name
659
+ __props__.__dict__["server_group_type"] = server_group_type
660
+ __props__.__dict__["servers"] = servers
661
+ __props__.__dict__["status"] = status
662
+ __props__.__dict__["tags"] = tags
663
+ __props__.__dict__["vpc_id"] = vpc_id
664
+ return ServerGroup(resource_name, opts=opts, __props__=__props__)
665
+
666
+ @property
667
+ @pulumi.getter(name="connectionDrainConfig")
668
+ def connection_drain_config(self) -> pulumi.Output['outputs.ServerGroupConnectionDrainConfig']:
669
+ """
670
+ Connected graceful interrupt configuration. See `connection_drain_config` below.
671
+ """
672
+ return pulumi.get(self, "connection_drain_config")
673
+
674
+ @property
675
+ @pulumi.getter(name="createTime")
676
+ def create_time(self) -> pulumi.Output[str]:
677
+ """
678
+ The creation time of the server group.
679
+ """
680
+ return pulumi.get(self, "create_time")
681
+
682
+ @property
683
+ @pulumi.getter(name="dryRun")
684
+ def dry_run(self) -> pulumi.Output[Optional[bool]]:
685
+ """
686
+ Specifies whether to perform only a dry run, without performing the actual request.
687
+ """
688
+ return pulumi.get(self, "dry_run")
689
+
690
+ @property
691
+ @pulumi.getter(name="healthCheckConfig")
692
+ def health_check_config(self) -> pulumi.Output['outputs.ServerGroupHealthCheckConfig']:
693
+ """
694
+ Health check configurations. See `health_check_config` below.
695
+ """
696
+ return pulumi.get(self, "health_check_config")
697
+
698
+ @property
699
+ @pulumi.getter
700
+ def protocol(self) -> pulumi.Output[str]:
701
+ """
702
+ Backend Protocol. Value:
703
+
704
+ - *GENEVE (default)**.
705
+ """
706
+ return pulumi.get(self, "protocol")
707
+
708
+ @property
709
+ @pulumi.getter(name="resourceGroupId")
710
+ def resource_group_id(self) -> pulumi.Output[str]:
711
+ """
712
+ The ID of the resource group.
713
+ """
714
+ return pulumi.get(self, "resource_group_id")
715
+
716
+ @property
717
+ @pulumi.getter
718
+ def scheduler(self) -> pulumi.Output[str]:
719
+ """
720
+ Scheduling algorithm. Value:
721
+ - **5TCH (default)**: quintuple hash, which is based on the consistent hash of the quintuple (source IP, Destination IP, source port, destination port, and protocol). The same flow is scheduled to the same backend server.
722
+ - `3TCH`: a three-tuple hash, which is based on the consistent hash of three tuples (source IP address, destination IP address, and protocol). The same flow is dispatched to the same backend server.
723
+ - `2TCH`: Binary Group hash, which is based on the consistent hash of the binary group (source IP and destination IP). The same flow is scheduled to the same backend server.
724
+ """
725
+ return pulumi.get(self, "scheduler")
726
+
727
+ @property
728
+ @pulumi.getter(name="serverGroupName")
729
+ def server_group_name(self) -> pulumi.Output[Optional[str]]:
730
+ """
731
+ The server group name.
732
+
733
+ It must be 2 to 128 characters in length, start with an uppercase letter or a Chinese character, and can contain digits, half-width periods (.), underscores (_), and dashes (-).
734
+ """
735
+ return pulumi.get(self, "server_group_name")
736
+
737
+ @property
738
+ @pulumi.getter(name="serverGroupType")
739
+ def server_group_type(self) -> pulumi.Output[str]:
740
+ """
741
+ The server group type. Value:
742
+ - **Instance (default)**: The instance type. You can add Ecs, Eni, and Eci instances to the server group.
743
+ - `Ip`: The Ip address type. You can directly add backend servers of the Ip address type to the server group.
744
+ """
745
+ return pulumi.get(self, "server_group_type")
746
+
747
+ @property
748
+ @pulumi.getter
749
+ def servers(self) -> pulumi.Output[Optional[Sequence['outputs.ServerGroupServer']]]:
750
+ """
751
+ List of servers. See `servers` below.
752
+ """
753
+ return pulumi.get(self, "servers")
754
+
755
+ @property
756
+ @pulumi.getter
757
+ def status(self) -> pulumi.Output[str]:
758
+ """
759
+ Server group status. Value:
760
+ """
761
+ return pulumi.get(self, "status")
762
+
763
+ @property
764
+ @pulumi.getter
765
+ def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
766
+ """
767
+ List of resource tags.
768
+ """
769
+ return pulumi.get(self, "tags")
770
+
771
+ @property
772
+ @pulumi.getter(name="vpcId")
773
+ def vpc_id(self) -> pulumi.Output[str]:
774
+ """
775
+ The VPC instance ID.
776
+
777
+ > **NOTE:** If the value of ServerGroupType is Instance, only servers in the VPC can be added to the server group.
778
+ """
779
+ return pulumi.get(self, "vpc_id")
780
+