pulumi-alicloud 3.74.0a1737782319__py3-none-any.whl → 3.75.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 (197) hide show
  1. pulumi_alicloud/__init__.py +310 -0
  2. pulumi_alicloud/_inputs.py +33 -0
  3. pulumi_alicloud/_utilities.py +8 -4
  4. pulumi_alicloud/ackone/__init__.py +1 -0
  5. pulumi_alicloud/ackone/cluster.py +73 -8
  6. pulumi_alicloud/ackone/membership_attachment.py +223 -0
  7. pulumi_alicloud/alb/__init__.py +1 -0
  8. pulumi_alicloud/alb/_inputs.py +1109 -246
  9. pulumi_alicloud/alb/get_server_groups.py +55 -25
  10. pulumi_alicloud/alb/listener.py +269 -174
  11. pulumi_alicloud/alb/load_balancer.py +211 -118
  12. pulumi_alicloud/alb/load_balancer_security_group_attachment.py +69 -22
  13. pulumi_alicloud/alb/load_balancer_zone_shifted_attachment.py +303 -0
  14. pulumi_alicloud/alb/outputs.py +856 -220
  15. pulumi_alicloud/alb/server_group.py +661 -96
  16. pulumi_alicloud/aligreen/audit_callback.py +2 -2
  17. pulumi_alicloud/aligreen/biz_type.py +2 -2
  18. pulumi_alicloud/aligreen/callback.py +2 -2
  19. pulumi_alicloud/aligreen/image_lib.py +2 -2
  20. pulumi_alicloud/aligreen/keyword_lib.py +2 -2
  21. pulumi_alicloud/aligreen/oss_stock_task.py +77 -14
  22. pulumi_alicloud/apigateway/instance.py +51 -4
  23. pulumi_alicloud/cen/_inputs.py +34 -0
  24. pulumi_alicloud/cen/outputs.py +37 -0
  25. pulumi_alicloud/cen/transit_router_multicast_domain.py +123 -36
  26. pulumi_alicloud/cfg/aggregate_compliance_pack.py +6 -4
  27. pulumi_alicloud/cfg/aggregate_config_rule.py +6 -4
  28. pulumi_alicloud/cfg/aggregator.py +6 -4
  29. pulumi_alicloud/cloudcontrol/get_prices.py +2 -2
  30. pulumi_alicloud/cloudcontrol/get_products.py +2 -2
  31. pulumi_alicloud/cloudcontrol/get_resource_types.py +2 -2
  32. pulumi_alicloud/cloudcontrol/resource.py +2 -2
  33. pulumi_alicloud/cloudfirewall/__init__.py +2 -0
  34. pulumi_alicloud/cloudfirewall/get_nat_firewalls.py +315 -0
  35. pulumi_alicloud/cloudfirewall/get_vpc_cen_tr_firewalls.py +569 -0
  36. pulumi_alicloud/cloudfirewall/outputs.py +362 -0
  37. pulumi_alicloud/cloudphone/__init__.py +12 -0
  38. pulumi_alicloud/cloudphone/_inputs.py +175 -0
  39. pulumi_alicloud/cloudphone/image.py +323 -0
  40. pulumi_alicloud/cloudphone/key_pair.py +294 -0
  41. pulumi_alicloud/cloudphone/outputs.py +138 -0
  42. pulumi_alicloud/cloudphone/policy.py +522 -0
  43. pulumi_alicloud/cloudphoneinstance/__init__.py +9 -0
  44. pulumi_alicloud/cloudphoneinstance/cloud_phone_instance.py +209 -0
  45. pulumi_alicloud/cloudphoneinstance/group.py +961 -0
  46. pulumi_alicloud/cms/get_site_monitors.py +2 -2
  47. pulumi_alicloud/config/outputs.py +20 -0
  48. pulumi_alicloud/cs/_inputs.py +358 -10
  49. pulumi_alicloud/cs/get_kubernetes_clusters.py +5 -4
  50. pulumi_alicloud/cs/get_managed_kubernetes_clusters.py +5 -4
  51. pulumi_alicloud/cs/get_serverless_kubernetes_clusters.py +5 -4
  52. pulumi_alicloud/cs/kubernetes.py +15 -15
  53. pulumi_alicloud/cs/managed_kubernetes.py +47 -35
  54. pulumi_alicloud/cs/node_pool.py +126 -23
  55. pulumi_alicloud/cs/outputs.py +271 -7
  56. pulumi_alicloud/ddos/ddos_bgp_instance.py +0 -4
  57. pulumi_alicloud/dfs/file_system.py +62 -23
  58. pulumi_alicloud/dfs/mount_point.py +48 -22
  59. pulumi_alicloud/dfs/vsc_mount_point.py +28 -28
  60. pulumi_alicloud/dns/ddos_bgp_instance.py +0 -4
  61. pulumi_alicloud/ebs/replica_group_drill.py +2 -2
  62. pulumi_alicloud/ebs/replica_pair_drill.py +2 -2
  63. pulumi_alicloud/ecs/ecs_deployment_set.py +89 -67
  64. pulumi_alicloud/ecs/eip.py +1 -1
  65. pulumi_alicloud/ecs/eip_address.py +1 -1
  66. pulumi_alicloud/ecs/instance.py +43 -30
  67. pulumi_alicloud/eds/command.py +10 -2
  68. pulumi_alicloud/emrv2/__init__.py +1 -0
  69. pulumi_alicloud/emrv2/_inputs.py +47 -7
  70. pulumi_alicloud/emrv2/get_cluster_instances.py +537 -0
  71. pulumi_alicloud/emrv2/outputs.py +195 -5
  72. pulumi_alicloud/ens/instance_security_group_attachment.py +8 -4
  73. pulumi_alicloud/ens/nat_gateway.py +6 -6
  74. pulumi_alicloud/ens/vswitch.py +36 -36
  75. pulumi_alicloud/esa/__init__.py +22 -0
  76. pulumi_alicloud/esa/_inputs.py +512 -0
  77. pulumi_alicloud/esa/cache_rule.py +1405 -0
  78. pulumi_alicloud/esa/certificate.py +724 -0
  79. pulumi_alicloud/esa/client_ca_certificate.py +388 -0
  80. pulumi_alicloud/esa/client_certificate.py +452 -0
  81. pulumi_alicloud/esa/compression_rule.py +582 -0
  82. pulumi_alicloud/esa/get_sites.py +421 -0
  83. pulumi_alicloud/esa/http_request_header_modification_rule.py +531 -0
  84. pulumi_alicloud/esa/http_response_header_modification_rule.py +560 -0
  85. pulumi_alicloud/esa/https_application_configuration.py +925 -0
  86. pulumi_alicloud/esa/https_basic_configuration.py +1027 -0
  87. pulumi_alicloud/esa/image_transform.py +484 -0
  88. pulumi_alicloud/esa/kv_namespace.py +276 -0
  89. pulumi_alicloud/esa/list.py +361 -0
  90. pulumi_alicloud/esa/network_optimization.py +750 -0
  91. pulumi_alicloud/esa/origin_pool.py +485 -0
  92. pulumi_alicloud/esa/origin_rule.py +768 -0
  93. pulumi_alicloud/esa/outputs.py +473 -0
  94. pulumi_alicloud/esa/page.py +376 -0
  95. pulumi_alicloud/esa/rate_plan_instance.py +63 -7
  96. pulumi_alicloud/esa/record.py +2 -2
  97. pulumi_alicloud/esa/redirect_rule.py +734 -0
  98. pulumi_alicloud/esa/rewrite_url_rule.py +702 -0
  99. pulumi_alicloud/esa/site.py +307 -2
  100. pulumi_alicloud/esa/waiting_room.py +1257 -0
  101. pulumi_alicloud/esa/waiting_room_event.py +1392 -0
  102. pulumi_alicloud/esa/waiting_room_rule.py +504 -0
  103. pulumi_alicloud/ess/get_scaling_groups.py +64 -10
  104. pulumi_alicloud/ess/get_scaling_rules.py +74 -10
  105. pulumi_alicloud/ess/outputs.py +357 -17
  106. pulumi_alicloud/ess/scaling_configuration.py +7 -7
  107. pulumi_alicloud/eventbridge/get_service.py +2 -6
  108. pulumi_alicloud/expressconnect/ec_failover_test_job.py +0 -2
  109. pulumi_alicloud/expressconnect/vbr_pconn_association.py +2 -2
  110. pulumi_alicloud/fc/_inputs.py +75 -75
  111. pulumi_alicloud/fc/outputs.py +50 -50
  112. pulumi_alicloud/fc/v3_function.py +53 -6
  113. pulumi_alicloud/ga/get_basic_accelerators.py +31 -9
  114. pulumi_alicloud/ga/outputs.py +10 -4
  115. pulumi_alicloud/gpdb/db_resource_group.py +6 -6
  116. pulumi_alicloud/gpdb/external_data_service.py +6 -6
  117. pulumi_alicloud/gpdb/streaming_data_service.py +2 -2
  118. pulumi_alicloud/hbr/policy.py +67 -6
  119. pulumi_alicloud/hbr/vault.py +210 -9
  120. pulumi_alicloud/kms/__init__.py +1 -0
  121. pulumi_alicloud/kms/get_instances.py +160 -0
  122. pulumi_alicloud/kms/get_keys.py +10 -0
  123. pulumi_alicloud/kms/instance.py +0 -60
  124. pulumi_alicloud/kms/outputs.py +19 -0
  125. pulumi_alicloud/maxcompute/__init__.py +5 -0
  126. pulumi_alicloud/maxcompute/_inputs.py +615 -42
  127. pulumi_alicloud/maxcompute/outputs.py +486 -28
  128. pulumi_alicloud/maxcompute/project.py +63 -31
  129. pulumi_alicloud/maxcompute/quota_plan.py +412 -0
  130. pulumi_alicloud/maxcompute/quota_schedule.py +260 -0
  131. pulumi_alicloud/maxcompute/role.py +423 -0
  132. pulumi_alicloud/maxcompute/role_user_attachment.py +368 -0
  133. pulumi_alicloud/maxcompute/tunnel_quota_timer.py +287 -0
  134. pulumi_alicloud/message/__init__.py +3 -0
  135. pulumi_alicloud/message/_inputs.py +149 -0
  136. pulumi_alicloud/message/outputs.py +112 -0
  137. pulumi_alicloud/message/service_endpoint.py +218 -0
  138. pulumi_alicloud/message/service_endpoint_acl.py +306 -0
  139. pulumi_alicloud/message/service_queue.py +49 -0
  140. pulumi_alicloud/message/service_subscription.py +91 -14
  141. pulumi_alicloud/mse/nacos_config.py +4 -0
  142. pulumi_alicloud/nlb/_inputs.py +114 -24
  143. pulumi_alicloud/nlb/listener.py +87 -20
  144. pulumi_alicloud/nlb/outputs.py +93 -16
  145. pulumi_alicloud/nlb/server_group.py +55 -20
  146. pulumi_alicloud/ots/_inputs.py +3 -3
  147. pulumi_alicloud/ots/outputs.py +2 -2
  148. pulumi_alicloud/pai/workspace_code_source.py +2 -2
  149. pulumi_alicloud/pai/workspace_dataset.py +2 -2
  150. pulumi_alicloud/pai/workspace_datasetversion.py +2 -4
  151. pulumi_alicloud/pai/workspace_experiment.py +2 -2
  152. pulumi_alicloud/pai/workspace_run.py +2 -2
  153. pulumi_alicloud/pai/workspace_workspace.py +2 -2
  154. pulumi_alicloud/privatelink/get_vpc_endpoints.py +21 -1
  155. pulumi_alicloud/privatelink/outputs.py +11 -0
  156. pulumi_alicloud/privatelink/vpc_endpoint.py +1 -1
  157. pulumi_alicloud/pulumi-plugin.json +1 -1
  158. pulumi_alicloud/ram/access_key.py +20 -4
  159. pulumi_alicloud/ram/user.py +10 -2
  160. pulumi_alicloud/rds/instance.py +75 -0
  161. pulumi_alicloud/simpleapplicationserver/get_server_plans.py +7 -7
  162. pulumi_alicloud/simpleapplicationserver/outputs.py +3 -3
  163. pulumi_alicloud/tag/__init__.py +1 -0
  164. pulumi_alicloud/tag/associated_rule.py +306 -0
  165. pulumi_alicloud/tag/policy.py +27 -36
  166. pulumi_alicloud/vpc/__init__.py +2 -0
  167. pulumi_alicloud/vpc/common_bandwith_package.py +107 -44
  168. pulumi_alicloud/vpc/common_bandwith_package_attachment.py +2 -2
  169. pulumi_alicloud/vpc/flow_log.py +184 -49
  170. pulumi_alicloud/vpc/forward_entry.py +8 -4
  171. pulumi_alicloud/vpc/get_enhanced_nat_available_zones.py +38 -2
  172. pulumi_alicloud/vpc/get_forward_entries.py +2 -2
  173. pulumi_alicloud/vpc/get_ipsec_servers.py +14 -2
  174. pulumi_alicloud/vpc/get_nat_gateways.py +48 -2
  175. pulumi_alicloud/vpc/get_prefix_lists.py +11 -2
  176. pulumi_alicloud/vpc/get_snat_entries.py +5 -2
  177. pulumi_alicloud/vpc/get_traffic_mirror_filters.py +14 -2
  178. pulumi_alicloud/vpc/ipam_ipam.py +2 -9
  179. pulumi_alicloud/vpc/ipam_ipam_pool.py +49 -30
  180. pulumi_alicloud/vpc/ipam_ipam_pool_allocation.py +6 -16
  181. pulumi_alicloud/vpc/ipam_ipam_pool_cidr.py +2 -2
  182. pulumi_alicloud/vpc/ipam_ipam_resource_discovery.py +489 -0
  183. pulumi_alicloud/vpc/ipam_ipam_scope.py +49 -9
  184. pulumi_alicloud/vpc/ipam_service.py +144 -0
  185. pulumi_alicloud/vpc/ipv4_cidr_block.py +162 -51
  186. pulumi_alicloud/vpc/nat_gateway.py +8 -0
  187. pulumi_alicloud/vpc/outputs.py +12 -2
  188. pulumi_alicloud/vpc/router_interface_connection.py +4 -4
  189. pulumi_alicloud/vpc/traffic_mirror_filter.py +2 -2
  190. pulumi_alicloud/vpn/get_gateway_vco_routes.py +11 -2
  191. pulumi_alicloud/vpn/get_gateway_vpn_attachments.py +11 -2
  192. pulumi_alicloud/vpn/get_gateways.py +21 -1
  193. pulumi_alicloud/vpn/outputs.py +23 -12
  194. {pulumi_alicloud-3.74.0a1737782319.dist-info → pulumi_alicloud-3.75.0.dist-info}/METADATA +1 -1
  195. {pulumi_alicloud-3.74.0a1737782319.dist-info → pulumi_alicloud-3.75.0.dist-info}/RECORD +197 -149
  196. {pulumi_alicloud-3.74.0a1737782319.dist-info → pulumi_alicloud-3.75.0.dist-info}/WHEEL +1 -1
  197. {pulumi_alicloud-3.74.0a1737782319.dist-info → pulumi_alicloud-3.75.0.dist-info}/top_level.txt +0 -0
