pulumi-alicloud 3.84.0a1756507491__py3-none-any.whl → 3.84.0a1757017465__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 (243) hide show
  1. pulumi_alicloud/__init__.py +108 -0
  2. pulumi_alicloud/_inputs.py +635 -0
  3. pulumi_alicloud/ackone/membership_attachment.py +122 -0
  4. pulumi_alicloud/actiontrail/__init__.py +1 -0
  5. pulumi_alicloud/actiontrail/advanced_query_template.py +311 -0
  6. pulumi_alicloud/actiontrail/trail.py +303 -149
  7. pulumi_alicloud/actiontrail/trail_deprecated.py +131 -23
  8. pulumi_alicloud/alb/a_script.py +170 -0
  9. pulumi_alicloud/alb/get_rules.py +206 -0
  10. pulumi_alicloud/alb/listener.py +240 -0
  11. pulumi_alicloud/alb/listener_acl_attachment.py +180 -0
  12. pulumi_alicloud/alb/listener_additional_certificate_attachment.py +314 -0
  13. pulumi_alicloud/alb/load_balancer_access_log_config_attachment.py +136 -0
  14. pulumi_alicloud/alb/load_balancer_common_bandwidth_package_attachment.py +122 -0
  15. pulumi_alicloud/alb/load_balancer_zone_shifted_attachment.py +124 -0
  16. pulumi_alicloud/alb/rule.py +202 -0
  17. pulumi_alicloud/alikafka/sasl_user.py +2 -2
  18. pulumi_alicloud/apig/environment.py +86 -0
  19. pulumi_alicloud/arms/__init__.py +6 -0
  20. pulumi_alicloud/arms/addon_release.py +174 -0
  21. pulumi_alicloud/arms/env_feature.py +158 -0
  22. pulumi_alicloud/arms/env_pod_monitor.py +206 -0
  23. pulumi_alicloud/arms/env_service_monitor.py +204 -0
  24. pulumi_alicloud/arms/environment.py +150 -0
  25. pulumi_alicloud/arms/get_addon_releases.py +354 -0
  26. pulumi_alicloud/arms/get_env_custom_jobs.py +268 -0
  27. pulumi_alicloud/arms/get_env_features.py +342 -0
  28. pulumi_alicloud/arms/get_env_pod_monitors.py +390 -0
  29. pulumi_alicloud/arms/get_env_service_monitors.py +388 -0
  30. pulumi_alicloud/arms/get_environments.py +282 -0
  31. pulumi_alicloud/arms/outputs.py +620 -0
  32. pulumi_alicloud/arms/prometheus_monitoring.py +190 -0
  33. pulumi_alicloud/cen/transit_router_multicast_domain_member.py +118 -0
  34. pulumi_alicloud/cen/transit_router_multicast_domain_source.py +160 -0
  35. pulumi_alicloud/cfg/aggregate_delivery.py +100 -0
  36. pulumi_alicloud/cfg/delivery_channel.py +54 -0
  37. pulumi_alicloud/cloudauth/face_config.py +48 -0
  38. pulumi_alicloud/cloudfirewall/nat_firewall_control_policy.py +236 -0
  39. pulumi_alicloud/cloudmonitor/__init__.py +1 -0
  40. pulumi_alicloud/cloudmonitor/get_service_metric_alarm_rules.py +333 -0
  41. pulumi_alicloud/cloudmonitor/outputs.py +696 -0
  42. pulumi_alicloud/cloudsso/access_configuration.py +12 -12
  43. pulumi_alicloud/cloudsso/access_configuration_provisioning.py +84 -0
  44. pulumi_alicloud/cloudsso/access_management.py +90 -0
  45. pulumi_alicloud/cloudsso/group.py +60 -0
  46. pulumi_alicloud/cloudsso/user.py +66 -0
  47. pulumi_alicloud/cloudsso/user_attachment.py +82 -0
  48. pulumi_alicloud/cloudstoragegateway/express_sync.py +154 -0
  49. pulumi_alicloud/cloudstoragegateway/express_sync_share_attachment.py +160 -0
  50. pulumi_alicloud/cloudstoragegateway/gateway.py +0 -13
  51. pulumi_alicloud/cloudstoragegateway/gateway_block_volume.py +132 -0
  52. pulumi_alicloud/cloudstoragegateway/gateway_cache_disk.py +92 -0
  53. pulumi_alicloud/cloudstoragegateway/gateway_file_share.py +130 -0
  54. pulumi_alicloud/cloudstoragegateway/gateway_logging.py +120 -0
  55. pulumi_alicloud/cloudstoragegateway/gateway_smb_user.py +92 -0
  56. pulumi_alicloud/cms/alarm.py +4 -4
  57. pulumi_alicloud/cms/get_site_monitors.py +20 -20
  58. pulumi_alicloud/cms/hybrid_monitor_fc_task.py +24 -24
  59. pulumi_alicloud/cms/hybrid_monitor_sls_task.py +164 -0
  60. pulumi_alicloud/cms/site_monitor.py +20 -20
  61. pulumi_alicloud/cms/sls_group.py +80 -0
  62. pulumi_alicloud/compute/nest_service_instance.py +10 -10
  63. pulumi_alicloud/cs/_inputs.py +565 -0
  64. pulumi_alicloud/cs/autoscaling_config.py +260 -35
  65. pulumi_alicloud/cs/get_cluster_credential.py +30 -0
  66. pulumi_alicloud/cs/get_kubernetes_addon_metadata.py +78 -0
  67. pulumi_alicloud/cs/get_kubernetes_addons.py +72 -0
  68. pulumi_alicloud/cs/get_kubernetes_node_pools.py +124 -0
  69. pulumi_alicloud/cs/kubernetes.py +296 -0
  70. pulumi_alicloud/cs/kubernetes_addon.py +108 -0
  71. pulumi_alicloud/cs/kubernetes_permission.py +162 -0
  72. pulumi_alicloud/cs/managed_kubernetes.py +583 -14
  73. pulumi_alicloud/cs/node_pool.py +416 -0
  74. pulumi_alicloud/cs/outputs.py +374 -0
  75. pulumi_alicloud/dataworks/data_source_shared_rule.py +116 -0
  76. pulumi_alicloud/dataworks/dw_resource_group.py +82 -0
  77. pulumi_alicloud/dataworks/network.py +100 -0
  78. pulumi_alicloud/ddos/domain_resource.py +6 -6
  79. pulumi_alicloud/directmail/mail_address.py +62 -0
  80. pulumi_alicloud/directmail/receivers.py +40 -0
  81. pulumi_alicloud/dns/access_strategy.py +152 -0
  82. pulumi_alicloud/dns/address_pool.py +4 -4
  83. pulumi_alicloud/dts/job_monitor_rule.py +228 -0
  84. pulumi_alicloud/dts/migration_job.py +238 -0
  85. pulumi_alicloud/dts/synchronization_job.py +266 -14
  86. pulumi_alicloud/ebs/disk_replica_pair.py +112 -0
  87. pulumi_alicloud/ecs/ecs_network_interface_permission.py +84 -0
  88. pulumi_alicloud/ecs/image_import.py +2 -2
  89. pulumi_alicloud/ecs/ram_role_attachment.py +28 -28
  90. pulumi_alicloud/edas/k8s_application.py +124 -0
  91. pulumi_alicloud/edas/k8s_cluster.py +104 -0
  92. pulumi_alicloud/edas/k8s_slb_attachment.py +152 -0
  93. pulumi_alicloud/eflo/__init__.py +2 -0
  94. pulumi_alicloud/eflo/_inputs.py +94 -0
  95. pulumi_alicloud/eflo/er.py +487 -0
  96. pulumi_alicloud/eflo/node_group_attachment.py +604 -0
  97. pulumi_alicloud/eflo/outputs.py +75 -0
  98. pulumi_alicloud/emr/cluster.py +64 -64
  99. pulumi_alicloud/emr/get_clusters.py +16 -16
  100. pulumi_alicloud/emrv2/cluster.py +16 -16
  101. pulumi_alicloud/emrv2/get_cluster_instances.py +16 -16
  102. pulumi_alicloud/esa/__init__.py +4 -0
  103. pulumi_alicloud/esa/origin_ca_certificate.py +441 -0
  104. pulumi_alicloud/esa/origin_client_certificate.py +564 -0
  105. pulumi_alicloud/esa/origin_protection.py +290 -0
  106. pulumi_alicloud/esa/site_origin_client_certificate.py +515 -0
  107. pulumi_alicloud/eventbridge/rule.py +102 -0
  108. pulumi_alicloud/fc/_inputs.py +77 -3
  109. pulumi_alicloud/fc/custom_domain.py +14 -14
  110. pulumi_alicloud/fc/function.py +14 -14
  111. pulumi_alicloud/fc/function_async_invoke_config.py +48 -48
  112. pulumi_alicloud/fc/outputs.py +63 -2
  113. pulumi_alicloud/fc/trigger.py +100 -100
  114. pulumi_alicloud/fc/v3_async_invoke_config.py +154 -0
  115. pulumi_alicloud/fc/v3_function.py +189 -3
  116. pulumi_alicloud/fc/v3_function_version.py +30 -2
  117. pulumi_alicloud/fnf/execution.py +14 -14
  118. pulumi_alicloud/fnf/flow.py +14 -14
  119. pulumi_alicloud/ga/additional_certificate.py +236 -0
  120. pulumi_alicloud/gpdb/hadoop_data_source.py +16 -16
  121. pulumi_alicloud/gpdb/streaming_job.py +4 -4
  122. pulumi_alicloud/gwlb/listener.py +172 -0
  123. pulumi_alicloud/gwlb/load_balancer.py +96 -0
  124. pulumi_alicloud/gwlb/server_group.py +160 -0
  125. pulumi_alicloud/hbr/ecs_backup_plan.py +4 -4
  126. pulumi_alicloud/hbr/ots_backup_plan.py +28 -28
  127. pulumi_alicloud/hbr/restore_job.py +4 -4
  128. pulumi_alicloud/imm/project.py +14 -14
  129. pulumi_alicloud/kms/get_aliases.py +6 -6
  130. pulumi_alicloud/kms/get_instances.py +178 -0
  131. pulumi_alicloud/kms/instance.py +423 -16
  132. pulumi_alicloud/kms/policy.py +96 -0
  133. pulumi_alicloud/log/dashboard.py +40 -40
  134. pulumi_alicloud/log/ingestion.py +38 -38
  135. pulumi_alicloud/log/log_tail_attachment.py +20 -20
  136. pulumi_alicloud/log/log_tail_config.py +20 -20
  137. pulumi_alicloud/log/project.py +20 -20
  138. pulumi_alicloud/log/resource.py +22 -22
  139. pulumi_alicloud/log/resource_record.py +40 -40
  140. pulumi_alicloud/maxcompute/get_service.py +2 -2
  141. pulumi_alicloud/message/__init__.py +1 -0
  142. pulumi_alicloud/message/_inputs.py +141 -0
  143. pulumi_alicloud/message/outputs.py +120 -0
  144. pulumi_alicloud/message/service_event_rule.py +490 -0
  145. pulumi_alicloud/mongodb/__init__.py +1 -0
  146. pulumi_alicloud/mongodb/global_security_ip_group.py +304 -0
  147. pulumi_alicloud/mongodb/instance.py +47 -0
  148. pulumi_alicloud/mongodb/sharding_instance.py +47 -0
  149. pulumi_alicloud/msc_sub_webhook.py +44 -0
  150. pulumi_alicloud/mse/cluster.py +47 -0
  151. pulumi_alicloud/mse/gateway.py +62 -0
  152. pulumi_alicloud/nas/access_group.py +46 -18
  153. pulumi_alicloud/nas/access_rule.py +28 -0
  154. pulumi_alicloud/nas/data_flow.py +114 -0
  155. pulumi_alicloud/nlb/listener_additional_certificate_attachment.py +328 -0
  156. pulumi_alicloud/oos/execution.py +30 -30
  157. pulumi_alicloud/oos/get_parameters.py +10 -10
  158. pulumi_alicloud/oos/get_secret_parameters.py +10 -10
  159. pulumi_alicloud/oos/template.py +28 -28
  160. pulumi_alicloud/oss/bucket.py +578 -0
  161. pulumi_alicloud/oss/bucket_replication.py +56 -56
  162. pulumi_alicloud/outputs.py +489 -0
  163. pulumi_alicloud/pai/flow_pipeline.py +70 -70
  164. pulumi_alicloud/pai/workspace_datasetversion.py +108 -0
  165. pulumi_alicloud/pai/workspace_run.py +62 -0
  166. pulumi_alicloud/polardb/cluster.py +7 -7
  167. pulumi_alicloud/privatelink/vpc_endpoint_service.py +11 -11
  168. pulumi_alicloud/pulumi-plugin.json +1 -1
  169. pulumi_alicloud/pvtz/endpoint.py +96 -0
  170. pulumi_alicloud/pvtz/rule.py +122 -0
  171. pulumi_alicloud/pvtz/rule_attachment.py +150 -0
  172. pulumi_alicloud/ram/get_policies.py +18 -18
  173. pulumi_alicloud/ram/get_policy_document.py +2 -2
  174. pulumi_alicloud/ram/get_role_policy_attachments.py +34 -34
  175. pulumi_alicloud/ram/get_users.py +32 -32
  176. pulumi_alicloud/ram/group_membership.py +74 -0
  177. pulumi_alicloud/ram/group_policy_attachment.py +18 -18
  178. pulumi_alicloud/ram/policy.py +18 -18
  179. pulumi_alicloud/ram/role.py +16 -16
  180. pulumi_alicloud/ram/role_attachment.py +14 -14
  181. pulumi_alicloud/ram/role_policy_attachment.py +34 -34
  182. pulumi_alicloud/ram/user_policy_attachment.py +18 -18
  183. pulumi_alicloud/rds/get_instance_classes.py +6 -4
  184. pulumi_alicloud/rds/outputs.py +4 -0
  185. pulumi_alicloud/rds/rds_clone_db_instance.py +8 -1
  186. pulumi_alicloud/resourcemanager/auto_grouping_rule.py +24 -24
  187. pulumi_alicloud/resourcemanager/control_policy.py +18 -18
  188. pulumi_alicloud/resourcemanager/control_policy_attachment.py +18 -18
  189. pulumi_alicloud/resourcemanager/get_shared_resources.py +64 -0
  190. pulumi_alicloud/resourcemanager/policy.py +16 -16
  191. pulumi_alicloud/resourcemanager/policy_attachment.py +82 -0
  192. pulumi_alicloud/resourcemanager/policy_version.py +32 -32
  193. pulumi_alicloud/resourcemanager/role.py +14 -14
  194. pulumi_alicloud/rocketmq/qos_policy.py +70 -0
  195. pulumi_alicloud/ros/_inputs.py +70 -18
  196. pulumi_alicloud/ros/outputs.py +59 -12
  197. pulumi_alicloud/ros/stack.py +14 -14
  198. pulumi_alicloud/ros/stack_group.py +342 -223
  199. pulumi_alicloud/ros/template.py +2 -2
  200. pulumi_alicloud/sag/qos_policy.py +70 -0
  201. pulumi_alicloud/sddp/data_limit.py +148 -0
  202. pulumi_alicloud/sddp/rule.py +10 -10
  203. pulumi_alicloud/servicecatalog/principal_portfolio_association.py +16 -16
  204. pulumi_alicloud/servicecatalog/product_portfolio_association.py +54 -0
  205. pulumi_alicloud/sls/__init__.py +1 -0
  206. pulumi_alicloud/sls/collection_policy.py +276 -0
  207. pulumi_alicloud/sls/get_etls.py +294 -0
  208. pulumi_alicloud/sls/oss_export_sink.py +134 -0
  209. pulumi_alicloud/sls/outputs.py +277 -0
  210. pulumi_alicloud/sslcertificatesservice/__init__.py +9 -0
  211. pulumi_alicloud/sslcertificatesservice/pca_certificate.py +646 -0
  212. pulumi_alicloud/star_rocks_instance.py +1425 -0
  213. pulumi_alicloud/tag/policy.py +2 -2
  214. pulumi_alicloud/tag/policy_attachment.py +2 -2
  215. pulumi_alicloud/threatdetection/__init__.py +1 -0
  216. pulumi_alicloud/threatdetection/_inputs.py +183 -0
  217. pulumi_alicloud/threatdetection/anti_brute_force_rule.py +50 -1
  218. pulumi_alicloud/threatdetection/attack_path_sensitive_asset_config.py +218 -0
  219. pulumi_alicloud/threatdetection/image_event_operation.py +191 -90
  220. pulumi_alicloud/threatdetection/oss_scan_config.py +257 -65
  221. pulumi_alicloud/threatdetection/outputs.py +147 -0
  222. pulumi_alicloud/vod/editing_project.py +8 -8
  223. pulumi_alicloud/vpc/common_bandwith_package.py +28 -0
  224. pulumi_alicloud/vpc/flow_log.py +92 -0
  225. pulumi_alicloud/vpc/gateway_endpoint.py +12 -12
  226. pulumi_alicloud/vpc/gateway_endpoint_route_table_attachment.py +12 -12
  227. pulumi_alicloud/vpc/ipam_ipam_pool.py +54 -0
  228. pulumi_alicloud/vpc/route_entry.py +6 -2
  229. pulumi_alicloud/vpc/vbr_ha.py +100 -0
  230. pulumi_alicloud/vpc/vpc_network_acl_attachment.py +48 -0
  231. pulumi_alicloud/vpn/get_gateways.py +98 -0
  232. pulumi_alicloud/vpn/ssl_vpn_client_cert.py +82 -0
  233. pulumi_alicloud/vpn/ssl_vpn_server.py +76 -0
  234. pulumi_alicloud/wafv3/__init__.py +1 -0
  235. pulumi_alicloud/wafv3/_inputs.py +1318 -182
  236. pulumi_alicloud/wafv3/defense_rule.py +806 -0
  237. pulumi_alicloud/wafv3/defense_template.py +87 -124
  238. pulumi_alicloud/wafv3/domain.py +136 -35
  239. pulumi_alicloud/wafv3/outputs.py +925 -123
  240. {pulumi_alicloud-3.84.0a1756507491.dist-info → pulumi_alicloud-3.84.0a1757017465.dist-info}/METADATA +1 -1
  241. {pulumi_alicloud-3.84.0a1756507491.dist-info → pulumi_alicloud-3.84.0a1757017465.dist-info}/RECORD +243 -221
  242. {pulumi_alicloud-3.84.0a1756507491.dist-info → pulumi_alicloud-3.84.0a1757017465.dist-info}/WHEEL +0 -0
  243. {pulumi_alicloud-3.84.0a1756507491.dist-info → pulumi_alicloud-3.84.0a1757017465.dist-info}/top_level.txt +0 -0