@@ -23,36 +23,83 @@ class ServerGroupArgs:
23
23
  def __init__(__self__, *,
24
24
  health_check_config: pulumi.Input['ServerGroupHealthCheckConfigArgs'],
25
25
  server_group_name: pulumi.Input[str],
26
+ connection_drain_config: Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']] = None,
27
+ cross_zone_enabled: Optional[pulumi.Input[bool]] = None,
26
28
  dry_run: Optional[pulumi.Input[bool]] = None,
29
+ health_check_template_id: Optional[pulumi.Input[str]] = None,
30
+ ipv6_enabled: Optional[pulumi.Input[bool]] = None,
27
31
  protocol: Optional[pulumi.Input[str]] = None,
28
32
  resource_group_id: Optional[pulumi.Input[str]] = None,
29
33
  scheduler: Optional[pulumi.Input[str]] = None,
30
34
  server_group_type: Optional[pulumi.Input[str]] = None,
31
35
  servers: Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]] = None,
36
+ service_name: Optional[pulumi.Input[str]] = None,
37
+ slow_start_config: Optional[pulumi.Input['ServerGroupSlowStartConfigArgs']] = None,
32
38
  sticky_session_config: Optional[pulumi.Input['ServerGroupStickySessionConfigArgs']] = None,
33
39
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
40
+ uch_config: Optional[pulumi.Input['ServerGroupUchConfigArgs']] = None,
41
+ upstream_keepalive_enabled: Optional[pulumi.Input[bool]] = None,
34
42
  vpc_id: Optional[pulumi.Input[str]] = None):
35
43
  """
36
44
  The set of arguments for constructing a ServerGroup resource.
37
- :param pulumi.Input['ServerGroupHealthCheckConfigArgs'] health_check_config: The configuration of health checks. See `health_check_config` below.
38
- :param pulumi.Input[str] server_group_name: The name of the server group.
39
- :param pulumi.Input[bool] dry_run: The dry run.
40
- :param pulumi.Input[str] protocol: The server protocol. Valid values: ` HTTP`, `HTTPS`, `gRPC`. While `server_group_type` is `Fc` this parameter will not take effect. From version 1.215.0, `protocol` can be set to `gRPC`.
41
- :param pulumi.Input[str] resource_group_id: The ID of the resource group.
42
- :param pulumi.Input[str] scheduler: The scheduling algorithm. Valid values: ` Sch`, ` Wlc`, `Wrr`. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
43
- :param pulumi.Input[str] server_group_type: The type of the server group. Default value: `Instance`. Valid values:
44
- - `Instance`: allows you add servers by specifying Ecs, Ens, or Eci.
45
+ :param pulumi.Input['ServerGroupHealthCheckConfigArgs'] health_check_config: The configuration of health checks See `health_check_config` below.
46
+ :param pulumi.Input[str] server_group_name: The name of the server group. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (\\_), and hyphens (-). The name must start with a letter.
47
+ :param pulumi.Input['ServerGroupConnectionDrainConfigArgs'] connection_drain_config: Elegant interrupt configuration. See `connection_drain_config` below.
48
+ :param pulumi.Input[bool] cross_zone_enabled: Indicates whether cross-zone load balancing is enabled for the server group. Valid values:
49
+ :param pulumi.Input[bool] dry_run: Whether to PreCheck only this request. Value:
50
+ true: Send a check request,
51
+ false (default): Send a normal request.
52
+ :param pulumi.Input[str] health_check_template_id: The ID of the resource group to which you want to transfer the cloud resource.
53
+
54
+ > **NOTE:** You can use resource groups to manage resources within your Alibaba Cloud account by group. This helps you resolve issues such as resource grouping and permission management for your Alibaba Cloud account. For more information, see [What is resource management?](https://www.alibabacloud.com/help/en/doc-detail/94475.html)
55
+ :param pulumi.Input[bool] ipv6_enabled: Enable Ipv6
56
+ :param pulumi.Input[str] protocol: The backend protocol. Valid values:
57
+
58
+ * `HTTP`: allows you to associate an HTTPS, HTTP, or QUIC listener with the server group. This is the default value.
59
+
60
+ * `HTTPS`: allows you to associate HTTPS listeners with backend servers.
61
+
62
+ * `gRPC`: allows you to associate an HTTPS or QUIC listener with the server group.
63
+
64
+ > **NOTE:** You do not need to specify a backend protocol if you set `ServerGroupType` to `Fc`.
65
+ :param pulumi.Input[str] resource_group_id: Elegant interrupt configuration.
66
+ :param pulumi.Input[str] scheduler: The scheduling algorithm. Valid values:
67
+
68
+ * `Wrr` (default): The weighted round-robin algorithm is used. Backend servers that have higher weights receive more requests than those that have lower weights.
69
+
70
+ * `Wlc`: The weighted least connections algorithm is used. Requests are distributed based on the weights and the number of connections to backend servers. If two backend servers have the same weight, the backend server that has fewer connections is expected to receive more requests.
71
+
72
+ * `Sch`: The consistent hashing algorithm is used. Requests from the same source IP address are distributed to the same backend server.
73
+
74
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
75
+ :param pulumi.Input[str] server_group_type: The type of server group. Valid values:
76
+
77
+ - `Instance` (default): allows you to add servers by specifying `Ecs`, `Eni`, or `Eci`.
45
78
  - `Ip`: allows you to add servers by specifying IP addresses.
46
79
  - `Fc`: allows you to add servers by specifying functions of Function Compute.
47
- :param pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]] servers: The backend servers. See `servers` below.
48
- :param pulumi.Input['ServerGroupStickySessionConfigArgs'] sticky_session_config: The configuration of session persistence. See `sticky_session_config` below.
49
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource.
50
- :param pulumi.Input[str] vpc_id: The ID of the VPC that you want to access. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
80
+ :param pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]] servers: List of servers. See `servers` below.
81
+ :param pulumi.Input[str] service_name: Only applicable to the ALB Ingress scenario, indicating the K8s Service name corresponding to the server group.
82
+ :param pulumi.Input['ServerGroupSlowStartConfigArgs'] slow_start_config: Slow start configuration. See `slow_start_config` below.
83
+ :param pulumi.Input['ServerGroupStickySessionConfigArgs'] sticky_session_config: The configuration of health checks See `sticky_session_config` below.
84
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: The creation time of the resource
85
+ :param pulumi.Input['ServerGroupUchConfigArgs'] uch_config: Url consistency hash parameter configuration See `uch_config` below.
86
+ :param pulumi.Input[bool] upstream_keepalive_enabled: Specifies whether to enable persistent TCP connections.
87
+ :param pulumi.Input[str] vpc_id: The ID of the virtual private cloud (VPC). You can add only servers that are deployed in the specified VPC to the server group.
88
+
89
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
51
90
  """
52
91
  pulumi.set(__self__, "health_check_config", health_check_config)
53
92
  pulumi.set(__self__, "server_group_name", server_group_name)
93
+ if connection_drain_config is not None:
94
+ pulumi.set(__self__, "connection_drain_config", connection_drain_config)
95
+ if cross_zone_enabled is not None:
96
+ pulumi.set(__self__, "cross_zone_enabled", cross_zone_enabled)
54
97
  if dry_run is not None:
55
98
  pulumi.set(__self__, "dry_run", dry_run)
99
+ if health_check_template_id is not None:
100
+ pulumi.set(__self__, "health_check_template_id", health_check_template_id)
101
+ if ipv6_enabled is not None:
102
+ pulumi.set(__self__, "ipv6_enabled", ipv6_enabled)
56
103
  if protocol is not None:
57
104
  pulumi.set(__self__, "protocol", protocol)
58
105
  if resource_group_id is not None:
@@ -63,10 +110,18 @@ class ServerGroupArgs:
63
110
  pulumi.set(__self__, "server_group_type", server_group_type)
64
111
  if servers is not None:
65
112
  pulumi.set(__self__, "servers", servers)
113
+ if service_name is not None:
114
+ pulumi.set(__self__, "service_name", service_name)
115
+ if slow_start_config is not None:
116
+ pulumi.set(__self__, "slow_start_config", slow_start_config)
66
117
  if sticky_session_config is not None:
67
118
  pulumi.set(__self__, "sticky_session_config", sticky_session_config)
68
119
  if tags is not None:
69
120
  pulumi.set(__self__, "tags", tags)
121
+ if uch_config is not None:
122
+ pulumi.set(__self__, "uch_config", uch_config)
123
+ if upstream_keepalive_enabled is not None:
124
+ pulumi.set(__self__, "upstream_keepalive_enabled", upstream_keepalive_enabled)
70
125
  if vpc_id is not None:
71
126
  pulumi.set(__self__, "vpc_id", vpc_id)
72
127
 
@@ -74,7 +129,7 @@ class ServerGroupArgs:
74
129
  @pulumi.getter(name="healthCheckConfig")
75
130
  def health_check_config(self) -> pulumi.Input['ServerGroupHealthCheckConfigArgs']:
76
131
  """
77
- The configuration of health checks. See `health_check_config` below.
132
+ The configuration of health checks See `health_check_config` below.
78
133
  """
79
134
  return pulumi.get(self, "health_check_config")
80
135
 
@@ -86,7 +141,7 @@ class ServerGroupArgs:
86
141
  @pulumi.getter(name="serverGroupName")
87
142
  def server_group_name(self) -> pulumi.Input[str]:
88
143
  """
89
- The name of the server group.
144
+ The name of the server group. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (\\_), and hyphens (-). The name must start with a letter.
90
145
  """
91
146
  return pulumi.get(self, "server_group_name")
92
147
 
@@ -94,11 +149,37 @@ class ServerGroupArgs:
94
149
  def server_group_name(self, value: pulumi.Input[str]):
95
150
  pulumi.set(self, "server_group_name", value)
96
151
 
152
+ @property
153
+ @pulumi.getter(name="connectionDrainConfig")
154
+ def connection_drain_config(self) -> Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']]:
155
+ """
156
+ Elegant interrupt configuration. See `connection_drain_config` below.
157
+ """
158
+ return pulumi.get(self, "connection_drain_config")
159
+
160
+ @connection_drain_config.setter
161
+ def connection_drain_config(self, value: Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']]):
162
+ pulumi.set(self, "connection_drain_config", value)
163
+
164
+ @property
165
+ @pulumi.getter(name="crossZoneEnabled")
166
+ def cross_zone_enabled(self) -> Optional[pulumi.Input[bool]]:
167
+ """
168
+ Indicates whether cross-zone load balancing is enabled for the server group. Valid values:
169
+ """
170
+ return pulumi.get(self, "cross_zone_enabled")
171
+
172
+ @cross_zone_enabled.setter
173
+ def cross_zone_enabled(self, value: Optional[pulumi.Input[bool]]):
174
+ pulumi.set(self, "cross_zone_enabled", value)
175
+
97
176
  @property
98
177
  @pulumi.getter(name="dryRun")
99
178
  def dry_run(self) -> Optional[pulumi.Input[bool]]:
100
179
  """
101
- The dry run.
180
+ Whether to PreCheck only this request. Value:
181
+ true: Send a check request,
182
+ false (default): Send a normal request.
102
183
  """
103
184
  return pulumi.get(self, "dry_run")
104
185
 
@@ -106,11 +187,45 @@ class ServerGroupArgs:
106
187
  def dry_run(self, value: Optional[pulumi.Input[bool]]):
107
188
  pulumi.set(self, "dry_run", value)
108
189
 
190
+ @property
191
+ @pulumi.getter(name="healthCheckTemplateId")
192
+ def health_check_template_id(self) -> Optional[pulumi.Input[str]]:
193
+ """
194
+ The ID of the resource group to which you want to transfer the cloud resource.
195
+
196
+ > **NOTE:** You can use resource groups to manage resources within your Alibaba Cloud account by group. This helps you resolve issues such as resource grouping and permission management for your Alibaba Cloud account. For more information, see [What is resource management?](https://www.alibabacloud.com/help/en/doc-detail/94475.html)
197
+ """
198
+ return pulumi.get(self, "health_check_template_id")
199
+
200
+ @health_check_template_id.setter
201
+ def health_check_template_id(self, value: Optional[pulumi.Input[str]]):
202
+ pulumi.set(self, "health_check_template_id", value)
203
+
204
+ @property
205
+ @pulumi.getter(name="ipv6Enabled")
206
+ def ipv6_enabled(self) -> Optional[pulumi.Input[bool]]:
207
+ """
208
+ Enable Ipv6
209
+ """
210
+ return pulumi.get(self, "ipv6_enabled")
211
+
212
+ @ipv6_enabled.setter
213
+ def ipv6_enabled(self, value: Optional[pulumi.Input[bool]]):
214
+ pulumi.set(self, "ipv6_enabled", value)
215
+
109
216
  @property
110
217
  @pulumi.getter
111
218
  def protocol(self) -> Optional[pulumi.Input[str]]:
112
219
  """
113
- The server protocol. Valid values: ` HTTP`, `HTTPS`, `gRPC`. While `server_group_type` is `Fc` this parameter will not take effect. From version 1.215.0, `protocol` can be set to `gRPC`.
220
+ The backend protocol. Valid values:
221
+
222
+ * `HTTP`: allows you to associate an HTTPS, HTTP, or QUIC listener with the server group. This is the default value.
223
+
224
+ * `HTTPS`: allows you to associate HTTPS listeners with backend servers.
225
+
226
+ * `gRPC`: allows you to associate an HTTPS or QUIC listener with the server group.
227
+
228
+ > **NOTE:** You do not need to specify a backend protocol if you set `ServerGroupType` to `Fc`.
114
229
  """
115
230
  return pulumi.get(self, "protocol")
116
231
 
@@ -122,7 +237,7 @@ class ServerGroupArgs:
122
237
  @pulumi.getter(name="resourceGroupId")
123
238
  def resource_group_id(self) -> Optional[pulumi.Input[str]]:
124
239
  """
125
- The ID of the resource group.
240
+ Elegant interrupt configuration.
126
241
  """
127
242
  return pulumi.get(self, "resource_group_id")
128
243
 
@@ -134,7 +249,15 @@ class ServerGroupArgs:
134
249
  @pulumi.getter
135
250
  def scheduler(self) -> Optional[pulumi.Input[str]]:
136
251
  """
137
- The scheduling algorithm. Valid values: ` Sch`, ` Wlc`, `Wrr`. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
252
+ The scheduling algorithm. Valid values:
253
+
254
+ * `Wrr` (default): The weighted round-robin algorithm is used. Backend servers that have higher weights receive more requests than those that have lower weights.
255
+
256
+ * `Wlc`: The weighted least connections algorithm is used. Requests are distributed based on the weights and the number of connections to backend servers. If two backend servers have the same weight, the backend server that has fewer connections is expected to receive more requests.
257
+
258
+ * `Sch`: The consistent hashing algorithm is used. Requests from the same source IP address are distributed to the same backend server.
259
+
260
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
138
261
  """
139
262
  return pulumi.get(self, "scheduler")
140
263
 
@@ -146,8 +269,9 @@ class ServerGroupArgs:
146
269
  @pulumi.getter(name="serverGroupType")
147
270
  def server_group_type(self) -> Optional[pulumi.Input[str]]:
148
271
  """
149
- The type of the server group. Default value: `Instance`. Valid values:
150
- - `Instance`: allows you add servers by specifying Ecs, Ens, or Eci.
272
+ The type of server group. Valid values:
273
+
274
+ - `Instance` (default): allows you to add servers by specifying `Ecs`, `Eni`, or `Eci`.
151
275
  - `Ip`: allows you to add servers by specifying IP addresses.
152
276
  - `Fc`: allows you to add servers by specifying functions of Function Compute.
153
277
  """
@@ -161,7 +285,7 @@ class ServerGroupArgs:
161
285
  @pulumi.getter
162
286
  def servers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]]:
163
287
  """
164
- The backend servers. See `servers` below.
288
+ List of servers. See `servers` below.
165
289
  """
166
290
  return pulumi.get(self, "servers")
167
291
 
@@ -169,11 +293,35 @@ class ServerGroupArgs:
169
293
  def servers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]]):
170
294
  pulumi.set(self, "servers", value)
171
295
 
296
+ @property
297
+ @pulumi.getter(name="serviceName")
298
+ def service_name(self) -> Optional[pulumi.Input[str]]:
299
+ """
300
+ Only applicable to the ALB Ingress scenario, indicating the K8s Service name corresponding to the server group.
301
+ """
302
+ return pulumi.get(self, "service_name")
303
+
304
+ @service_name.setter
305
+ def service_name(self, value: Optional[pulumi.Input[str]]):
306
+ pulumi.set(self, "service_name", value)
307
+
308
+ @property
309
+ @pulumi.getter(name="slowStartConfig")
310
+ def slow_start_config(self) -> Optional[pulumi.Input['ServerGroupSlowStartConfigArgs']]:
311
+ """
312
+ Slow start configuration. See `slow_start_config` below.
313
+ """
314
+ return pulumi.get(self, "slow_start_config")
315
+
316
+ @slow_start_config.setter
317
+ def slow_start_config(self, value: Optional[pulumi.Input['ServerGroupSlowStartConfigArgs']]):
318
+ pulumi.set(self, "slow_start_config", value)
319
+
172
320
  @property
173
321
  @pulumi.getter(name="stickySessionConfig")
174
322
  def sticky_session_config(self) -> Optional[pulumi.Input['ServerGroupStickySessionConfigArgs']]:
175
323
  """
176
- The configuration of session persistence. See `sticky_session_config` below.
324
+ The configuration of health checks See `sticky_session_config` below.
177
325
  """
178
326
  return pulumi.get(self, "sticky_session_config")
179
327
 
@@ -185,7 +333,7 @@ class ServerGroupArgs:
185
333
  @pulumi.getter
186
334
  def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
187
335
  """
188
- A mapping of tags to assign to the resource.
336
+ The creation time of the resource
189
337
  """
190
338
  return pulumi.get(self, "tags")
191
339
 
@@ -193,11 +341,37 @@ class ServerGroupArgs:
193
341
  def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
194
342
  pulumi.set(self, "tags", value)
195
343
 