@@ -24,6 +24,7 @@ class ManagedKubernetesArgs:
24
24
  addons: Optional[pulumi.Input[Sequence[pulumi.Input['ManagedKubernetesAddonArgs']]]] = None,
25
25
  api_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
26
26
  audit_log_config: Optional[pulumi.Input['ManagedKubernetesAuditLogConfigArgs']] = None,
27
+ auto_mode: Optional[pulumi.Input['ManagedKubernetesAutoModeArgs']] = None,
27
28
  client_cert: Optional[pulumi.Input[_builtins.str]] = None,
28
29
  client_key: Optional[pulumi.Input[_builtins.str]] = None,
29
30
  cluster_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
@@ -69,6 +70,7 @@ class ManagedKubernetesArgs:
69
70
  :param pulumi.Input[Sequence[pulumi.Input['ManagedKubernetesAddonArgs']]] addons: The addon you want to install in cluster. See `addons` below. Only works for **Create** Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
70
71
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] api_audiences: A list of API audiences for [Service Account Token Volume Projection](https://www.alibabacloud.com/help/doc-detail/160384.htm). Set this to `["https://kubernetes.default.svc"]` if you want to enable the Token Volume Projection feature (requires specifying `service_account_issuer` as well. From cluster version 1.22, Service Account Token Volume Projection will be enabled by default.
71
72
  :param pulumi.Input['ManagedKubernetesAuditLogConfigArgs'] audit_log_config: Audit log configuration. See `audit_log_config` below.
73
+ :param pulumi.Input['ManagedKubernetesAutoModeArgs'] auto_mode: Auto mode cluster configuration. See `auto_mode` below.
72
74
  :param pulumi.Input[_builtins.str] client_cert: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.client_cert attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/client-cert.pem) for replace it.