344
+ @property
345
+ @pulumi.getter(name="uchConfig")
346
+ def uch_config(self) -> Optional[pulumi.Input['ServerGroupUchConfigArgs']]:
347
+ """
348
+ Url consistency hash parameter configuration See `uch_config` below.
349
+ """
350
+ return pulumi.get(self, "uch_config")
351
+
352
+ @uch_config.setter
353
+ def uch_config(self, value: Optional[pulumi.Input['ServerGroupUchConfigArgs']]):
354
+ pulumi.set(self, "uch_config", value)
355
+
356
+ @property
357
+ @pulumi.getter(name="upstreamKeepaliveEnabled")
358
+ def upstream_keepalive_enabled(self) -> Optional[pulumi.Input[bool]]:
359
+ """
360
+ Specifies whether to enable persistent TCP connections.
361
+ """
362
+ return pulumi.get(self, "upstream_keepalive_enabled")
363
+
364
+ @upstream_keepalive_enabled.setter
365
+ def upstream_keepalive_enabled(self, value: Optional[pulumi.Input[bool]]):
366
+ pulumi.set(self, "upstream_keepalive_enabled", value)
367
+
196
368
  @property
197
369
  @pulumi.getter(name="vpcId")
198
370
  def vpc_id(self) -> Optional[pulumi.Input[str]]:
199
371
  """
200
- The ID of the VPC that you want to access. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
372
+ The ID of the virtual private cloud (VPC). You can add only servers that are deployed in the specified VPC to the server group.
373
+
374
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
201
375
  """
202
376
  return pulumi.get(self, "vpc_id")
203
377
 
@@ -209,40 +383,91 @@ class ServerGroupArgs:
209
383
  @pulumi.input_type
210
384
  class _ServerGroupState:
211
385
  def __init__(__self__, *,
386
+ connection_drain_config: Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']] = None,
387
+ create_time: Optional[pulumi.Input[str]] = None,
388
+ cross_zone_enabled: Optional[pulumi.Input[bool]] = None,
212
389
  dry_run: Optional[pulumi.Input[bool]] = None,
213
390
  health_check_config: Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']] = None,
391
+ health_check_template_id: Optional[pulumi.Input[str]] = None,
392
+ ipv6_enabled: Optional[pulumi.Input[bool]] = None,
214
393
  protocol: Optional[pulumi.Input[str]] = None,
215
394
  resource_group_id: Optional[pulumi.Input[str]] = None,
216
395
  scheduler: Optional[pulumi.Input[str]] = None,
217
396
  server_group_name: Optional[pulumi.Input[str]] = None,
218
397
  server_group_type: Optional[pulumi.Input[str]] = None,
219
398
  servers: Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]] = None,
399
+ service_name: Optional[pulumi.Input[str]] = None,
400
+ slow_start_config: Optional[pulumi.Input['ServerGroupSlowStartConfigArgs']] = None,
220
401
  status: Optional[pulumi.Input[str]] = None,
221
402
  sticky_session_config: Optional[pulumi.Input['ServerGroupStickySessionConfigArgs']] = None,
222
403
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
404
+ uch_config: Optional[pulumi.Input['ServerGroupUchConfigArgs']] = None,
405
+ upstream_keepalive_enabled: Optional[pulumi.Input[bool]] = None,
223
406
  vpc_id: Optional[pulumi.Input[str]] = None):
224
407
  """
225
408
  Input properties used for looking up and filtering ServerGroup resources.
226
- :param pulumi.Input[bool] dry_run: The dry run.
227
- :param pulumi.Input['ServerGroupHealthCheckConfigArgs'] health_check_config: The configuration of health checks. See `health_check_config` below.
228
- :param pulumi.Input[str] protocol: The server protocol. Valid values: ` HTTP`, `HTTPS`, `gRPC`. While `server_group_type` is `Fc` this parameter will not take effect. From version 1.215.0, `protocol` can be set to `gRPC`.
229
- :param pulumi.Input[str] resource_group_id: The ID of the resource group.
230
- :param pulumi.Input[str] scheduler: The scheduling algorithm. Valid values: ` Sch`, ` Wlc`, `Wrr`. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
231
- :param pulumi.Input[str] server_group_name: The name of the server group.
232
- :param pulumi.Input[str] server_group_type: The type of the server group. Default value: `Instance`. Valid values:
233
- - `Instance`: allows you add servers by specifying Ecs, Ens, or Eci.
409
+ :param pulumi.Input['ServerGroupConnectionDrainConfigArgs'] connection_drain_config: Elegant interrupt configuration. See `connection_drain_config` below.
410
+ :param pulumi.Input[str] create_time: The creation time of the resource
411
+ :param pulumi.Input[bool] cross_zone_enabled: Indicates whether cross-zone load balancing is enabled for the server group. Valid values:
412
+ :param pulumi.Input[bool] dry_run: Whether to PreCheck only this request. Value:
413
+ true: Send a check request,
414
+ false (default): Send a normal request.
415
+ :param pulumi.Input['ServerGroupHealthCheckConfigArgs'] health_check_config: The configuration of health checks See `health_check_config` below.
416
+ :param pulumi.Input[str] health_check_template_id: The ID of the resource group to which you want to transfer the cloud resource.
417
+
418
+ > **NOTE:** You can use resource groups to manage resources within your Alibaba Cloud account by group. This helps you resolve issues such as resource grouping and permission management for your Alibaba Cloud account. For more information, see [What is resource management?](https://www.alibabacloud.com/help/en/doc-detail/94475.html)
419
+ :param pulumi.Input[bool] ipv6_enabled: Enable Ipv6
420
+ :param pulumi.Input[str] protocol: The backend protocol. Valid values:
421
+
422
+ * `HTTP`: allows you to associate an HTTPS, HTTP, or QUIC listener with the server group. This is the default value.
423
+
424
+ * `HTTPS`: allows you to associate HTTPS listeners with backend servers.
425
+
426
+ * `gRPC`: allows you to associate an HTTPS or QUIC listener with the server group.
427
+
428
+ > **NOTE:** You do not need to specify a backend protocol if you set `ServerGroupType` to `Fc`.
429
+ :param pulumi.Input[str] resource_group_id: Elegant interrupt configuration.
430
+ :param pulumi.Input[str] scheduler: The scheduling algorithm. Valid values:
431
+
432
+ * `Wrr` (default): The weighted round-robin algorithm is used. Backend servers that have higher weights receive more requests than those that have lower weights.
433
+
434
+ * `Wlc`: The weighted least connections algorithm is used. Requests are distributed based on the weights and the number of connections to backend servers. If two backend servers have the same weight, the backend server that has fewer connections is expected to receive more requests.
435
+
436
+ * `Sch`: The consistent hashing algorithm is used. Requests from the same source IP address are distributed to the same backend server.
437
+
438
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
439
+ :param pulumi.Input[str] server_group_name: The name of the server group. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (\\_), and hyphens (-). The name must start with a letter.
440
+ :param pulumi.Input[str] server_group_type: The type of server group. Valid values:
441
+
442
+ - `Instance` (default): allows you to add servers by specifying `Ecs`, `Eni`, or `Eci`.
234
443
  - `Ip`: allows you to add servers by specifying IP addresses.
235
444
  - `Fc`: allows you to add servers by specifying functions of Function Compute.
236
- :param pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]] servers: The backend servers. See `servers` below.
237
- :param pulumi.Input[str] status: The status of the backend server.
238
- :param pulumi.Input['ServerGroupStickySessionConfigArgs'] sticky_session_config: The configuration of session persistence. See `sticky_session_config` below.
239
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource.
240
- :param pulumi.Input[str] vpc_id: The ID of the VPC that you want to access. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
241
- """
445
+ :param pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]] servers: List of servers. See `servers` below.
446
+ :param pulumi.Input[str] service_name: Only applicable to the ALB Ingress scenario, indicating the K8s Service name corresponding to the server group.
447
+ :param pulumi.Input['ServerGroupSlowStartConfigArgs'] slow_start_config: Slow start configuration. See `slow_start_config` below.
448
+ :param pulumi.Input[str] status: The status of the resource
449
+ :param pulumi.Input['ServerGroupStickySessionConfigArgs'] sticky_session_config: The configuration of health checks See `sticky_session_config` below.
450
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: The creation time of the resource
451
+ :param pulumi.Input['ServerGroupUchConfigArgs'] uch_config: Url consistency hash parameter configuration See `uch_config` below.
452
+ :param pulumi.Input[bool] upstream_keepalive_enabled: Specifies whether to enable persistent TCP connections.
453
+ :param pulumi.Input[str] vpc_id: The ID of the virtual private cloud (VPC). You can add only servers that are deployed in the specified VPC to the server group.
454
+
455
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
456
+ """
457
+ if connection_drain_config is not None:
458
+ pulumi.set(__self__, "connection_drain_config", connection_drain_config)
459
+ if create_time is not None:
460
+ pulumi.set(__self__, "create_time", create_time)
461
+ if cross_zone_enabled is not None:
462
+ pulumi.set(__self__, "cross_zone_enabled", cross_zone_enabled)
242
463
  if dry_run is not None:
243
464
  pulumi.set(__self__, "dry_run", dry_run)
244
465
  if health_check_config is not None:
245
466
  pulumi.set(__self__, "health_check_config", health_check_config)
467
+ if health_check_template_id is not None:
468
+ pulumi.set(__self__, "health_check_template_id", health_check_template_id)
469
+ if ipv6_enabled is not None:
470
+ pulumi.set(__self__, "ipv6_enabled", ipv6_enabled)
246
471
  if protocol is not None:
247
472
  pulumi.set(__self__, "protocol", protocol)
248
473
  if resource_group_id is not None:
@@ -255,20 +480,66 @@ class _ServerGroupState:
255
480
  pulumi.set(__self__, "server_group_type", server_group_type)
256
481
  if servers is not None:
257
482
  pulumi.set(__self__, "servers", servers)
483
+ if service_name is not None:
484
+ pulumi.set(__self__, "service_name", service_name)
485
+ if slow_start_config is not None:
486
+ pulumi.set(__self__, "slow_start_config", slow_start_config)
258
487
  if status is not None:
259
488
  pulumi.set(__self__, "status", status)
260
489
  if sticky_session_config is not None:
261
490
  pulumi.set(__self__, "sticky_session_config", sticky_session_config)
262
491
  if tags is not None:
263
492
  pulumi.set(__self__, "tags", tags)
493
+ if uch_config is not None:
494
+ pulumi.set(__self__, "uch_config", uch_config)
495
+ if upstream_keepalive_enabled is not None:
496
+ pulumi.set(__self__, "upstream_keepalive_enabled", upstream_keepalive_enabled)
264
497
  if vpc_id is not None:
265
498
  pulumi.set(__self__, "vpc_id", vpc_id)
266
499
 
500
+ @property
501
+ @pulumi.getter(name="connectionDrainConfig")
502
+ def connection_drain_config(self) -> Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']]:
503
+ """
504
+ Elegant interrupt configuration. See `connection_drain_config` below.
505
+ """
506
+ return pulumi.get(self, "connection_drain_config")
507
+
508
+ @connection_drain_config.setter
509
+ def connection_drain_config(self, value: Optional[pulumi.Input['ServerGroupConnectionDrainConfigArgs']]):
510
+ pulumi.set(self, "connection_drain_config", value)
511
+
512
+ @property
513
+ @pulumi.getter(name="createTime")
514
+ def create_time(self) -> Optional[pulumi.Input[str]]:
515
+ """
516
+ The creation time of the resource
517
+ """
518
+ return pulumi.get(self, "create_time")
519
+
520
+ @create_time.setter
521
+ def create_time(self, value: Optional[pulumi.Input[str]]):
522
+ pulumi.set(self, "create_time", value)
523
+
524
+ @property
525
+ @pulumi.getter(name="crossZoneEnabled")
526
+ def cross_zone_enabled(self) -> Optional[pulumi.Input[bool]]:
527
+ """
528
+ Indicates whether cross-zone load balancing is enabled for the server group. Valid values:
529
+ """
530
+ return pulumi.get(self, "cross_zone_enabled")
531
+
532
+ @cross_zone_enabled.setter
533
+ def cross_zone_enabled(self, value: Optional[pulumi.Input[bool]]):
534
+ pulumi.set(self, "cross_zone_enabled", value)
535
+
267
536
  @property
268
537
  @pulumi.getter(name="dryRun")
269
538
  def dry_run(self) -> Optional[pulumi.Input[bool]]:
270
539
  """