73
75
  :param pulumi.Input[_builtins.str] client_key: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.client_key attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/client-key.pem) for replace it.
74
76
  :param pulumi.Input[_builtins.str] cluster_ca_cert: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.cluster_cert attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/cluster-ca-cert.pem) for replace it.
@@ -90,11 +92,11 @@ class ManagedKubernetesArgs:
90
92
  :param pulumi.Input[_builtins.str] ip_stack: The IP address family that the cluster network uses. Valid values:
91
93
  :param pulumi.Input[_builtins.bool] is_enterprise_security_group: Enable to create advanced security group. default: false. Only works for **Create** Operation. See [Advanced security group](https://www.alibabacloud.com/help/doc-detail/120621.htm).
92
94
  :param pulumi.Input[_builtins.str] load_balancer_spec: The cluster api server load balancer instance specification. For more information on how to select a LB instance specification, see [SLB instance overview](https://help.aliyun.com/document_detail/85931.html). Only works for **Create** Operation. The spec will not take effect because the charge of the load balancer has been changed to PayByCLCU.
93
- :param pulumi.Input['ManagedKubernetesMaintenanceWindowArgs'] maintenance_window: The cluster maintenance window,effective only in the professional managed cluster. Managed node pool will use it. See `maintenance_window` below.
95
+ :param pulumi.Input['ManagedKubernetesMaintenanceWindowArgs'] maintenance_window: The cluster maintenance window. Managed node pool will use it. See `maintenance_window` below.
94
96
  :param pulumi.Input[_builtins.str] name: The kubernetes cluster's name. It is unique in one Alicloud account.
95
97
  :param pulumi.Input[_builtins.bool] new_nat_gateway: Whether to create a new nat gateway while creating kubernetes cluster. Default to true. Then openapi in Alibaba Cloud are not all on intranet, So turn this option on is a good choice. Only works for **Create** Operation.
96
98
  :param pulumi.Input[_builtins.int] node_cidr_mask: The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24
97
- :param pulumi.Input['ManagedKubernetesOperationPolicyArgs'] operation_policy: The cluster automatic operation policy. See `operation_policy` below.
99
+ :param pulumi.Input['ManagedKubernetesOperationPolicyArgs'] operation_policy: The cluster automatic operation policy, only works when `maintenance_window` is enabled. See `operation_policy` below.
98
100
  :param pulumi.Input[_builtins.str] pod_cidr: [Flannel Specific] The CIDR block for the pod network when using Flannel.
99
101
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pod_vswitch_ids: [Terway Specific] The vswitches for the pod network when using Terway. It is recommended that `pod_vswitch_ids` is not belong to `vswitch_ids` but must be in same availability zones. Only works for **Create** Operation.
100
102
  :param pulumi.Input[_builtins.str] profile: The profile of cluster. Valid values:
@@ -138,6 +140,8 @@ class ManagedKubernetesArgs:
138
140
  pulumi.set(__self__, "api_audiences", api_audiences)
139
141
  if audit_log_config is not None:
140
142
  pulumi.set(__self__, "audit_log_config", audit_log_config)
143
+ if auto_mode is not None:
144
+ pulumi.set(__self__, "auto_mode", auto_mode)
141
145
  if client_cert is not None:
142
146
  warnings.warn("""Field 'client_cert' has been deprecated from provider version 1.248.0. From version 1.248.0, new DataSource 'alicloud_cs_cluster_credential' is recommended to manage cluster's kubeconfig, you can also save the 'certificate_authority.client_cert' attribute content of new DataSource 'alicloud_cs_cluster_credential' to an appropriate path(like ~/.kube/client-cert.pem) for replace it.""", DeprecationWarning)
143
147
  pulumi.log.warn("""client_cert is deprecated: Field 'client_cert' has been deprecated from provider version 1.248.0. From version 1.248.0, new DataSource 'alicloud_cs_cluster_credential' is recommended to manage cluster's kubeconfig, you can also save the 'certificate_authority.client_cert' attribute content of new DataSource 'alicloud_cs_cluster_credential' to an appropriate path(like ~/.kube/client-cert.pem) for replace it.""")
@@ -270,6 +274,18 @@ class ManagedKubernetesArgs:
270
274
  def audit_log_config(self, value: Optional[pulumi.Input['ManagedKubernetesAuditLogConfigArgs']]):
271
275
  pulumi.set(self, "audit_log_config", value)
272
276
 
277
+ @_builtins.property
278
+ @pulumi.getter(name="autoMode")
279
+ def auto_mode(self) -> Optional[pulumi.Input['ManagedKubernetesAutoModeArgs']]:
280
+ """
281
+ Auto mode cluster configuration. See `auto_mode` below.
282
+ """
283
+ return pulumi.get(self, "auto_mode")
284
+
285
+ @auto_mode.setter
286
+ def auto_mode(self, value: Optional[pulumi.Input['ManagedKubernetesAutoModeArgs']]):
287
+ pulumi.set(self, "auto_mode", value)
288
+
273
289
  @_builtins.property
274
290
  @pulumi.getter(name="clientCert")
275
291
  @_utilities.deprecated("""Field 'client_cert' has been deprecated from provider version 1.248.0. From version 1.248.0, new DataSource 'alicloud_cs_cluster_credential' is recommended to manage cluster's kubeconfig, you can also save the 'certificate_authority.client_cert' attribute content of new DataSource 'alicloud_cs_cluster_credential' to an appropriate path(like ~/.kube/client-cert.pem) for replace it.""")
@@ -475,7 +491,7 @@ class ManagedKubernetesArgs:
475
491
  @pulumi.getter(name="maintenanceWindow")
476
492
  def maintenance_window(self) -> Optional[pulumi.Input['ManagedKubernetesMaintenanceWindowArgs']]:
477
493
  """
478
- The cluster maintenance window,effective only in the professional managed cluster. Managed node pool will use it. See `maintenance_window` below.
494
+ The cluster maintenance window. Managed node pool will use it. See `maintenance_window` below.
479
495
  """
480
496
  return pulumi.get(self, "maintenance_window")
481
497
 
@@ -532,7 +548,7 @@ class ManagedKubernetesArgs:
532
548
  @pulumi.getter(name="operationPolicy")
533
549
  def operation_policy(self) -> Optional[pulumi.Input['ManagedKubernetesOperationPolicyArgs']]:
534
550
  """
535
- The cluster automatic operation policy. See `operation_policy` below.
551
+ The cluster automatic operation policy, only works when `maintenance_window` is enabled. See `operation_policy` below.
536
552
  """
537
553
  return pulumi.get(self, "operation_policy")
538
554
 
@@ -780,6 +796,7 @@ class _ManagedKubernetesState:
780
796
  addons: Optional[pulumi.Input[Sequence[pulumi.Input['ManagedKubernetesAddonArgs']]]] = None,
781
797
  api_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
782
798
  audit_log_config: Optional[pulumi.Input['ManagedKubernetesAuditLogConfigArgs']] = None,
799
+ auto_mode: Optional[pulumi.Input['ManagedKubernetesAutoModeArgs']] = None,
783
800
  certificate_authority: Optional[pulumi.Input['ManagedKubernetesCertificateAuthorityArgs']] = None,
784
801
  client_cert: Optional[pulumi.Input[_builtins.str]] = None,
785
802
  client_key: Optional[pulumi.Input[_builtins.str]] = None,
@@ -834,6 +851,7 @@ class _ManagedKubernetesState:
834
851
  :param pulumi.Input[Sequence[pulumi.Input['ManagedKubernetesAddonArgs']]] addons: The addon you want to install in cluster. See `addons` below. Only works for **Create** Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
835
852
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] api_audiences: A list of API audiences for [Service Account Token Volume Projection](https://www.alibabacloud.com/help/doc-detail/160384.htm). Set this to `["https://kubernetes.default.svc"]` if you want to enable the Token Volume Projection feature (requires specifying `service_account_issuer` as well. From cluster version 1.22, Service Account Token Volume Projection will be enabled by default.
836
853
  :param pulumi.Input['ManagedKubernetesAuditLogConfigArgs'] audit_log_config: Audit log configuration. See `audit_log_config` below.
854
+ :param pulumi.Input['ManagedKubernetesAutoModeArgs'] auto_mode: Auto mode cluster configuration. See `auto_mode` below.
837
855
  :param pulumi.Input['ManagedKubernetesCertificateAuthorityArgs'] certificate_authority: (Map, Deprecated from v1.248.0) Nested attribute containing certificate authority data for your cluster. Please use the attribute certificate_authority of new DataSource `cs_get_cluster_credential` to replace it.
838
856
  :param pulumi.Input[_builtins.str] client_cert: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.client_cert attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/client-cert.pem) for replace it.
839
857
  :param pulumi.Input[_builtins.str] client_key: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.client_key attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/client-key.pem) for replace it.