271
- The dry run.
540
+ Whether to PreCheck only this request. Value:
541
+ true: Send a check request,
542
+ false (default): Send a normal request.
272
543
  """
273
544
  return pulumi.get(self, "dry_run")
274
545
 
@@ -280,7 +551,7 @@ class _ServerGroupState:
280
551
  @pulumi.getter(name="healthCheckConfig")
281
552
  def health_check_config(self) -> Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']]:
282
553
  """
283
- The configuration of health checks. See `health_check_config` below.
554
+ The configuration of health checks See `health_check_config` below.
284
555
  """
285
556
  return pulumi.get(self, "health_check_config")
286
557
 
@@ -288,11 +559,45 @@ class _ServerGroupState:
288
559
  def health_check_config(self, value: Optional[pulumi.Input['ServerGroupHealthCheckConfigArgs']]):
289
560
  pulumi.set(self, "health_check_config", value)
290
561
 
562
+ @property
563
+ @pulumi.getter(name="healthCheckTemplateId")
564
+ def health_check_template_id(self) -> Optional[pulumi.Input[str]]:
565
+ """
566
+ The ID of the resource group to which you want to transfer the cloud resource.
567
+
568
+ > **NOTE:** You can use resource groups to manage resources within your Alibaba Cloud account by group. This helps you resolve issues such as resource grouping and permission management for your Alibaba Cloud account. For more information, see [What is resource management?](https://www.alibabacloud.com/help/en/doc-detail/94475.html)
569
+ """
570
+ return pulumi.get(self, "health_check_template_id")
571
+
572
+ @health_check_template_id.setter
573
+ def health_check_template_id(self, value: Optional[pulumi.Input[str]]):
574
+ pulumi.set(self, "health_check_template_id", value)
575
+
576
+ @property
577
+ @pulumi.getter(name="ipv6Enabled")
578
+ def ipv6_enabled(self) -> Optional[pulumi.Input[bool]]:
579
+ """
580
+ Enable Ipv6
581
+ """
582
+ return pulumi.get(self, "ipv6_enabled")
583
+
584
+ @ipv6_enabled.setter
585
+ def ipv6_enabled(self, value: Optional[pulumi.Input[bool]]):
586
+ pulumi.set(self, "ipv6_enabled", value)
587
+
291
588
  @property
292
589
  @pulumi.getter
293
590
  def protocol(self) -> Optional[pulumi.Input[str]]:
294
591
  """
295
- The server protocol. Valid values: ` HTTP`, `HTTPS`, `gRPC`. While `server_group_type` is `Fc` this parameter will not take effect. From version 1.215.0, `protocol` can be set to `gRPC`.
592
+ The backend protocol. Valid values:
593
+
594
+ * `HTTP`: allows you to associate an HTTPS, HTTP, or QUIC listener with the server group. This is the default value.
595
+
596
+ * `HTTPS`: allows you to associate HTTPS listeners with backend servers.
597
+
598
+ * `gRPC`: allows you to associate an HTTPS or QUIC listener with the server group.
599
+
600
+ > **NOTE:** You do not need to specify a backend protocol if you set `ServerGroupType` to `Fc`.
296
601
  """
297
602
  return pulumi.get(self, "protocol")
298
603
 
@@ -304,7 +609,7 @@ class _ServerGroupState:
304
609
  @pulumi.getter(name="resourceGroupId")
305
610
  def resource_group_id(self) -> Optional[pulumi.Input[str]]:
306
611
  """
307
- The ID of the resource group.
612
+ Elegant interrupt configuration.
308
613
  """
309
614
  return pulumi.get(self, "resource_group_id")
310
615
 
@@ -316,7 +621,15 @@ class _ServerGroupState:
316
621
  @pulumi.getter
317
622
  def scheduler(self) -> Optional[pulumi.Input[str]]:
318
623
  """
319
- The scheduling algorithm. Valid values: ` Sch`, ` Wlc`, `Wrr`. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
624
+ The scheduling algorithm. Valid values:
625
+
626
+ * `Wrr` (default): The weighted round-robin algorithm is used. Backend servers that have higher weights receive more requests than those that have lower weights.
627
+
628
+ * `Wlc`: The weighted least connections algorithm is used. Requests are distributed based on the weights and the number of connections to backend servers. If two backend servers have the same weight, the backend server that has fewer connections is expected to receive more requests.
629
+
630
+ * `Sch`: The consistent hashing algorithm is used. Requests from the same source IP address are distributed to the same backend server.
631
+
632
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
320
633
  """
321
634
  return pulumi.get(self, "scheduler")
322
635
 
@@ -328,7 +641,7 @@ class _ServerGroupState:
328
641
  @pulumi.getter(name="serverGroupName")
329
642
  def server_group_name(self) -> Optional[pulumi.Input[str]]:
330
643
  """
331
- The name of the server group.
644
+ The name of the server group. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (\\_), and hyphens (-). The name must start with a letter.
332
645
  """
333
646
  return pulumi.get(self, "server_group_name")
334
647
 
@@ -340,8 +653,9 @@ class _ServerGroupState:
340
653
  @pulumi.getter(name="serverGroupType")
341
654
  def server_group_type(self) -> Optional[pulumi.Input[str]]:
342
655
  """
343
- The type of the server group. Default value: `Instance`. Valid values:
344
- - `Instance`: allows you add servers by specifying Ecs, Ens, or Eci.
656
+ The type of server group. Valid values:
657
+
658
+ - `Instance` (default): allows you to add servers by specifying `Ecs`, `Eni`, or `Eci`.
345
659
  - `Ip`: allows you to add servers by specifying IP addresses.
346
660
  - `Fc`: allows you to add servers by specifying functions of Function Compute.
347
661
  """
@@ -355,7 +669,7 @@ class _ServerGroupState:
355
669
  @pulumi.getter
356
670
  def servers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]]:
357
671
  """
358
- The backend servers. See `servers` below.
672
+ List of servers. See `servers` below.
359
673
  """
360
674
  return pulumi.get(self, "servers")
361
675
 
@@ -363,11 +677,35 @@ class _ServerGroupState:
363
677
  def servers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServerGroupServerArgs']]]]):
364
678
  pulumi.set(self, "servers", value)
365
679
 
680
+ @property
681
+ @pulumi.getter(name="serviceName")
682
+ def service_name(self) -> Optional[pulumi.Input[str]]:
683
+ """
684
+ Only applicable to the ALB Ingress scenario, indicating the K8s Service name corresponding to the server group.
685
+ """
686
+ return pulumi.get(self, "service_name")
687
+
688
+ @service_name.setter
689
+ def service_name(self, value: Optional[pulumi.Input[str]]):
690
+ pulumi.set(self, "service_name", value)
691
+
692
+ @property
693
+ @pulumi.getter(name="slowStartConfig")
694
+ def slow_start_config(self) -> Optional[pulumi.Input['ServerGroupSlowStartConfigArgs']]:
695
+ """
696
+ Slow start configuration. See `slow_start_config` below.
697
+ """
698
+ return pulumi.get(self, "slow_start_config")
699
+
700
+ @slow_start_config.setter
701
+ def slow_start_config(self, value: Optional[pulumi.Input['ServerGroupSlowStartConfigArgs']]):
702
+ pulumi.set(self, "slow_start_config", value)
703
+
366
704
  @property
367
705
  @pulumi.getter
368
706
  def status(self) -> Optional[pulumi.Input[str]]:
369
707
  """
370
- The status of the backend server.
708
+ The status of the resource
371
709
  """
372
710
  return pulumi.get(self, "status")
373
711
 
@@ -379,7 +717,7 @@ class _ServerGroupState:
379
717
  @pulumi.getter(name="stickySessionConfig")
380
718
  def sticky_session_config(self) -> Optional[pulumi.Input['ServerGroupStickySessionConfigArgs']]:
381
719
  """
382
- The configuration of session persistence. See `sticky_session_config` below.
720
+ The configuration of health checks See `sticky_session_config` below.
383
721
  """
384
722
  return pulumi.get(self, "sticky_session_config")
385
723
 
@@ -391,7 +729,7 @@ class _ServerGroupState:
391
729
  @pulumi.getter
392
730
  def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
393
731
  """
394
- A mapping of tags to assign to the resource.
732
+ The creation time of the resource
395
733
  """
396
734
  return pulumi.get(self, "tags")
397
735
 
@@ -399,11 +737,37 @@ class _ServerGroupState:
399
737
  def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
400
738
  pulumi.set(self, "tags", value)
401
739
 
740
+ @property
741
+ @pulumi.getter(name="uchConfig")
742
+ def uch_config(self) -> Optional[pulumi.Input['ServerGroupUchConfigArgs']]:
743
+ """
744
+ Url consistency hash parameter configuration See `uch_config` below.
745
+ """
746
+ return pulumi.get(self, "uch_config")
747
+
748
+ @uch_config.setter
749
+ def uch_config(self, value: Optional[pulumi.Input['ServerGroupUchConfigArgs']]):
750
+ pulumi.set(self, "uch_config", value)
751
+
752
+ @property
753
+ @pulumi.getter(name="upstreamKeepaliveEnabled")
754
+ def upstream_keepalive_enabled(self) -> Optional[pulumi.Input[bool]]:
755
+ """
756
+ Specifies whether to enable persistent TCP connections.
757
+ """
758
+ return pulumi.get(self, "upstream_keepalive_enabled")
759
+
760
+ @upstream_keepalive_enabled.setter
761
+ def upstream_keepalive_enabled(self, value: Optional[pulumi.Input[bool]]):
762
+ pulumi.set(self, "upstream_keepalive_enabled", value)
763
+
402
764
  @property
403
765
  @pulumi.getter(name="vpcId")
404
766
  def vpc_id(self) -> Optional[pulumi.Input[str]]:
405
767
  """
406
- The ID of the VPC that you want to access. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
768
+ The ID of the virtual private cloud (VPC). You can add only servers that are deployed in the specified VPC to the server group.
769
+
770
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
407
771
  """
408
772
  return pulumi.get(self, "vpc_id")
409
773
 
@@ -417,22 +781,30 @@ class ServerGroup(pulumi.CustomResource):
417
781
  def __init__(__self__,
418
782
  resource_name: str,
419
783
  opts: Optional[pulumi.ResourceOptions] = None,
784
+ connection_drain_config: Optional[pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']]] = None,
785
+ cross_zone_enabled: Optional[pulumi.Input[bool]] = None,
420
786
  dry_run: Optional[pulumi.Input[bool]] = None,
421
787
  health_check_config: Optional[pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']]] = None,
788
+ health_check_template_id: Optional[pulumi.Input[str]] = None,
789
+ ipv6_enabled: Optional[pulumi.Input[bool]] = None,
422
790
  protocol: Optional[pulumi.Input[str]] = None,
423
791
  resource_group_id: Optional[pulumi.Input[str]] = None,
424
792
  scheduler: Optional[pulumi.Input[str]] = None,
425
793
  server_group_name: Optional[pulumi.Input[str]] = None,
426
794
  server_group_type: Optional[pulumi.Input[str]] = None,
427
795
  servers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]]] = None,
796
+ service_name: Optional[pulumi.Input[str]] = None,
797
+ slow_start_config: Optional[pulumi.Input[Union['ServerGroupSlowStartConfigArgs', 'ServerGroupSlowStartConfigArgsDict']]] = None,
428
798
  sticky_session_config: Optional[pulumi.Input[Union['ServerGroupStickySessionConfigArgs', 'ServerGroupStickySessionConfigArgsDict']]] = None,
429
799
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
800
+ uch_config: Optional[pulumi.Input[Union['ServerGroupUchConfigArgs', 'ServerGroupUchConfigArgsDict']]] = None,
801
+ upstream_keepalive_enabled: Optional[pulumi.Input[bool]] = None,
430
802
  vpc_id: Optional[pulumi.Input[str]] = None,
431
803
  __props__=None):
432
804
  """
433
- Provides an ALB Server Group resource.
805
+ Provides a Application Load Balancer (ALB) Server Group resource.
434
806
 
435
- For information about ALB Server Group and how to use it, see [What is Server Group](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createservergroup).
807
+ For information about Application Load Balancer (ALB) Server Group and how to use it, see [What is Server Group](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createservergroup).
436
808
 
437
809
  > **NOTE:** Available since v1.131.0.
438
810
 
@@ -517,7 +889,7 @@ class ServerGroup(pulumi.CustomResource):
517
889
 
518
890
  ## Import
519
891
 
520
- ALB Server Group can be imported using the id, e.g.
892
+ Application Load Balancer (ALB) Server Group can be imported using the id, e.g.
521
893
 
522
894
  ```sh
523
895
  $ pulumi import alicloud:alb/serverGroup:ServerGroup example <id>
@@ -525,20 +897,51 @@ class ServerGroup(pulumi.CustomResource):
525
897
 
526
898
  :param str resource_name: The name of the resource.
527
899
  :param pulumi.ResourceOptions opts: Options for the resource.
528
- :param pulumi.Input[bool] dry_run: The dry run.
529
- :param pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']] health_check_config: The configuration of health checks. See `health_check_config` below.
530
- :param pulumi.Input[str] protocol: The server protocol. Valid values: ` HTTP`, `HTTPS`, `gRPC`. While `server_group_type` is `Fc` this parameter will not take effect. From version 1.215.0, `protocol` can be set to `gRPC`.
531
- :param pulumi.Input[str] resource_group_id: The ID of the resource group.
532
- :param pulumi.Input[str] scheduler: The scheduling algorithm. Valid values: ` Sch`, ` Wlc`, `Wrr`. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
533
- :param pulumi.Input[str] server_group_name: The name of the server group.
534
- :param pulumi.Input[str] server_group_type: The type of the server group. Default value: `Instance`. Valid values:
535
- - `Instance`: allows you add servers by specifying Ecs, Ens, or Eci.
900
+ :param pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']] connection_drain_config: Elegant interrupt configuration. See `connection_drain_config` below.
901
+ :param pulumi.Input[bool] cross_zone_enabled: Indicates whether cross-zone load balancing is enabled for the server group. Valid values:
902
+ :param pulumi.Input[bool] dry_run: Whether to PreCheck only this request. Value:
903
+ true: Send a check request,
904
+ false (default): Send a normal request.
905
+ :param pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']] health_check_config: The configuration of health checks See `health_check_config` below.
906
+ :param pulumi.Input[str] health_check_template_id: The ID of the resource group to which you want to transfer the cloud resource.
907
+
908
+ > **NOTE:** You can use resource groups to manage resources within your Alibaba Cloud account by group. This helps you resolve issues such as resource grouping and permission management for your Alibaba Cloud account. For more information, see [What is resource management?](https://www.alibabacloud.com/help/en/doc-detail/94475.html)
909
+ :param pulumi.Input[bool] ipv6_enabled: Enable Ipv6
910
+ :param pulumi.Input[str] protocol: The backend protocol. Valid values:
911
+
912
+ * `HTTP`: allows you to associate an HTTPS, HTTP, or QUIC listener with the server group. This is the default value.
913
+
914
+ * `HTTPS`: allows you to associate HTTPS listeners with backend servers.
915
+
916
+ * `gRPC`: allows you to associate an HTTPS or QUIC listener with the server group.
917
+
918
+ > **NOTE:** You do not need to specify a backend protocol if you set `ServerGroupType` to `Fc`.
919
+ :param pulumi.Input[str] resource_group_id: Elegant interrupt configuration.
920
+ :param pulumi.Input[str] scheduler: The scheduling algorithm. Valid values:
921
+
922
+ * `Wrr` (default): The weighted round-robin algorithm is used. Backend servers that have higher weights receive more requests than those that have lower weights.
923
+
924
+ * `Wlc`: The weighted least connections algorithm is used. Requests are distributed based on the weights and the number of connections to backend servers. If two backend servers have the same weight, the backend server that has fewer connections is expected to receive more requests.
925
+
926
+ * `Sch`: The consistent hashing algorithm is used. Requests from the same source IP address are distributed to the same backend server.
927
+
928
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
929
+ :param pulumi.Input[str] server_group_name: The name of the server group. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (\\_), and hyphens (-). The name must start with a letter.
930
+ :param pulumi.Input[str] server_group_type: The type of server group. Valid values:
931
+
932
+ - `Instance` (default): allows you to add servers by specifying `Ecs`, `Eni`, or `Eci`.
536
933
  - `Ip`: allows you to add servers by specifying IP addresses.
537
934
  - `Fc`: allows you to add servers by specifying functions of Function Compute.
538
- :param pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]] servers: The backend servers. See `servers` below.
539
- :param pulumi.Input[Union['ServerGroupStickySessionConfigArgs', 'ServerGroupStickySessionConfigArgsDict']] sticky_session_config: The configuration of session persistence. See `sticky_session_config` below.
540
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource.
541
- :param pulumi.Input[str] vpc_id: The ID of the VPC that you want to access. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
935
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]] servers: List of servers. See `servers` below.
936
+ :param pulumi.Input[str] service_name: Only applicable to the ALB Ingress scenario, indicating the K8s Service name corresponding to the server group.
937
+ :param pulumi.Input[Union['ServerGroupSlowStartConfigArgs', 'ServerGroupSlowStartConfigArgsDict']] slow_start_config: Slow start configuration. See `slow_start_config` below.
938
+ :param pulumi.Input[Union['ServerGroupStickySessionConfigArgs', 'ServerGroupStickySessionConfigArgsDict']] sticky_session_config: The configuration of health checks See `sticky_session_config` below.
939
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: The creation time of the resource
940
+ :param pulumi.Input[Union['ServerGroupUchConfigArgs', 'ServerGroupUchConfigArgsDict']] uch_config: Url consistency hash parameter configuration See `uch_config` below.
941
+ :param pulumi.Input[bool] upstream_keepalive_enabled: Specifies whether to enable persistent TCP connections.
942
+ :param pulumi.Input[str] vpc_id: The ID of the virtual private cloud (VPC). You can add only servers that are deployed in the specified VPC to the server group.
943
+
944
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
542
945
  """
543
946
  ...
544
947
  @overload
@@ -547,9 +950,9 @@ class ServerGroup(pulumi.CustomResource):
547
950
  args: ServerGroupArgs,
548
951
  opts: Optional[pulumi.ResourceOptions] = None):
549
952
  """
550
- Provides an ALB Server Group resource.
953
+ Provides a Application Load Balancer (ALB) Server Group resource.
551
954
 
552
- For information about ALB Server Group and how to use it, see [What is Server Group](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createservergroup).
955
+ For information about Application Load Balancer (ALB) Server Group and how to use it, see [What is Server Group](https://www.alibabacloud.com/help/en/slb/application-load-balancer/developer-reference/api-alb-2020-06-16-createservergroup).
553
956
 
554
957
  > **NOTE:** Available since v1.131.0.
555
958
 
@@ -634,7 +1037,7 @@ class ServerGroup(pulumi.CustomResource):
634
1037
 
635
1038
  ## Import
636
1039
 
637
- ALB Server Group can be imported using the id, e.g.
1040
+ Application Load Balancer (ALB) Server Group can be imported using the id, e.g.
638
1041
 
639
1042
  ```sh
640
1043
  $ pulumi import alicloud:alb/serverGroup:ServerGroup example <id>
@@ -655,16 +1058,24 @@ class ServerGroup(pulumi.CustomResource):
655
1058
  def _internal_init(__self__,
656
1059
  resource_name: str,
657
1060
  opts: Optional[pulumi.ResourceOptions] = None,
1061
+ connection_drain_config: Optional[pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']]] = None,
1062
+ cross_zone_enabled: Optional[pulumi.Input[bool]] = None,
658
1063
  dry_run: Optional[pulumi.Input[bool]] = None,
659
1064
  health_check_config: Optional[pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']]] = None,
1065
+ health_check_template_id: Optional[pulumi.Input[str]] = None,
1066
+ ipv6_enabled: Optional[pulumi.Input[bool]] = None,
660
1067
  protocol: Optional[pulumi.Input[str]] = None,
661
1068
  resource_group_id: Optional[pulumi.Input[str]] = None,
662
1069
  scheduler: Optional[pulumi.Input[str]] = None,
663
1070
  server_group_name: Optional[pulumi.Input[str]] = None,
664
1071
  server_group_type: Optional[pulumi.Input[str]] = None,
665
1072
  servers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]]] = None,
1073
+ service_name: Optional[pulumi.Input[str]] = None,
1074
+ slow_start_config: Optional[pulumi.Input[Union['ServerGroupSlowStartConfigArgs', 'ServerGroupSlowStartConfigArgsDict']]] = None,
666
1075
  sticky_session_config: Optional[pulumi.Input[Union['ServerGroupStickySessionConfigArgs', 'ServerGroupStickySessionConfigArgsDict']]] = None,
667
1076
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1077
+ uch_config: Optional[pulumi.Input[Union['ServerGroupUchConfigArgs', 'ServerGroupUchConfigArgsDict']]] = None,
1078
+ upstream_keepalive_enabled: Optional[pulumi.Input[bool]] = None,
668
1079
  vpc_id: Optional[pulumi.Input[str]] = None,
669
1080
  __props__=None):
670
1081
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -675,10 +1086,14 @@ class ServerGroup(pulumi.CustomResource):
675
1086
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
676
1087
  __props__ = ServerGroupArgs.__new__(ServerGroupArgs)
677
1088
 
1089
+ __props__.__dict__["connection_drain_config"] = connection_drain_config
1090
+ __props__.__dict__["cross_zone_enabled"] = cross_zone_enabled
678
1091
  __props__.__dict__["dry_run"] = dry_run
679
1092
  if health_check_config is None and not opts.urn:
680
1093
  raise TypeError("Missing required property 'health_check_config'")
681
1094
  __props__.__dict__["health_check_config"] = health_check_config
1095
+ __props__.__dict__["health_check_template_id"] = health_check_template_id
1096
+ __props__.__dict__["ipv6_enabled"] = ipv6_enabled
682
1097
  __props__.__dict__["protocol"] = protocol
683
1098
  __props__.__dict__["resource_group_id"] = resource_group_id
684
1099
  __props__.__dict__["scheduler"] = scheduler
@@ -687,9 +1102,14 @@ class ServerGroup(pulumi.CustomResource):
687
1102
  __props__.__dict__["server_group_name"] = server_group_name
688
1103
  __props__.__dict__["server_group_type"] = server_group_type
689
1104
  __props__.__dict__["servers"] = servers