@@ -857,12 +875,12 @@ class _ManagedKubernetesState:
857
875
  :param pulumi.Input[_builtins.str] ip_stack: The IP address family that the cluster network uses. Valid values:
858
876
  :param pulumi.Input[_builtins.bool] is_enterprise_security_group: Enable to create advanced security group. default: false. Only works for **Create** Operation. See [Advanced security group](https://www.alibabacloud.com/help/doc-detail/120621.htm).
859
877
  :param pulumi.Input[_builtins.str] load_balancer_spec: The cluster api server load balancer instance specification. For more information on how to select a LB instance specification, see [SLB instance overview](https://help.aliyun.com/document_detail/85931.html). Only works for **Create** Operation. The spec will not take effect because the charge of the load balancer has been changed to PayByCLCU.
860
- :param pulumi.Input['ManagedKubernetesMaintenanceWindowArgs'] maintenance_window: The cluster maintenance window,effective only in the professional managed cluster. Managed node pool will use it. See `maintenance_window` below.
878
+ :param pulumi.Input['ManagedKubernetesMaintenanceWindowArgs'] maintenance_window: The cluster maintenance window. Managed node pool will use it. See `maintenance_window` below.
861
879
  :param pulumi.Input[_builtins.str] name: The kubernetes cluster's name. It is unique in one Alicloud account.
862
880
  :param pulumi.Input[_builtins.str] nat_gateway_id: The ID of nat gateway used to launch kubernetes cluster.
863
881
  :param pulumi.Input[_builtins.bool] new_nat_gateway: Whether to create a new nat gateway while creating kubernetes cluster. Default to true. Then openapi in Alibaba Cloud are not all on intranet, So turn this option on is a good choice. Only works for **Create** Operation.
864
882
  :param pulumi.Input[_builtins.int] node_cidr_mask: The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24
865
- :param pulumi.Input['ManagedKubernetesOperationPolicyArgs'] operation_policy: The cluster automatic operation policy. See `operation_policy` below.
883
+ :param pulumi.Input['ManagedKubernetesOperationPolicyArgs'] operation_policy: The cluster automatic operation policy, only works when `maintenance_window` is enabled. See `operation_policy` below.
866
884
  :param pulumi.Input[_builtins.str] pod_cidr: [Flannel Specific] The CIDR block for the pod network when using Flannel.
867
885
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pod_vswitch_ids: [Terway Specific] The vswitches for the pod network when using Terway. It is recommended that `pod_vswitch_ids` is not belong to `vswitch_ids` but must be in same availability zones. Only works for **Create** Operation.
868
886
  :param pulumi.Input[_builtins.str] profile: The profile of cluster. Valid values:
@@ -912,6 +930,8 @@ class _ManagedKubernetesState:
912
930
  pulumi.set(__self__, "api_audiences", api_audiences)
913
931
  if audit_log_config is not None:
914
932
  pulumi.set(__self__, "audit_log_config", audit_log_config)
933
+ if auto_mode is not None:
934
+ pulumi.set(__self__, "auto_mode", auto_mode)
915
935
  if certificate_authority is not None:
916
936
  warnings.warn("""Field 'certificate_authority' has been deprecated from provider version 1.248.0. Please use the attribute 'certificate_authority' of new DataSource 'alicloud_cs_cluster_credential' to replace it.""", DeprecationWarning)
917
937
  pulumi.log.warn("""certificate_authority is deprecated: Field 'certificate_authority' has been deprecated from provider version 1.248.0. Please use the attribute 'certificate_authority' of new DataSource 'alicloud_cs_cluster_credential' to replace it.""")
@@ -1065,6 +1085,18 @@ class _ManagedKubernetesState:
1065
1085
  def audit_log_config(self, value: Optional[pulumi.Input['ManagedKubernetesAuditLogConfigArgs']]):
1066
1086
  pulumi.set(self, "audit_log_config", value)
1067
1087
 
1088
+ @_builtins.property
1089
+ @pulumi.getter(name="autoMode")
1090
+ def auto_mode(self) -> Optional[pulumi.Input['ManagedKubernetesAutoModeArgs']]:
1091
+ """
1092
+ Auto mode cluster configuration. See `auto_mode` below.
1093
+ """
1094
+ return pulumi.get(self, "auto_mode")
1095
+
1096
+ @auto_mode.setter
1097
+ def auto_mode(self, value: Optional[pulumi.Input['ManagedKubernetesAutoModeArgs']]):
1098
+ pulumi.set(self, "auto_mode", value)
1099
+
1068
1100
  @_builtins.property
1069
1101
  @pulumi.getter(name="certificateAuthority")
1070
1102
  @_utilities.deprecated("""Field 'certificate_authority' has been deprecated from provider version 1.248.0. Please use the attribute 'certificate_authority' of new DataSource 'alicloud_cs_cluster_credential' to replace it.""")
@@ -1295,7 +1327,7 @@ class _ManagedKubernetesState:
1295
1327
  @pulumi.getter(name="maintenanceWindow")
1296
1328
  def maintenance_window(self) -> Optional[pulumi.Input['ManagedKubernetesMaintenanceWindowArgs']]:
1297
1329
  """
1298
- The cluster maintenance window,effective only in the professional managed cluster. Managed node pool will use it. See `maintenance_window` below.
1330
+ The cluster maintenance window. Managed node pool will use it. See `maintenance_window` below.
1299
1331
  """
1300
1332
  return pulumi.get(self, "maintenance_window")
1301
1333
 
@@ -1364,7 +1396,7 @@ class _ManagedKubernetesState:
1364
1396
  @pulumi.getter(name="operationPolicy")
1365
1397
  def operation_policy(self) -> Optional[pulumi.Input['ManagedKubernetesOperationPolicyArgs']]:
1366
1398
  """
1367
- The cluster automatic operation policy. See `operation_policy` below.
1399
+ The cluster automatic operation policy, only works when `maintenance_window` is enabled. See `operation_policy` below.
1368
1400
  """
1369
1401
  return pulumi.get(self, "operation_policy")
1370
1402
 
@@ -1687,6 +1719,7 @@ class ManagedKubernetes(pulumi.CustomResource):
1687
1719
  addons: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ManagedKubernetesAddonArgs', 'ManagedKubernetesAddonArgsDict']]]]] = None,
1688
1720
  api_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1689
1721
  audit_log_config: Optional[pulumi.Input[Union['ManagedKubernetesAuditLogConfigArgs', 'ManagedKubernetesAuditLogConfigArgsDict']]] = None,
1722
+ auto_mode: Optional[pulumi.Input[Union['ManagedKubernetesAutoModeArgs', 'ManagedKubernetesAutoModeArgsDict']]] = None,
1690
1723
  client_cert: Optional[pulumi.Input[_builtins.str]] = None,
1691
1724
  client_key: Optional[pulumi.Input[_builtins.str]] = None,
1692
1725
  cluster_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
@@ -1761,6 +1794,267 @@ class ManagedKubernetes(pulumi.CustomResource):
1761
1794
  > **NOTE:** From version 1.212.0, `runtime`,`enable_ssh`,`rds_instances`,`exclude_autoscaler_nodes`,`worker_number`,`worker_instance_types`,`password`,`key_name`,`kms_encrypted_password`,`kms_encryption_context`,`worker_instance_charge_type`,`worker_period`,`worker_period_unit`,`worker_auto_renew`,`worker_auto_renew_period`,`worker_disk_category`,`worker_disk_size`,`worker_data_disks`,`node_name_mode`,`node_port_range`,`os_type`,`platform`,`image_id`,`cpu_policy`,`user_data`,`taints`,`worker_disk_performance_level`,`worker_disk_snapshot_policy_id`,`install_cloud_monitor`,`kube_config`,`availability_zone` are removed.
1762
1795
  Please use resource **`cs.NodePool`** to manage your cluster worker nodes.
1763
1796
 
1797
+ ## Example Usage
1798
+
1799
+ ACK cluster
1800
+
1801
+ ```python
1802
+ import pulumi
1803
+ import json
1804
+ import pulumi_alicloud as alicloud
1805
+ import pulumi_std as std
1806
+
1807
+ config = pulumi.Config()
1808
+ name = config.get("name")
1809
+ if name is None:
1810
+ name = "tf-example"
1811
+ # Existing vpc id used to create several vswitches and other resources.
1812
+ vpc_id = config.get("vpcId")
1813
+ if vpc_id is None:
1814
+ vpc_id = ""
1815
+ # The cidr block used to launch a new vpc when 'vpc_id' is not specified.
1816
+ vpc_cidr = config.get("vpcCidr")
1817
+ if vpc_cidr is None:
1818
+ vpc_cidr = "10.0.0.0/8"
1819
+ # List of existing vswitch id.
1820
+ vswitch_ids = config.get_object("vswitchIds")
1821
+ if vswitch_ids is None:
1822
+ vswitch_ids = []
1823
+ # List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.
1824
+ vswitch_cidrs = config.get_object("vswitchCidrs")
1825
+ if vswitch_cidrs is None:
1826
+ vswitch_cidrs = [
1827
+ "10.1.0.0/16",
1828
+ "10.2.0.0/16",
1829
+ ]
1830
+ # Proxy mode is option of kube-proxy.
1831
+ proxy_mode = config.get("proxyMode")
1832
+ if proxy_mode is None:
1833
+ proxy_mode = "ipvs"
1834
+ # The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.
1835
+ service_cidr = config.get("serviceCidr")
1836
+ if service_cidr is None:
1837
+ service_cidr = "192.168.0.0/16"
1838
+ # List of existing vswitch ids for terway.
1839
+ terway_vswitch_ids = config.get_object("terwayVswitchIds")
1840
+ if terway_vswitch_ids is None:
1841
+ terway_vswitch_ids = []
1842
+ # List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.
1843
+ terway_vswitch_cidrs = config.get_object("terwayVswitchCidrs")
1844
+ if terway_vswitch_cidrs is None:
1845
+ terway_vswitch_cidrs = [
1846
+ "10.4.0.0/16",
1847
+ "10.5.0.0/16",
1848
+ ]
1849
+ enhanced = alicloud.vpc.get_enhanced_nat_available_zones()
1850
+ # If there is not specifying vpc_id, the module will launch a new vpc
1851
+ vpc = []
1852
+ for range in [{"value": i} for i in range(0, 1 if vpc_id == else 0)]:
1853
+ vpc.append(alicloud.vpc.Network(f"vpc-{range['value']}", cidr_block=vpc_cidr))
1854
+ # According to the vswitch cidr blocks to launch several vswitches
1855
+ vswitches = []
1856
+ for range in [{"value": i} for i in range(0, 0 if len(vswitch_ids) > 0 else len(vswitch_cidrs))]:
1857
+ vswitches.append(alicloud.vpc.Switch(f"vswitches-{range['value']}",
1858
+ vpc_id=std.join_output(separator="",
1859
+ input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == "" else vpc_id,
1860
+ cidr_block=vswitch_cidrs[range["value"]],
1861
+ zone_id=enhanced.zones[range["value"]].zone_id))
1862
+ # According to the vswitch cidr blocks to launch several vswitches
1863
+ terway_vswitches = []
1864
+ for range in [{"value": i} for i in range(0, 0 if len(terway_vswitch_ids) > 0 else len(terway_vswitch_cidrs))]:
1865
+ terway_vswitches.append(alicloud.vpc.Switch(f"terway_vswitches-{range['value']}",
1866
+ vpc_id=std.join_output(separator="",
1867
+ input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == "" else vpc_id,
1868
+ cidr_block=terway_vswitch_cidrs[range["value"]],
1869
+ zone_id=enhanced.zones[range["value"]].zone_id))
1870
+ k8s = alicloud.cs.ManagedKubernetes("k8s",
1871
+ name=name,
1872
+ cluster_spec="ack.pro.small",
1873
+ vswitch_ids=std.split(separator=",",
1874
+ text=std.join(separator=",",
1875
+ input=vswitch_ids).result).result if len(vswitch_ids) > 0 else [] if len(vswitch_cidrs) < 1 else std.join_output(separator=",",
1876
+ input=[__item.id for __item in vswitches]).apply(lambda invoke: std.split_output(separator=",",
1877
+ text=invoke.result)).apply(lambda invoke: invoke.result),
1878
+ pod_vswitch_ids=std.split(separator=",",
1879
+ text=std.join(separator=",",
1880
+ input=terway_vswitch_ids).result).result if len(terway_vswitch_ids) > 0 else [] if len(terway_vswitch_cidrs) < 1 else std.join_output(separator=",",
1881
+ input=[__item.id for __item in terway_vswitches]).apply(lambda invoke: std.split_output(separator=",",
1882
+ text=invoke.result)).apply(lambda invoke: invoke.result),
1883
+ new_nat_gateway=True,
1884
+ proxy_mode=proxy_mode,
1885
+ service_cidr=service_cidr,
1886
+ skip_set_certificate_authority=True,
1887
+ addons=[
1888
+ {
1889
+ "name": "terway-eniip",
1890
+ },
1891
+ {
1892
+ "name": "csi-plugin",
1893
+ },
1894
+ {
1895
+ "name": "csi-provisioner",
1896
+ },
1897
+ {
1898
+ "name": "logtail-ds",
1899
+ "config": json.dumps({
1900
+ "IngressDashboardEnabled": "true",
1901
+ }),
1902
+ },
1903
+ {
1904
+ "name": "nginx-ingress-controller",
1905
+ "config": json.dumps({
1906
+ "IngressSlbNetworkType": "internet",
1907
+ }),
1908
+ },
1909
+ {
1910
+ "name": "arms-prometheus",
1911
+ },
1912
+ {
1913
+ "name": "ack-node-problem-detector",
1914
+ "config": json.dumps({}),
1915
+ },
1916
+ ])
1917
+ ```
1918
+
1919
+ ACK Cluster with Auto Mode
1920
+
1921
+ ```python
1922
+ import pulumi
1923
+ import json
1924
+ import pulumi_alicloud as alicloud
1925
+
1926
+ config = pulumi.Config()
1927
+ name = config.get("name")
1928
+ if name is None:
1929
+ name = "auto-mode"
1930
+ # Proxy mode is option of kube-proxy.
1931
+ proxy_mode = config.get("proxyMode")
1932
+ if proxy_mode is None:
1933
+ proxy_mode = "ipvs"
1934
+ # The kubernetes service cidr block.
1935
+ service_cidr = config.get("serviceCidr")
1936
+ if service_cidr is None:
1937
+ service_cidr = "192.168.0.0/16"
1938
+ enhanced = alicloud.vpc.get_enhanced_nat_available_zones()
1939
+ auto_mode = alicloud.cs.ManagedKubernetes("auto-mode",
1940
+ name=name,
1941
+ cluster_spec="ack.pro.small",
1942
+ zone_ids=[enhanced.zones[0].zone_id],
1943
+ new_nat_gateway=True,
1944
+ is_enterprise_security_group=True,
1945
+ slb_internet_enabled=False,
1946
+ skip_set_certificate_authority=True,
1947
+ proxy_mode=proxy_mode,
1948
+ service_cidr=service_cidr,
1949
+ ip_stack="ipv4",
1950
+ auto_mode={
1951
+ "enabled": True,
1952
+ },
1953
+ maintenance_window={
1954
+ "duration": "3h",
1955
+ "weekly_period": "Monday",
1956
+ "enable": True,
1957
+ "maintenance_time": "2025-07-07T00:00:00.000+08:00",
1958
+ },
1959
+ operation_policy={
1960
+ "cluster_auto_upgrade": {
1961
+ "channel": "stable",
1962
+ "enabled": True,
1963
+ },
1964
+ },
1965
+ control_plane_log_components=[
1966
+ "apiserver",
1967
+ "kcm",
1968
+ "scheduler",
1969
+ "ccm",
1970
+ "controlplane-events",
1971
+ "alb",
1972
+ "ack-goatscaler",
1973
+ "coredns",
1974
+ ],
1975
+ control_plane_log_ttl="30",
1976
+ audit_log_config={
1977
+ "enabled": True,
1978
+ },
1979
+ addons=[
1980
+ {
1981
+ "name": "managed-metrics-server",
1982
+ },
1983
+ {
1984
+ "name": "managed-coredns",
1985
+ },
1986
+ {
1987
+ "name": "managed-security-inspector",
1988
+ },
1989
+ {
1990
+ "name": "ack-cost-exporter",
1991
+ },
1992
+ {
1993
+ "name": "terway-controlplane",
1994
+ "config": json.dumps({
1995
+ "ENITrunking": "true",
1996
+ }),
1997
+ },
1998
+ {
1999
+ "name": "terway-eniip",
2000
+ "config": json.dumps({
2001
+ "NetworkPolicy": "false",
2002
+ "ENITrunking": "true",
2003
+ "IPVlan": "false",
2004
+ }),
2005
+ },
2006
+ {
2007
+ "name": "csi-plugin",
2008
+ },
2009
+ {
2010
+ "name": "managed-csiprovisioner",
2011
+ },
2012
+ {
2013
+ "name": "storage-operator",
2014
+ "config": json.dumps({
2015
+ "CnfsOssEnable": "false",
2016
+ "CnfsNasEnable": "false",
2017
+ }),
2018
+ },
2019
+ {
2020
+ "name": "loongcollector",
2021
+ "config": json.dumps({
2022
+ "IngressDashboardEnabled": "true",
2023
+ }),
2024
+ },
2025
+ {
2026
+ "name": "ack-node-problem-detector",
2027
+ "config": json.dumps({
2028
+ "sls_project_name": "",
2029
+ }),
2030
+ },
2031
+ {
2032
+ "name": "nginx-ingress-controller",
2033
+ "disabled": True,
2034
+ },
2035
+ {
2036
+ "name": "alb-ingress-controller",
2037
+ "config": json.dumps({
2038
+ "albIngress": {
2039
+ "CreateDefaultALBConfig": False,
2040
+ },
2041
+ }),
2042
+ },
2043
+ {
2044
+ "name": "arms-prometheus",
2045
+ "config": json.dumps({
2046
+ "prometheusMode": "default",
2047
+ }),
2048
+ },
2049
+ {
2050
+ "name": "alicloud-monitor-controller",
2051
+ },
2052
+ {
2053
+ "name": "managed-aliyun-acr-credential-helper",
2054
+ },
2055
+ ])
2056
+ ```
2057
+
1764
2058
  ## Import
1765
2059
 
1766
2060
  Kubernetes managed cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.
@@ -1774,6 +2068,7 @@ class ManagedKubernetes(pulumi.CustomResource):
1774
2068
  :param pulumi.Input[Sequence[pulumi.Input[Union['ManagedKubernetesAddonArgs', 'ManagedKubernetesAddonArgsDict']]]] addons: The addon you want to install in cluster. See `addons` below. Only works for **Create** Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
1775
2069
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] api_audiences: A list of API audiences for [Service Account Token Volume Projection](https://www.alibabacloud.com/help/doc-detail/160384.htm). Set this to `["https://kubernetes.default.svc"]` if you want to enable the Token Volume Projection feature (requires specifying `service_account_issuer` as well. From cluster version 1.22, Service Account Token Volume Projection will be enabled by default.
1776
2070
  :param pulumi.Input[Union['ManagedKubernetesAuditLogConfigArgs', 'ManagedKubernetesAuditLogConfigArgsDict']] audit_log_config: Audit log configuration. See `audit_log_config` below.
2071
+ :param pulumi.Input[Union['ManagedKubernetesAutoModeArgs', 'ManagedKubernetesAutoModeArgsDict']] auto_mode: Auto mode cluster configuration. See `auto_mode` below.
1777
2072
  :param pulumi.Input[_builtins.str] client_cert: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.client_cert attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/client-cert.pem) for replace it.
1778
2073
  :param pulumi.Input[_builtins.str] client_key: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.client_key attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/client-key.pem) for replace it.