1105
+ __props__.__dict__["service_name"] = service_name
1106
+ __props__.__dict__["slow_start_config"] = slow_start_config
690
1107
  __props__.__dict__["sticky_session_config"] = sticky_session_config
691
1108
  __props__.__dict__["tags"] = tags
1109
+ __props__.__dict__["uch_config"] = uch_config
1110
+ __props__.__dict__["upstream_keepalive_enabled"] = upstream_keepalive_enabled
692
1111
  __props__.__dict__["vpc_id"] = vpc_id
1112
+ __props__.__dict__["create_time"] = None
693
1113
  __props__.__dict__["status"] = None
694
1114
  super(ServerGroup, __self__).__init__(
695
1115
  'alicloud:alb/serverGroup:ServerGroup',
@@ -701,17 +1121,26 @@ class ServerGroup(pulumi.CustomResource):
701
1121
  def get(resource_name: str,
702
1122
  id: pulumi.Input[str],
703
1123
  opts: Optional[pulumi.ResourceOptions] = None,
1124
+ connection_drain_config: Optional[pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']]] = None,
1125
+ create_time: Optional[pulumi.Input[str]] = None,
1126
+ cross_zone_enabled: Optional[pulumi.Input[bool]] = None,
704
1127
  dry_run: Optional[pulumi.Input[bool]] = None,
705
1128
  health_check_config: Optional[pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']]] = None,
1129
+ health_check_template_id: Optional[pulumi.Input[str]] = None,
1130
+ ipv6_enabled: Optional[pulumi.Input[bool]] = None,
706
1131
  protocol: Optional[pulumi.Input[str]] = None,
707
1132
  resource_group_id: Optional[pulumi.Input[str]] = None,
708
1133
  scheduler: Optional[pulumi.Input[str]] = None,
709
1134
  server_group_name: Optional[pulumi.Input[str]] = None,
710
1135
  server_group_type: Optional[pulumi.Input[str]] = None,
711
1136
  servers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]]] = None,
1137
+ service_name: Optional[pulumi.Input[str]] = None,
1138
+ slow_start_config: Optional[pulumi.Input[Union['ServerGroupSlowStartConfigArgs', 'ServerGroupSlowStartConfigArgsDict']]] = None,
712
1139
  status: Optional[pulumi.Input[str]] = None,
713
1140
  sticky_session_config: Optional[pulumi.Input[Union['ServerGroupStickySessionConfigArgs', 'ServerGroupStickySessionConfigArgsDict']]] = None,
714
1141
  tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1142
+ uch_config: Optional[pulumi.Input[Union['ServerGroupUchConfigArgs', 'ServerGroupUchConfigArgsDict']]] = None,
1143
+ upstream_keepalive_enabled: Optional[pulumi.Input[bool]] = None,
715
1144
  vpc_id: Optional[pulumi.Input[str]] = None) -> 'ServerGroup':
716
1145
  """
717
1146
  Get an existing ServerGroup resource's state with the given name, id, and optional extra
@@ -720,45 +1149,112 @@ class ServerGroup(pulumi.CustomResource):
720
1149
  :param str resource_name: The unique name of the resulting resource.
721
1150
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
722
1151
  :param pulumi.ResourceOptions opts: Options for the resource.
723
- :param pulumi.Input[bool] dry_run: The dry run.
724
- :param pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']] health_check_config: The configuration of health checks. See `health_check_config` below.
725
- :param pulumi.Input[str] protocol: The server protocol. Valid values: ` HTTP`, `HTTPS`, `gRPC`. While `server_group_type` is `Fc` this parameter will not take effect. From version 1.215.0, `protocol` can be set to `gRPC`.
726
- :param pulumi.Input[str] resource_group_id: The ID of the resource group.
727
- :param pulumi.Input[str] scheduler: The scheduling algorithm. Valid values: ` Sch`, ` Wlc`, `Wrr`. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
728
- :param pulumi.Input[str] server_group_name: The name of the server group.
729
- :param pulumi.Input[str] server_group_type: The type of the server group. Default value: `Instance`. Valid values:
730
- - `Instance`: allows you add servers by specifying Ecs, Ens, or Eci.
1152
+ :param pulumi.Input[Union['ServerGroupConnectionDrainConfigArgs', 'ServerGroupConnectionDrainConfigArgsDict']] connection_drain_config: Elegant interrupt configuration. See `connection_drain_config` below.
1153
+ :param pulumi.Input[str] create_time: The creation time of the resource
1154
+ :param pulumi.Input[bool] cross_zone_enabled: Indicates whether cross-zone load balancing is enabled for the server group. Valid values:
1155
+ :param pulumi.Input[bool] dry_run: Whether to PreCheck only this request. Value:
1156
+ true: Send a check request,
1157
+ false (default): Send a normal request.
1158
+ :param pulumi.Input[Union['ServerGroupHealthCheckConfigArgs', 'ServerGroupHealthCheckConfigArgsDict']] health_check_config: The configuration of health checks See `health_check_config` below.
1159
+ :param pulumi.Input[str] health_check_template_id: The ID of the resource group to which you want to transfer the cloud resource.
1160
+
1161
+ > **NOTE:** You can use resource groups to manage resources within your Alibaba Cloud account by group. This helps you resolve issues such as resource grouping and permission management for your Alibaba Cloud account. For more information, see [What is resource management?](https://www.alibabacloud.com/help/en/doc-detail/94475.html)
1162
+ :param pulumi.Input[bool] ipv6_enabled: Enable Ipv6
1163
+ :param pulumi.Input[str] protocol: The backend protocol. Valid values:
1164
+
1165
+ * `HTTP`: allows you to associate an HTTPS, HTTP, or QUIC listener with the server group. This is the default value.
1166
+
1167
+ * `HTTPS`: allows you to associate HTTPS listeners with backend servers.
1168
+
1169
+ * `gRPC`: allows you to associate an HTTPS or QUIC listener with the server group.
1170
+
1171
+ > **NOTE:** You do not need to specify a backend protocol if you set `ServerGroupType` to `Fc`.
1172
+ :param pulumi.Input[str] resource_group_id: Elegant interrupt configuration.
1173
+ :param pulumi.Input[str] scheduler: The scheduling algorithm. Valid values:
1174
+
1175
+ * `Wrr` (default): The weighted round-robin algorithm is used. Backend servers that have higher weights receive more requests than those that have lower weights.
1176
+
1177
+ * `Wlc`: The weighted least connections algorithm is used. Requests are distributed based on the weights and the number of connections to backend servers. If two backend servers have the same weight, the backend server that has fewer connections is expected to receive more requests.
1178
+
1179
+ * `Sch`: The consistent hashing algorithm is used. Requests from the same source IP address are distributed to the same backend server.
1180
+
1181
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
1182
+ :param pulumi.Input[str] server_group_name: The name of the server group. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (\\_), and hyphens (-). The name must start with a letter.
1183
+ :param pulumi.Input[str] server_group_type: The type of server group. Valid values:
1184
+
1185
+ - `Instance` (default): allows you to add servers by specifying `Ecs`, `Eni`, or `Eci`.
731
1186
  - `Ip`: allows you to add servers by specifying IP addresses.
732
1187
  - `Fc`: allows you to add servers by specifying functions of Function Compute.
733
- :param pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]] servers: The backend servers. See `servers` below.
734
- :param pulumi.Input[str] status: The status of the backend server.
735
- :param pulumi.Input[Union['ServerGroupStickySessionConfigArgs', 'ServerGroupStickySessionConfigArgsDict']] sticky_session_config: The configuration of session persistence. See `sticky_session_config` below.
736
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: A mapping of tags to assign to the resource.
737
- :param pulumi.Input[str] vpc_id: The ID of the VPC that you want to access. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
1188
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ServerGroupServerArgs', 'ServerGroupServerArgsDict']]]] servers: List of servers. See `servers` below.
1189
+ :param pulumi.Input[str] service_name: Only applicable to the ALB Ingress scenario, indicating the K8s Service name corresponding to the server group.
1190
+ :param pulumi.Input[Union['ServerGroupSlowStartConfigArgs', 'ServerGroupSlowStartConfigArgsDict']] slow_start_config: Slow start configuration. See `slow_start_config` below.
1191
+ :param pulumi.Input[str] status: The status of the resource
1192
+ :param pulumi.Input[Union['ServerGroupStickySessionConfigArgs', 'ServerGroupStickySessionConfigArgsDict']] sticky_session_config: The configuration of health checks See `sticky_session_config` below.
1193
+ :param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: The creation time of the resource
1194
+ :param pulumi.Input[Union['ServerGroupUchConfigArgs', 'ServerGroupUchConfigArgsDict']] uch_config: Url consistency hash parameter configuration See `uch_config` below.
1195
+ :param pulumi.Input[bool] upstream_keepalive_enabled: Specifies whether to enable persistent TCP connections.
1196
+ :param pulumi.Input[str] vpc_id: The ID of the virtual private cloud (VPC). You can add only servers that are deployed in the specified VPC to the server group.
1197
+
1198
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
738
1199
  """
739
1200
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
740
1201
 
741
1202
  __props__ = _ServerGroupState.__new__(_ServerGroupState)
742
1203
 
1204
+ __props__.__dict__["connection_drain_config"] = connection_drain_config
1205
+ __props__.__dict__["create_time"] = create_time
1206
+ __props__.__dict__["cross_zone_enabled"] = cross_zone_enabled
743
1207
  __props__.__dict__["dry_run"] = dry_run
744
1208
  __props__.__dict__["health_check_config"] = health_check_config
1209
+ __props__.__dict__["health_check_template_id"] = health_check_template_id
1210
+ __props__.__dict__["ipv6_enabled"] = ipv6_enabled
745
1211
  __props__.__dict__["protocol"] = protocol
746
1212
  __props__.__dict__["resource_group_id"] = resource_group_id