1779
2074
  :param pulumi.Input[_builtins.str] cluster_ca_cert: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.cluster_cert attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/cluster-ca-cert.pem) for replace it.
@@ -1795,11 +2090,11 @@ class ManagedKubernetes(pulumi.CustomResource):
1795
2090
  :param pulumi.Input[_builtins.str] ip_stack: The IP address family that the cluster network uses. Valid values:
1796
2091
  :param pulumi.Input[_builtins.bool] is_enterprise_security_group: Enable to create advanced security group. default: false. Only works for **Create** Operation. See [Advanced security group](https://www.alibabacloud.com/help/doc-detail/120621.htm).
1797
2092
  :param pulumi.Input[_builtins.str] load_balancer_spec: The cluster api server load balancer instance specification. For more information on how to select a LB instance specification, see [SLB instance overview](https://help.aliyun.com/document_detail/85931.html). Only works for **Create** Operation. The spec will not take effect because the charge of the load balancer has been changed to PayByCLCU.
1798
- :param pulumi.Input[Union['ManagedKubernetesMaintenanceWindowArgs', 'ManagedKubernetesMaintenanceWindowArgsDict']] maintenance_window: The cluster maintenance window,effective only in the professional managed cluster. Managed node pool will use it. See `maintenance_window` below.
2093
+ :param pulumi.Input[Union['ManagedKubernetesMaintenanceWindowArgs', 'ManagedKubernetesMaintenanceWindowArgsDict']] maintenance_window: The cluster maintenance window. Managed node pool will use it. See `maintenance_window` below.
1799
2094
  :param pulumi.Input[_builtins.str] name: The kubernetes cluster's name. It is unique in one Alicloud account.
1800
2095
  :param pulumi.Input[_builtins.bool] new_nat_gateway: Whether to create a new nat gateway while creating kubernetes cluster. Default to true. Then openapi in Alibaba Cloud are not all on intranet, So turn this option on is a good choice. Only works for **Create** Operation.
1801
2096
  :param pulumi.Input[_builtins.int] node_cidr_mask: The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24
1802
- :param pulumi.Input[Union['ManagedKubernetesOperationPolicyArgs', 'ManagedKubernetesOperationPolicyArgsDict']] operation_policy: The cluster automatic operation policy. See `operation_policy` below.
2097
+ :param pulumi.Input[Union['ManagedKubernetesOperationPolicyArgs', 'ManagedKubernetesOperationPolicyArgsDict']] operation_policy: The cluster automatic operation policy, only works when `maintenance_window` is enabled. See `operation_policy` below.
1803
2098
  :param pulumi.Input[_builtins.str] pod_cidr: [Flannel Specific] The CIDR block for the pod network when using Flannel.
1804
2099
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pod_vswitch_ids: [Terway Specific] The vswitches for the pod network when using Terway. It is recommended that `pod_vswitch_ids` is not belong to `vswitch_ids` but must be in same availability zones. Only works for **Create** Operation.
1805
2100
  :param pulumi.Input[_builtins.str] profile: The profile of cluster. Valid values:
@@ -1876,6 +2171,267 @@ class ManagedKubernetes(pulumi.CustomResource):
1876
2171
  > **NOTE:** From version 1.212.0, `runtime`,`enable_ssh`,`rds_instances`,`exclude_autoscaler_nodes`,`worker_number`,`worker_instance_types`,`password`,`key_name`,`kms_encrypted_password`,`kms_encryption_context`,`worker_instance_charge_type`,`worker_period`,`worker_period_unit`,`worker_auto_renew`,`worker_auto_renew_period`,`worker_disk_category`,`worker_disk_size`,`worker_data_disks`,`node_name_mode`,`node_port_range`,`os_type`,`platform`,`image_id`,`cpu_policy`,`user_data`,`taints`,`worker_disk_performance_level`,`worker_disk_snapshot_policy_id`,`install_cloud_monitor`,`kube_config`,`availability_zone` are removed.
1877
2172
  Please use resource **`cs.NodePool`** to manage your cluster worker nodes.
1878
2173
 
2174
+ ## Example Usage
2175
+
2176
+ ACK cluster
2177
+
2178
+ ```python
2179
+ import pulumi
2180
+ import json
2181
+ import pulumi_alicloud as alicloud
2182
+ import pulumi_std as std
2183
+
2184
+ config = pulumi.Config()
2185
+ name = config.get("name")
2186
+ if name is None:
2187
+ name = "tf-example"
2188
+ # Existing vpc id used to create several vswitches and other resources.
2189
+ vpc_id = config.get("vpcId")
2190
+ if vpc_id is None:
2191
+ vpc_id = ""
2192
+ # The cidr block used to launch a new vpc when 'vpc_id' is not specified.
2193
+ vpc_cidr = config.get("vpcCidr")
2194
+ if vpc_cidr is None:
2195
+ vpc_cidr = "10.0.0.0/8"
2196
+ # List of existing vswitch id.
2197
+ vswitch_ids = config.get_object("vswitchIds")
2198
+ if vswitch_ids is None:
2199
+ vswitch_ids = []
2200
+ # List of cidr blocks used to create several new vswitches when 'vswitch_ids' is not specified.
2201
+ vswitch_cidrs = config.get_object("vswitchCidrs")
2202
+ if vswitch_cidrs is None:
2203
+ vswitch_cidrs = [
2204
+ "10.1.0.0/16",
2205
+ "10.2.0.0/16",
2206
+ ]
2207
+ # Proxy mode is option of kube-proxy.
2208
+ proxy_mode = config.get("proxyMode")
2209
+ if proxy_mode is None:
2210
+ proxy_mode = "ipvs"
2211
+ # The kubernetes service cidr block. It cannot be equals to vpc's or vswitch's or pod's and cannot be in them.
2212
+ service_cidr = config.get("serviceCidr")
2213
+ if service_cidr is None:
2214
+ service_cidr = "192.168.0.0/16"
2215
+ # List of existing vswitch ids for terway.
2216
+ terway_vswitch_ids = config.get_object("terwayVswitchIds")
2217
+ if terway_vswitch_ids is None:
2218
+ terway_vswitch_ids = []
2219
+ # List of cidr blocks used to create several new vswitches when 'terway_vswitch_cidrs' is not specified.
2220
+ terway_vswitch_cidrs = config.get_object("terwayVswitchCidrs")
2221
+ if terway_vswitch_cidrs is None:
2222
+ terway_vswitch_cidrs = [
2223
+ "10.4.0.0/16",
2224
+ "10.5.0.0/16",
2225
+ ]
2226
+ enhanced = alicloud.vpc.get_enhanced_nat_available_zones()
2227
+ # If there is not specifying vpc_id, the module will launch a new vpc
2228
+ vpc = []
2229
+ for range in [{"value": i} for i in range(0, 1 if vpc_id == else 0)]:
2230
+ vpc.append(alicloud.vpc.Network(f"vpc-{range['value']}", cidr_block=vpc_cidr))
2231
+ # According to the vswitch cidr blocks to launch several vswitches
2232
+ vswitches = []
2233
+ for range in [{"value": i} for i in range(0, 0 if len(vswitch_ids) > 0 else len(vswitch_cidrs))]:
2234
+ vswitches.append(alicloud.vpc.Switch(f"vswitches-{range['value']}",
2235
+ vpc_id=std.join_output(separator="",
2236
+ input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == "" else vpc_id,
2237
+ cidr_block=vswitch_cidrs[range["value"]],
2238
+ zone_id=enhanced.zones[range["value"]].zone_id))
2239
+ # According to the vswitch cidr blocks to launch several vswitches
2240
+ terway_vswitches = []
2241
+ for range in [{"value": i} for i in range(0, 0 if len(terway_vswitch_ids) > 0 else len(terway_vswitch_cidrs))]:
2242
+ terway_vswitches.append(alicloud.vpc.Switch(f"terway_vswitches-{range['value']}",
2243
+ vpc_id=std.join_output(separator="",
2244
+ input=[__item.id for __item in vpc]).apply(lambda invoke: invoke.result) if vpc_id == "" else vpc_id,
2245
+ cidr_block=terway_vswitch_cidrs[range["value"]],
2246
+ zone_id=enhanced.zones[range["value"]].zone_id))
2247
+ k8s = alicloud.cs.ManagedKubernetes("k8s",
2248
+ name=name,
2249
+ cluster_spec="ack.pro.small",
2250
+ vswitch_ids=std.split(separator=",",
2251
+ text=std.join(separator=",",
2252
+ input=vswitch_ids).result).result if len(vswitch_ids) > 0 else [] if len(vswitch_cidrs) < 1 else std.join_output(separator=",",
2253
+ input=[__item.id for __item in vswitches]).apply(lambda invoke: std.split_output(separator=",",
2254
+ text=invoke.result)).apply(lambda invoke: invoke.result),
2255
+ pod_vswitch_ids=std.split(separator=",",
2256
+ text=std.join(separator=",",
2257
+ input=terway_vswitch_ids).result).result if len(terway_vswitch_ids) > 0 else [] if len(terway_vswitch_cidrs) < 1 else std.join_output(separator=",",
2258
+ input=[__item.id for __item in terway_vswitches]).apply(lambda invoke: std.split_output(separator=",",
2259
+ text=invoke.result)).apply(lambda invoke: invoke.result),
2260
+ new_nat_gateway=True,
2261
+ proxy_mode=proxy_mode,
2262
+ service_cidr=service_cidr,
2263
+ skip_set_certificate_authority=True,
2264
+ addons=[
2265
+ {
2266
+ "name": "terway-eniip",
2267
+ },
2268
+ {
2269
+ "name": "csi-plugin",
2270
+ },
2271
+ {
2272
+ "name": "csi-provisioner",
2273
+ },
2274
+ {
2275
+ "name": "logtail-ds",
2276
+ "config": json.dumps({
2277
+ "IngressDashboardEnabled": "true",
2278
+ }),
2279
+ },
2280
+ {
2281
+ "name": "nginx-ingress-controller",
2282
+ "config": json.dumps({
2283
+ "IngressSlbNetworkType": "internet",
2284
+ }),
2285
+ },
2286
+ {
2287
+ "name": "arms-prometheus",
2288
+ },
2289
+ {
2290
+ "name": "ack-node-problem-detector",
2291
+ "config": json.dumps({}),
2292
+ },
2293
+ ])
2294
+ ```
2295
+
2296
+ ACK Cluster with Auto Mode
2297
+
2298
+ ```python
2299
+ import pulumi
2300
+ import json
2301
+ import pulumi_alicloud as alicloud
2302
+
2303
+ config = pulumi.Config()
2304
+ name = config.get("name")
2305
+ if name is None:
2306
+ name = "auto-mode"
2307
+ # Proxy mode is option of kube-proxy.
2308
+ proxy_mode = config.get("proxyMode")
2309
+ if proxy_mode is None:
2310
+ proxy_mode = "ipvs"
2311
+ # The kubernetes service cidr block.
2312
+ service_cidr = config.get("serviceCidr")
2313
+ if service_cidr is None:
2314
+ service_cidr = "192.168.0.0/16"
2315
+ enhanced = alicloud.vpc.get_enhanced_nat_available_zones()
2316
+ auto_mode = alicloud.cs.ManagedKubernetes("auto-mode",
2317
+ name=name,
2318
+ cluster_spec="ack.pro.small",
2319
+ zone_ids=[enhanced.zones[0].zone_id],
2320
+ new_nat_gateway=True,
2321
+ is_enterprise_security_group=True,
2322
+ slb_internet_enabled=False,
2323
+ skip_set_certificate_authority=True,
2324
+ proxy_mode=proxy_mode,
2325
+ service_cidr=service_cidr,
2326
+ ip_stack="ipv4",
2327
+ auto_mode={
2328
+ "enabled": True,
2329
+ },
2330
+ maintenance_window={
2331
+ "duration": "3h",
2332
+ "weekly_period": "Monday",
2333
+ "enable": True,
2334
+ "maintenance_time": "2025-07-07T00:00:00.000+08:00",
2335
+ },
2336
+ operation_policy={
2337
+ "cluster_auto_upgrade": {
2338
+ "channel": "stable",
2339
+ "enabled": True,
2340
+ },
2341
+ },
2342
+ control_plane_log_components=[
2343
+ "apiserver",
2344
+ "kcm",
2345
+ "scheduler",
2346
+ "ccm",
2347
+ "controlplane-events",
2348
+ "alb",
2349
+ "ack-goatscaler",
2350
+ "coredns",
2351
+ ],
2352
+ control_plane_log_ttl="30",
2353
+ audit_log_config={
2354
+ "enabled": True,
2355
+ },
2356
+ addons=[
2357
+ {
2358
+ "name": "managed-metrics-server",
2359
+ },
2360
+ {
2361
+ "name": "managed-coredns",
2362
+ },
2363
+ {
2364
+ "name": "managed-security-inspector",
2365
+ },
2366
+ {
2367
+ "name": "ack-cost-exporter",
2368
+ },
2369
+ {
2370
+ "name": "terway-controlplane",
2371
+ "config": json.dumps({
2372
+ "ENITrunking": "true",
2373
+ }),
2374
+ },
2375
+ {
2376
+ "name": "terway-eniip",
2377
+ "config": json.dumps({
2378
+ "NetworkPolicy": "false",
2379
+ "ENITrunking": "true",
2380
+ "IPVlan": "false",
2381
+ }),
2382
+ },
2383
+ {
2384
+ "name": "csi-plugin",
2385
+ },
2386
+ {
2387
+ "name": "managed-csiprovisioner",
2388
+ },
2389
+ {
2390
+ "name": "storage-operator",
2391
+ "config": json.dumps({
2392
+ "CnfsOssEnable": "false",
2393
+ "CnfsNasEnable": "false",
2394
+ }),
2395
+ },
2396
+ {
2397
+ "name": "loongcollector",
2398
+ "config": json.dumps({
2399
+ "IngressDashboardEnabled": "true",
2400
+ }),
2401
+ },
2402
+ {
2403
+ "name": "ack-node-problem-detector",
2404
+ "config": json.dumps({
2405
+ "sls_project_name": "",
2406
+ }),
2407
+ },
2408
+ {
2409
+ "name": "nginx-ingress-controller",
2410
+ "disabled": True,
2411
+ },
2412
+ {
2413
+ "name": "alb-ingress-controller",
2414
+ "config": json.dumps({
2415
+ "albIngress": {
2416
+ "CreateDefaultALBConfig": False,
2417
+ },
2418
+ }),
2419
+ },
2420
+ {
2421
+ "name": "arms-prometheus",
2422
+ "config": json.dumps({
2423
+ "prometheusMode": "default",
2424
+ }),
2425
+ },
2426
+ {
2427
+ "name": "alicloud-monitor-controller",
2428
+ },
2429
+ {
2430
+ "name": "managed-aliyun-acr-credential-helper",
2431
+ },
2432
+ ])
2433
+ ```
2434
+
1879
2435
  ## Import
1880
2436
 
1881
2437
  Kubernetes managed cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of `pulumi preview`.
@@ -1902,6 +2458,7 @@ class ManagedKubernetes(pulumi.CustomResource):
1902
2458
  addons: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ManagedKubernetesAddonArgs', 'ManagedKubernetesAddonArgsDict']]]]] = None,
1903
2459
  api_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1904
2460
  audit_log_config: Optional[pulumi.Input[Union['ManagedKubernetesAuditLogConfigArgs', 'ManagedKubernetesAuditLogConfigArgsDict']]] = None,
2461
+ auto_mode: Optional[pulumi.Input[Union['ManagedKubernetesAutoModeArgs', 'ManagedKubernetesAutoModeArgsDict']]] = None,
1905
2462
  client_cert: Optional[pulumi.Input[_builtins.str]] = None,
1906
2463
  client_key: Optional[pulumi.Input[_builtins.str]] = None,
1907
2464
  cluster_ca_cert: Optional[pulumi.Input[_builtins.str]] = None,
@@ -1954,6 +2511,7 @@ class ManagedKubernetes(pulumi.CustomResource):
1954
2511
  __props__.__dict__["addons"] = addons
1955
2512
  __props__.__dict__["api_audiences"] = api_audiences
1956
2513
  __props__.__dict__["audit_log_config"] = audit_log_config
2514
+ __props__.__dict__["auto_mode"] = auto_mode
1957
2515
  __props__.__dict__["client_cert"] = client_cert
1958
2516
  __props__.__dict__["client_key"] = client_key
1959
2517
  __props__.__dict__["cluster_ca_cert"] = cluster_ca_cert
@@ -2016,6 +2574,7 @@ class ManagedKubernetes(pulumi.CustomResource):
2016
2574
  addons: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ManagedKubernetesAddonArgs', 'ManagedKubernetesAddonArgsDict']]]]] = None,
2017
2575
  api_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
2018
2576
  audit_log_config: Optional[pulumi.Input[Union['ManagedKubernetesAuditLogConfigArgs', 'ManagedKubernetesAuditLogConfigArgsDict']]] = None,
2577
+ auto_mode: Optional[pulumi.Input[Union['ManagedKubernetesAutoModeArgs', 'ManagedKubernetesAutoModeArgsDict']]] = None,
2019
2578
  certificate_authority: Optional[pulumi.Input[Union['ManagedKubernetesCertificateAuthorityArgs', 'ManagedKubernetesCertificateAuthorityArgsDict']]] = None,
2020
2579
  client_cert: Optional[pulumi.Input[_builtins.str]] = None,
2021
2580
  client_key: Optional[pulumi.Input[_builtins.str]] = None,
@@ -2075,6 +2634,7 @@ class ManagedKubernetes(pulumi.CustomResource):
2075
2634
  :param pulumi.Input[Sequence[pulumi.Input[Union['ManagedKubernetesAddonArgs', 'ManagedKubernetesAddonArgsDict']]]] addons: The addon you want to install in cluster. See `addons` below. Only works for **Create** Operation, use resource cs_kubernetes_addon to manage addons if cluster is created.
2076
2635
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] api_audiences: A list of API audiences for [Service Account Token Volume Projection](https://www.alibabacloud.com/help/doc-detail/160384.htm). Set this to `["https://kubernetes.default.svc"]` if you want to enable the Token Volume Projection feature (requires specifying `service_account_issuer` as well. From cluster version 1.22, Service Account Token Volume Projection will be enabled by default.
2077
2636
  :param pulumi.Input[Union['ManagedKubernetesAuditLogConfigArgs', 'ManagedKubernetesAuditLogConfigArgsDict']] audit_log_config: Audit log configuration. See `audit_log_config` below.
2637
+ :param pulumi.Input[Union['ManagedKubernetesAutoModeArgs', 'ManagedKubernetesAutoModeArgsDict']] auto_mode: Auto mode cluster configuration. See `auto_mode` below.
2078
2638
  :param pulumi.Input[Union['ManagedKubernetesCertificateAuthorityArgs', 'ManagedKubernetesCertificateAuthorityArgsDict']] certificate_authority: (Map, Deprecated from v1.248.0) Nested attribute containing certificate authority data for your cluster. Please use the attribute certificate_authority of new DataSource `cs_get_cluster_credential` to replace it.
2079
2639
  :param pulumi.Input[_builtins.str] client_cert: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.client_cert attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/client-cert.pem) for replace it.
2080
2640
  :param pulumi.Input[_builtins.str] client_key: From version 1.248.0, new DataSource `cs_get_cluster_credential` is recommended to manage cluster's kubeconfig, you can also save the certificate_authority.client_key attribute content of new DataSource `cs_get_cluster_credential` to an appropriate path(like ~/.kube/client-key.pem) for replace it.
@@ -2098,12 +2658,12 @@ class ManagedKubernetes(pulumi.CustomResource):
2098
2658
  :param pulumi.Input[_builtins.str] ip_stack: The IP address family that the cluster network uses. Valid values:
2099
2659
  :param pulumi.Input[_builtins.bool] is_enterprise_security_group: Enable to create advanced security group. default: false. Only works for **Create** Operation. See [Advanced security group](https://www.alibabacloud.com/help/doc-detail/120621.htm).
2100
2660
  :param pulumi.Input[_builtins.str] load_balancer_spec: The cluster api server load balancer instance specification. For more information on how to select a LB instance specification, see [SLB instance overview](https://help.aliyun.com/document_detail/85931.html). Only works for **Create** Operation. The spec will not take effect because the charge of the load balancer has been changed to PayByCLCU.
2101
- :param pulumi.Input[Union['ManagedKubernetesMaintenanceWindowArgs', 'ManagedKubernetesMaintenanceWindowArgsDict']] maintenance_window: The cluster maintenance window,effective only in the professional managed cluster. Managed node pool will use it. See `maintenance_window` below.
2661
+ :param pulumi.Input[Union['ManagedKubernetesMaintenanceWindowArgs', 'ManagedKubernetesMaintenanceWindowArgsDict']] maintenance_window: The cluster maintenance window. Managed node pool will use it. See `maintenance_window` below.
2102
2662
  :param pulumi.Input[_builtins.str] name: The kubernetes cluster's name. It is unique in one Alicloud account.
2103
2663
  :param pulumi.Input[_builtins.str] nat_gateway_id: The ID of nat gateway used to launch kubernetes cluster.
2104
2664
  :param pulumi.Input[_builtins.bool] new_nat_gateway: Whether to create a new nat gateway while creating kubernetes cluster. Default to true. Then openapi in Alibaba Cloud are not all on intranet, So turn this option on is a good choice. Only works for **Create** Operation.
2105
2665
  :param pulumi.Input[_builtins.int] node_cidr_mask: The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24
2106
- :param pulumi.Input[Union['ManagedKubernetesOperationPolicyArgs', 'ManagedKubernetesOperationPolicyArgsDict']] operation_policy: The cluster automatic operation policy. See `operation_policy` below.
2666
+ :param pulumi.Input[Union['ManagedKubernetesOperationPolicyArgs', 'ManagedKubernetesOperationPolicyArgsDict']] operation_policy: The cluster automatic operation policy, only works when `maintenance_window` is enabled. See `operation_policy` below.
2107
2667
  :param pulumi.Input[_builtins.str] pod_cidr: [Flannel Specific] The CIDR block for the pod network when using Flannel.
2108
2668
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pod_vswitch_ids: [Terway Specific] The vswitches for the pod network when using Terway. It is recommended that `pod_vswitch_ids` is not belong to `vswitch_ids` but must be in same availability zones. Only works for **Create** Operation.
2109
2669
  :param pulumi.Input[_builtins.str] profile: The profile of cluster. Valid values:
@@ -2154,6 +2714,7 @@ class ManagedKubernetes(pulumi.CustomResource):
2154
2714
  __props__.__dict__["addons"] = addons
2155
2715
  __props__.__dict__["api_audiences"] = api_audiences
2156
2716
  __props__.__dict__["audit_log_config"] = audit_log_config
2717
+ __props__.__dict__["auto_mode"] = auto_mode
2157
2718
  __props__.__dict__["certificate_authority"] = certificate_authority
2158
2719
  __props__.__dict__["client_cert"] = client_cert
2159
2720
  __props__.__dict__["client_key"] = client_key
@@ -2229,6 +2790,14 @@ class ManagedKubernetes(pulumi.CustomResource):
2229
2790
  """
2230
2791
  return pulumi.get(self, "audit_log_config")
2231
2792
 
2793
+ @_builtins.property
2794
+ @pulumi.getter(name="autoMode")
2795
+ def auto_mode(self) -> pulumi.Output[Optional['outputs.ManagedKubernetesAutoMode']]:
2796
+ """
2797
+ Auto mode cluster configuration. See `auto_mode` below.
2798
+ """
2799
+ return pulumi.get(self, "auto_mode")
2800
+
2232
2801
  @_builtins.property
2233
2802
  @pulumi.getter(name="certificateAuthority")
2234
2803
  @_utilities.deprecated("""Field 'certificate_authority' has been deprecated from provider version 1.248.0. Please use the attribute 'certificate_authority' of new DataSource 'alicloud_cs_cluster_credential' to replace it.""")
@@ -2387,7 +2956,7 @@ class ManagedKubernetes(pulumi.CustomResource):
2387
2956
  @pulumi.getter(name="maintenanceWindow")
2388
2957
  def maintenance_window(self) -> pulumi.Output['outputs.ManagedKubernetesMaintenanceWindow']:
2389
2958
  """
2390
- The cluster maintenance window,effective only in the professional managed cluster. Managed node pool will use it. See `maintenance_window` below.
2959
+ The cluster maintenance window. Managed node pool will use it. See `maintenance_window` below.
2391
2960
  """
2392
2961
  return pulumi.get(self, "maintenance_window")
2393
2962
 
@@ -2432,7 +3001,7 @@ class ManagedKubernetes(pulumi.CustomResource):
2432
3001
  @pulumi.getter(name="operationPolicy")
2433
3002
  def operation_policy(self) -> pulumi.Output['outputs.ManagedKubernetesOperationPolicy']:
2434
3003
  """
2435
- The cluster automatic operation policy. See `operation_policy` below.
3004
+ The cluster automatic operation policy, only works when `maintenance_window` is enabled. See `operation_policy` below.
2436
3005
  """
2437
3006
  return pulumi.get(self, "operation_policy")
2438
3007