747
1213
  __props__.__dict__["scheduler"] = scheduler
748
1214
  __props__.__dict__["server_group_name"] = server_group_name
749
1215
  __props__.__dict__["server_group_type"] = server_group_type
750
1216
  __props__.__dict__["servers"] = servers
1217
+ __props__.__dict__["service_name"] = service_name
1218
+ __props__.__dict__["slow_start_config"] = slow_start_config
751
1219
  __props__.__dict__["status"] = status
752
1220
  __props__.__dict__["sticky_session_config"] = sticky_session_config
753
1221
  __props__.__dict__["tags"] = tags
1222
+ __props__.__dict__["uch_config"] = uch_config
1223
+ __props__.__dict__["upstream_keepalive_enabled"] = upstream_keepalive_enabled
754
1224
  __props__.__dict__["vpc_id"] = vpc_id
755
1225
  return ServerGroup(resource_name, opts=opts, __props__=__props__)
756
1226
 
1227
+ @property
1228
+ @pulumi.getter(name="connectionDrainConfig")
1229
+ def connection_drain_config(self) -> pulumi.Output[Optional['outputs.ServerGroupConnectionDrainConfig']]:
1230
+ """
1231
+ Elegant interrupt configuration. See `connection_drain_config` below.
1232
+ """
1233
+ return pulumi.get(self, "connection_drain_config")
1234
+
1235
+ @property
1236
+ @pulumi.getter(name="createTime")
1237
+ def create_time(self) -> pulumi.Output[str]:
1238
+ """
1239
+ The creation time of the resource
1240
+ """
1241
+ return pulumi.get(self, "create_time")
1242
+
1243
+ @property
1244
+ @pulumi.getter(name="crossZoneEnabled")
1245
+ def cross_zone_enabled(self) -> pulumi.Output[bool]:
1246
+ """
1247
+ Indicates whether cross-zone load balancing is enabled for the server group. Valid values:
1248
+ """
1249
+ return pulumi.get(self, "cross_zone_enabled")
1250
+
757
1251
  @property
758
1252
  @pulumi.getter(name="dryRun")
759
1253
  def dry_run(self) -> pulumi.Output[Optional[bool]]:
760
1254
  """
761
- The dry run.
1255
+ Whether to PreCheck only this request. Value:
1256
+ true: Send a check request,
1257
+ false (default): Send a normal request.
762
1258
  """
763
1259
  return pulumi.get(self, "dry_run")
764
1260
 
@@ -766,15 +1262,41 @@ class ServerGroup(pulumi.CustomResource):
766
1262
  @pulumi.getter(name="healthCheckConfig")
767
1263
  def health_check_config(self) -> pulumi.Output['outputs.ServerGroupHealthCheckConfig']:
768
1264
  """
769
- The configuration of health checks. See `health_check_config` below.
1265
+ The configuration of health checks See `health_check_config` below.
770
1266
  """
771
1267
  return pulumi.get(self, "health_check_config")
772
1268
 
1269
+ @property
1270
+ @pulumi.getter(name="healthCheckTemplateId")
1271
+ def health_check_template_id(self) -> pulumi.Output[Optional[str]]:
1272
+ """
1273
+ The ID of the resource group to which you want to transfer the cloud resource.
1274
+
1275
+ > **NOTE:** You can use resource groups to manage resources within your Alibaba Cloud account by group. This helps you resolve issues such as resource grouping and permission management for your Alibaba Cloud account. For more information, see [What is resource management?](https://www.alibabacloud.com/help/en/doc-detail/94475.html)
1276
+ """
1277
+ return pulumi.get(self, "health_check_template_id")
1278
+
1279
+ @property
1280
+ @pulumi.getter(name="ipv6Enabled")
1281
+ def ipv6_enabled(self) -> pulumi.Output[Optional[bool]]:
1282
+ """
1283
+ Enable Ipv6
1284
+ """
1285
+ return pulumi.get(self, "ipv6_enabled")
1286
+
773
1287
  @property
774
1288
  @pulumi.getter
775
1289
  def protocol(self) -> pulumi.Output[str]:
776
1290
  """
777
- The server protocol. Valid values: ` HTTP`, `HTTPS`, `gRPC`. While `server_group_type` is `Fc` this parameter will not take effect. From version 1.215.0, `protocol` can be set to `gRPC`.
1291
+ The backend protocol. Valid values:
1292
+
1293
+ * `HTTP`: allows you to associate an HTTPS, HTTP, or QUIC listener with the server group. This is the default value.
1294
+
1295
+ * `HTTPS`: allows you to associate HTTPS listeners with backend servers.
1296
+
1297
+ * `gRPC`: allows you to associate an HTTPS or QUIC listener with the server group.
1298
+
1299
+ > **NOTE:** You do not need to specify a backend protocol if you set `ServerGroupType` to `Fc`.
778
1300
  """
779
1301
  return pulumi.get(self, "protocol")
780
1302
 
@@ -782,7 +1304,7 @@ class ServerGroup(pulumi.CustomResource):
782
1304
  @pulumi.getter(name="resourceGroupId")
783
1305
  def resource_group_id(self) -> pulumi.Output[str]:
784
1306
  """
785
- The ID of the resource group.
1307
+ Elegant interrupt configuration.
786
1308
  """
787
1309
  return pulumi.get(self, "resource_group_id")
788
1310
 
@@ -790,7 +1312,15 @@ class ServerGroup(pulumi.CustomResource):
790
1312
  @pulumi.getter
791
1313
  def scheduler(self) -> pulumi.Output[str]:
792
1314
  """
793
- The scheduling algorithm. Valid values: ` Sch`, ` Wlc`, `Wrr`. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
1315
+ The scheduling algorithm. Valid values:
1316
+
1317
+ * `Wrr` (default): The weighted round-robin algorithm is used. Backend servers that have higher weights receive more requests than those that have lower weights.
1318
+
1319
+ * `Wlc`: The weighted least connections algorithm is used. Requests are distributed based on the weights and the number of connections to backend servers. If two backend servers have the same weight, the backend server that has fewer connections is expected to receive more requests.
1320
+
1321
+ * `Sch`: The consistent hashing algorithm is used. Requests from the same source IP address are distributed to the same backend server.
1322
+
1323
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
794
1324
  """
795
1325
  return pulumi.get(self, "scheduler")
796
1326
 
@@ -798,7 +1328,7 @@ class ServerGroup(pulumi.CustomResource):
798
1328
  @pulumi.getter(name="serverGroupName")
799
1329
  def server_group_name(self) -> pulumi.Output[str]:
800
1330
  """
801
- The name of the server group.
1331
+ The name of the server group. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (\\_), and hyphens (-). The name must start with a letter.
802
1332
  """
803
1333
  return pulumi.get(self, "server_group_name")
804
1334
 
@@ -806,8 +1336,9 @@ class ServerGroup(pulumi.CustomResource):
806
1336
  @pulumi.getter(name="serverGroupType")
807
1337
  def server_group_type(self) -> pulumi.Output[str]:
808
1338
  """
809
- The type of the server group. Default value: `Instance`. Valid values:
810
- - `Instance`: allows you add servers by specifying Ecs, Ens, or Eci.
1339
+ The type of server group. Valid values:
1340
+
1341
+ - `Instance` (default): allows you to add servers by specifying `Ecs`, `Eni`, or `Eci`.
811
1342
  - `Ip`: allows you to add servers by specifying IP addresses.
812
1343
  - `Fc`: allows you to add servers by specifying functions of Function Compute.
813
1344
  """
@@ -817,23 +1348,39 @@ class ServerGroup(pulumi.CustomResource):
817
1348
  @pulumi.getter
818
1349
  def servers(self) -> pulumi.Output[Optional[Sequence['outputs.ServerGroupServer']]]:
819
1350
  """
820
- The backend servers. See `servers` below.
1351
+ List of servers. See `servers` below.
821
1352
  """
822
1353
  return pulumi.get(self, "servers")
823
1354
 
1355
+ @property
1356
+ @pulumi.getter(name="serviceName")
1357
+ def service_name(self) -> pulumi.Output[Optional[str]]:
1358
+ """
1359
+ Only applicable to the ALB Ingress scenario, indicating the K8s Service name corresponding to the server group.
1360
+ """
1361
+ return pulumi.get(self, "service_name")
1362
+
1363
+ @property
1364
+ @pulumi.getter(name="slowStartConfig")
1365
+ def slow_start_config(self) -> pulumi.Output[Optional['outputs.ServerGroupSlowStartConfig']]:
1366
+ """
1367
+ Slow start configuration. See `slow_start_config` below.
1368
+ """
1369
+ return pulumi.get(self, "slow_start_config")
1370
+
824
1371
  @property
825
1372
  @pulumi.getter
826
1373
  def status(self) -> pulumi.Output[str]:
827
1374
  """
828
- The status of the backend server.
1375
+ The status of the resource
829
1376
  """
830
1377
  return pulumi.get(self, "status")
831
1378
 
832
1379
  @property
833
1380
  @pulumi.getter(name="stickySessionConfig")
834
- def sticky_session_config(self) -> pulumi.Output['outputs.ServerGroupStickySessionConfig']:
1381
+ def sticky_session_config(self) -> pulumi.Output[Optional['outputs.ServerGroupStickySessionConfig']]:
835
1382
  """
836
- The configuration of session persistence. See `sticky_session_config` below.
1383
+ The configuration of health checks See `sticky_session_config` below.
837
1384
  """
838
1385
  return pulumi.get(self, "sticky_session_config")
839
1386
 
@@ -841,15 +1388,33 @@ class ServerGroup(pulumi.CustomResource):
841
1388
  @pulumi.getter
842
1389
  def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
843
1390
  """
844
- A mapping of tags to assign to the resource.
1391
+ The creation time of the resource
845
1392
  """
846
1393
  return pulumi.get(self, "tags")
847
1394
 
1395
+ @property
1396
+ @pulumi.getter(name="uchConfig")
1397
+ def uch_config(self) -> pulumi.Output[Optional['outputs.ServerGroupUchConfig']]:
1398
+ """
1399
+ Url consistency hash parameter configuration See `uch_config` below.
1400
+ """
1401
+ return pulumi.get(self, "uch_config")
1402
+
1403
+ @property
1404
+ @pulumi.getter(name="upstreamKeepaliveEnabled")
1405
+ def upstream_keepalive_enabled(self) -> pulumi.Output[Optional[bool]]:
1406
+ """
1407
+ Specifies whether to enable persistent TCP connections.
1408
+ """
1409
+ return pulumi.get(self, "upstream_keepalive_enabled")
1410
+
848
1411
  @property
849
1412
  @pulumi.getter(name="vpcId")
850
1413
  def vpc_id(self) -> pulumi.Output[Optional[str]]:
851
1414
  """
852
- The ID of the VPC that you want to access. **NOTE:** This parameter takes effect when the `server_group_type` parameter is set to `Instance` or `Ip`.
1415
+ The ID of the virtual private cloud (VPC). You can add only servers that are deployed in the specified VPC to the server group.
1416
+
1417
+ > **NOTE:** This parameter takes effect when the `ServerGroupType` parameter is set to `Instance` or `Ip`.
853
1418
  """
854
1419
  return pulumi.get(self, "vpc_id")
855
1420