aws-cdk-lib 2.173.4__py3-none-any.whl → 2.174.1__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 aws-cdk-lib might be problematic. Click here for more details.

Files changed (91) hide show
  1. aws_cdk/__init__.py +210 -181
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.173.4.jsii.tgz → aws-cdk-lib@2.174.1.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +18 -0
  5. aws_cdk/aws_apigateway/__init__.py +127 -168
  6. aws_cdk/aws_appconfig/__init__.py +498 -1
  7. aws_cdk/aws_applicationautoscaling/__init__.py +4 -1
  8. aws_cdk/aws_appsync/__init__.py +4 -0
  9. aws_cdk/aws_autoscaling/__init__.py +96 -0
  10. aws_cdk/aws_batch/__init__.py +662 -237
  11. aws_cdk/aws_bedrock/__init__.py +2122 -181
  12. aws_cdk/aws_cassandra/__init__.py +476 -4
  13. aws_cdk/aws_cleanrooms/__init__.py +1227 -20
  14. aws_cdk/aws_cloudformation/__init__.py +172 -169
  15. aws_cdk/aws_cloudfront/__init__.py +773 -26
  16. aws_cdk/aws_cloudtrail/__init__.py +8 -2
  17. aws_cdk/aws_codebuild/__init__.py +83 -0
  18. aws_cdk/aws_codepipeline/__init__.py +2 -1
  19. aws_cdk/aws_cognito/__init__.py +232 -200
  20. aws_cdk/aws_connect/__init__.py +187 -36
  21. aws_cdk/aws_connectcampaignsv2/__init__.py +106 -12
  22. aws_cdk/aws_databrew/__init__.py +69 -1
  23. aws_cdk/aws_datasync/__init__.py +33 -28
  24. aws_cdk/aws_datazone/__init__.py +141 -41
  25. aws_cdk/aws_dlm/__init__.py +20 -10
  26. aws_cdk/aws_dms/__init__.py +736 -22
  27. aws_cdk/aws_docdb/__init__.py +134 -0
  28. aws_cdk/aws_dynamodb/__init__.py +76 -4
  29. aws_cdk/aws_ec2/__init__.py +1233 -65
  30. aws_cdk/aws_ecr/__init__.py +31 -0
  31. aws_cdk/aws_ecr_assets/__init__.py +5 -0
  32. aws_cdk/aws_ecs/__init__.py +88 -11
  33. aws_cdk/aws_efs/__init__.py +15 -8
  34. aws_cdk/aws_eks/__init__.py +114 -45
  35. aws_cdk/aws_elasticloadbalancingv2/__init__.py +2 -2
  36. aws_cdk/aws_emrserverless/__init__.py +143 -0
  37. aws_cdk/aws_events/__init__.py +50 -30
  38. aws_cdk/aws_fis/__init__.py +33 -33
  39. aws_cdk/aws_fsx/__init__.py +20 -10
  40. aws_cdk/aws_glue/__init__.py +34 -11
  41. aws_cdk/aws_greengrass/__init__.py +8 -8
  42. aws_cdk/aws_guardduty/__init__.py +1 -1
  43. aws_cdk/aws_imagebuilder/__init__.py +45 -47
  44. aws_cdk/aws_internetmonitor/__init__.py +3 -3
  45. aws_cdk/aws_invoicing/__init__.py +55 -30
  46. aws_cdk/aws_iot/__init__.py +1117 -4
  47. aws_cdk/aws_iot1click/__init__.py +17 -7
  48. aws_cdk/aws_kendra/__init__.py +4 -6
  49. aws_cdk/aws_lambda/__init__.py +15 -1
  50. aws_cdk/aws_logs/__init__.py +4011 -86
  51. aws_cdk/aws_m2/__init__.py +41 -0
  52. aws_cdk/aws_mediaconnect/__init__.py +202 -7
  53. aws_cdk/aws_mediaconvert/__init__.py +39 -0
  54. aws_cdk/aws_memorydb/__init__.py +22 -22
  55. aws_cdk/aws_networkmanager/__init__.py +758 -0
  56. aws_cdk/aws_opensearchservice/__init__.py +222 -0
  57. aws_cdk/aws_organizations/__init__.py +5 -3
  58. aws_cdk/aws_pcs/__init__.py +3038 -0
  59. aws_cdk/aws_pipes/__init__.py +10 -10
  60. aws_cdk/aws_qbusiness/__init__.py +415 -140
  61. aws_cdk/aws_quicksight/__init__.py +59795 -49748
  62. aws_cdk/aws_ram/__init__.py +5 -11
  63. aws_cdk/aws_rbin/__init__.py +28 -16
  64. aws_cdk/aws_rds/__init__.py +186 -31
  65. aws_cdk/aws_redshiftserverless/__init__.py +156 -0
  66. aws_cdk/aws_resiliencehub/__init__.py +2 -1
  67. aws_cdk/aws_route53_targets/__init__.py +5 -5
  68. aws_cdk/aws_s3/__init__.py +25 -15
  69. aws_cdk/aws_s3express/__init__.py +7 -7
  70. aws_cdk/aws_s3tables/__init__.py +683 -0
  71. aws_cdk/aws_sagemaker/__init__.py +580 -195
  72. aws_cdk/aws_secretsmanager/__init__.py +2 -0
  73. aws_cdk/aws_securityhub/__init__.py +41 -165
  74. aws_cdk/aws_servicediscovery/__init__.py +10 -3
  75. aws_cdk/aws_ses/__init__.py +190 -5
  76. aws_cdk/aws_sns/__init__.py +7 -3
  77. aws_cdk/aws_synthetics/__init__.py +29 -4
  78. aws_cdk/aws_transfer/__init__.py +8 -0
  79. aws_cdk/aws_vpclattice/__init__.py +147 -77
  80. aws_cdk/aws_wafv2/__init__.py +20 -8
  81. aws_cdk/aws_wisdom/__init__.py +162 -111
  82. aws_cdk/aws_workspaces/__init__.py +10 -4
  83. aws_cdk/cloud_assembly_schema/__init__.py +22 -0
  84. aws_cdk/custom_resources/__init__.py +31 -0
  85. aws_cdk/cx_api/__init__.py +19 -0
  86. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/LICENSE +1 -1
  87. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/METADATA +2 -2
  88. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/NOTICE +1 -1
  89. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/RECORD +91 -89
  90. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/WHEEL +0 -0
  91. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/top_level.txt +0 -0
@@ -2002,6 +2002,7 @@ from .. import (
2002
2002
  from ..aws_autoscaling import (
2003
2003
  AutoScalingGroup as _AutoScalingGroup_c547a7b9,
2004
2004
  BlockDevice as _BlockDevice_0cfc0568,
2005
+ CapacityDistributionStrategy as _CapacityDistributionStrategy_2393ccfe,
2005
2006
  CommonAutoScalingGroupProps as _CommonAutoScalingGroupProps_808bbf2d,
2006
2007
  GroupMetrics as _GroupMetrics_7cdf729b,
2007
2008
  HealthCheck as _HealthCheck_03a4bd5a,
@@ -3391,6 +3392,7 @@ class AuthenticationMode(enum.Enum):
3391
3392
  "allow_all_outbound": "allowAllOutbound",
3392
3393
  "associate_public_ip_address": "associatePublicIpAddress",
3393
3394
  "auto_scaling_group_name": "autoScalingGroupName",
3395
+ "az_capacity_distribution_strategy": "azCapacityDistributionStrategy",
3394
3396
  "block_devices": "blockDevices",
3395
3397
  "capacity_rebalance": "capacityRebalance",
3396
3398
  "cooldown": "cooldown",
@@ -3429,6 +3431,7 @@ class AutoScalingGroupCapacityOptions(_CommonAutoScalingGroupProps_808bbf2d):
3429
3431
  allow_all_outbound: typing.Optional[builtins.bool] = None,
3430
3432
  associate_public_ip_address: typing.Optional[builtins.bool] = None,
3431
3433
  auto_scaling_group_name: typing.Optional[builtins.str] = None,
3434
+ az_capacity_distribution_strategy: typing.Optional[_CapacityDistributionStrategy_2393ccfe] = None,
3432
3435
  block_devices: typing.Optional[typing.Sequence[typing.Union[_BlockDevice_0cfc0568, typing.Dict[builtins.str, typing.Any]]]] = None,
3433
3436
  capacity_rebalance: typing.Optional[builtins.bool] = None,
3434
3437
  cooldown: typing.Optional[_Duration_4839e8c3] = None,
@@ -3464,6 +3467,7 @@ class AutoScalingGroupCapacityOptions(_CommonAutoScalingGroupProps_808bbf2d):
3464
3467
  :param allow_all_outbound: Whether the instances can initiate connections to anywhere by default. Default: true
3465
3468
  :param associate_public_ip_address: Whether instances in the Auto Scaling Group should have public IP addresses associated with them. ``launchTemplate`` and ``mixedInstancesPolicy`` must not be specified when this property is specified Default: - Use subnet setting.
3466
3469
  :param auto_scaling_group_name: The name of the Auto Scaling group. This name must be unique per Region per account. Default: - Auto generated by CloudFormation
3470
+ :param az_capacity_distribution_strategy: The strategy for distributing instances across Availability Zones. Default: None
3467
3471
  :param block_devices: Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes. Each instance that is launched has an associated root device volume, either an Amazon EBS volume or an instance store volume. You can use block device mappings to specify additional EBS volumes or instance store volumes to attach to an instance when it is launched. ``launchTemplate`` and ``mixedInstancesPolicy`` must not be specified when this property is specified Default: - Uses the block device mapping of the AMI
3468
3472
  :param capacity_rebalance: Indicates whether Capacity Rebalancing is enabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. Default: false
3469
3473
  :param cooldown: Default scaling cooldown for this AutoScalingGroup. Default: Duration.minutes(5)
@@ -3515,6 +3519,7 @@ class AutoScalingGroupCapacityOptions(_CommonAutoScalingGroupProps_808bbf2d):
3515
3519
  check_type(argname="argument allow_all_outbound", value=allow_all_outbound, expected_type=type_hints["allow_all_outbound"])
3516
3520
  check_type(argname="argument associate_public_ip_address", value=associate_public_ip_address, expected_type=type_hints["associate_public_ip_address"])
3517
3521
  check_type(argname="argument auto_scaling_group_name", value=auto_scaling_group_name, expected_type=type_hints["auto_scaling_group_name"])
3522
+ check_type(argname="argument az_capacity_distribution_strategy", value=az_capacity_distribution_strategy, expected_type=type_hints["az_capacity_distribution_strategy"])
3518
3523
  check_type(argname="argument block_devices", value=block_devices, expected_type=type_hints["block_devices"])
3519
3524
  check_type(argname="argument capacity_rebalance", value=capacity_rebalance, expected_type=type_hints["capacity_rebalance"])
3520
3525
  check_type(argname="argument cooldown", value=cooldown, expected_type=type_hints["cooldown"])
@@ -3553,6 +3558,8 @@ class AutoScalingGroupCapacityOptions(_CommonAutoScalingGroupProps_808bbf2d):
3553
3558
  self._values["associate_public_ip_address"] = associate_public_ip_address
3554
3559
  if auto_scaling_group_name is not None:
3555
3560
  self._values["auto_scaling_group_name"] = auto_scaling_group_name
3561
+ if az_capacity_distribution_strategy is not None:
3562
+ self._values["az_capacity_distribution_strategy"] = az_capacity_distribution_strategy
3556
3563
  if block_devices is not None:
3557
3564
  self._values["block_devices"] = block_devices
3558
3565
  if capacity_rebalance is not None:
@@ -3641,6 +3648,17 @@ class AutoScalingGroupCapacityOptions(_CommonAutoScalingGroupProps_808bbf2d):
3641
3648
  result = self._values.get("auto_scaling_group_name")
3642
3649
  return typing.cast(typing.Optional[builtins.str], result)
3643
3650
 
3651
+ @builtins.property
3652
+ def az_capacity_distribution_strategy(
3653
+ self,
3654
+ ) -> typing.Optional[_CapacityDistributionStrategy_2393ccfe]:
3655
+ '''The strategy for distributing instances across Availability Zones.
3656
+
3657
+ :default: None
3658
+ '''
3659
+ result = self._values.get("az_capacity_distribution_strategy")
3660
+ return typing.cast(typing.Optional[_CapacityDistributionStrategy_2393ccfe], result)
3661
+
3644
3662
  @builtins.property
3645
3663
  def block_devices(self) -> typing.Optional[typing.List[_BlockDevice_0cfc0568]]:
3646
3664
  '''Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.
@@ -5241,7 +5259,7 @@ class CfnAddon(
5241
5259
  :param cluster_name: The name of your cluster.
5242
5260
  :param addon_version: The version of the add-on.
5243
5261
  :param configuration_values: The configuration values that you provided.
5244
- :param pod_identity_associations: An array of Pod Identity Assocations owned by the Addon. Each EKS Pod Identity association maps a role to a service account in a namespace in the cluster. For more information, see `Attach an IAM Role to an Amazon EKS add-on using Pod Identity <https://docs.aws.amazon.com/eks/latest/userguide/add-ons-iam.html>`_ in the EKS User Guide.
5262
+ :param pod_identity_associations: An array of Pod Identity Assocations owned by the Addon. Each EKS Pod Identity association maps a role to a service account in a namespace in the cluster. For more information, see `Attach an IAM Role to an Amazon EKS add-on using Pod Identity <https://docs.aws.amazon.com/eks/latest/userguide/add-ons-iam.html>`_ in the *Amazon EKS User Guide* .
5245
5263
  :param preserve_on_delete: Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on. If an IAM account is associated with the add-on, it isn't removed.
5246
5264
  :param resolve_conflicts: How to resolve field value conflicts for an Amazon EKS add-on. Conflicts are handled based on the value you choose: - *None* – If the self-managed version of the add-on is installed on your cluster, Amazon EKS doesn't change the value. Creation of the add-on might fail. - *Overwrite* – If the self-managed version of the add-on is installed on your cluster and the Amazon EKS default value is different than the existing value, Amazon EKS changes the value to the Amazon EKS default value. - *Preserve* – This is similar to the NONE option. If the self-managed version of the add-on is installed on your cluster Amazon EKS doesn't change the add-on resource properties. Creation of the add-on might fail if conflicts are detected. This option works differently during the update operation. For more information, see `UpdateAddon <https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html>`_ . If you don't currently have the self-managed version of the add-on installed on your cluster, the Amazon EKS add-on is installed. Amazon EKS sets all values to default values, regardless of the option that you specify.
5247
5265
  :param service_account_role_arn: The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's service account. The role must be assigned the IAM permissions required by the add-on. If you don't specify an existing IAM role, then the add-on uses the permissions assigned to the node IAM role. For more information, see `Amazon EKS node IAM role <https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html>`_ in the *Amazon EKS User Guide* . .. epigraph:: To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) provider created for your cluster. For more information, see `Enabling IAM roles for service accounts on your cluster <https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html>`_ in the *Amazon EKS User Guide* .
@@ -5551,7 +5569,7 @@ class CfnAddonProps:
5551
5569
  :param cluster_name: The name of your cluster.
5552
5570
  :param addon_version: The version of the add-on.
5553
5571
  :param configuration_values: The configuration values that you provided.
5554
- :param pod_identity_associations: An array of Pod Identity Assocations owned by the Addon. Each EKS Pod Identity association maps a role to a service account in a namespace in the cluster. For more information, see `Attach an IAM Role to an Amazon EKS add-on using Pod Identity <https://docs.aws.amazon.com/eks/latest/userguide/add-ons-iam.html>`_ in the EKS User Guide.
5572
+ :param pod_identity_associations: An array of Pod Identity Assocations owned by the Addon. Each EKS Pod Identity association maps a role to a service account in a namespace in the cluster. For more information, see `Attach an IAM Role to an Amazon EKS add-on using Pod Identity <https://docs.aws.amazon.com/eks/latest/userguide/add-ons-iam.html>`_ in the *Amazon EKS User Guide* .
5555
5573
  :param preserve_on_delete: Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on. If an IAM account is associated with the add-on, it isn't removed.
5556
5574
  :param resolve_conflicts: How to resolve field value conflicts for an Amazon EKS add-on. Conflicts are handled based on the value you choose: - *None* – If the self-managed version of the add-on is installed on your cluster, Amazon EKS doesn't change the value. Creation of the add-on might fail. - *Overwrite* – If the self-managed version of the add-on is installed on your cluster and the Amazon EKS default value is different than the existing value, Amazon EKS changes the value to the Amazon EKS default value. - *Preserve* – This is similar to the NONE option. If the self-managed version of the add-on is installed on your cluster Amazon EKS doesn't change the add-on resource properties. Creation of the add-on might fail if conflicts are detected. This option works differently during the update operation. For more information, see `UpdateAddon <https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html>`_ . If you don't currently have the self-managed version of the add-on installed on your cluster, the Amazon EKS add-on is installed. Amazon EKS sets all values to default values, regardless of the option that you specify.
5557
5575
  :param service_account_role_arn: The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's service account. The role must be assigned the IAM permissions required by the add-on. If you don't specify an existing IAM role, then the add-on uses the permissions assigned to the node IAM role. For more information, see `Amazon EKS node IAM role <https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html>`_ in the *Amazon EKS User Guide* . .. epigraph:: To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) provider created for your cluster. For more information, see `Enabling IAM roles for service accounts on your cluster <https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html>`_ in the *Amazon EKS User Guide* .
@@ -5662,7 +5680,7 @@ class CfnAddonProps:
5662
5680
 
5663
5681
  Each EKS Pod Identity association maps a role to a service account in a namespace in the cluster.
5664
5682
 
5665
- For more information, see `Attach an IAM Role to an Amazon EKS add-on using Pod Identity <https://docs.aws.amazon.com/eks/latest/userguide/add-ons-iam.html>`_ in the EKS User Guide.
5683
+ For more information, see `Attach an IAM Role to an Amazon EKS add-on using Pod Identity <https://docs.aws.amazon.com/eks/latest/userguide/add-ons-iam.html>`_ in the *Amazon EKS User Guide* .
5666
5684
 
5667
5685
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html#cfn-eks-addon-podidentityassociations
5668
5686
  '''
@@ -5881,16 +5899,16 @@ class CfnCluster(
5881
5899
  :param role_arn: The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. For more information, see `Amazon EKS Service IAM Role <https://docs.aws.amazon.com/eks/latest/userguide/service_IAM_role.html>`_ in the **Amazon EKS User Guide** .
5882
5900
  :param access_config: The access configuration for the cluster.
5883
5901
  :param bootstrap_self_managed_addons: If you set this value to ``False`` when creating a cluster, the default networking add-ons will not be installed. The default networking addons include vpc-cni, coredns, and kube-proxy. Use this option when you plan to install third-party alternative add-ons or self-manage the default networking add-ons.
5884
- :param compute_config: Indicates the current configuration of the compute capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account. For more information, see EKS Auto Mode compute capability in the EKS User Guide.
5902
+ :param compute_config: Indicates the current configuration of the compute capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account. For more information, see EKS Auto Mode compute capability in the *Amazon EKS User Guide* .
5885
5903
  :param encryption_config: The encryption configuration for the cluster.
5886
5904
  :param kubernetes_network_config: The Kubernetes network configuration for the cluster.
5887
5905
  :param logging: The logging configuration for your cluster.
5888
5906
  :param name: The unique name to give to your cluster. The name can contain only alphanumeric characters (case-sensitive) and hyphens. It must start with an alphanumeric character and can't be longer than 100 characters. The name must be unique within the AWS Region and AWS account that you're creating the cluster in. Note that underscores can't be used in AWS CloudFormation .
5889
5907
  :param outpost_config: An object representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This object isn't available for clusters on the AWS cloud.
5890
5908
  :param remote_network_config: The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this configuration after the cluster is created.
5891
- :param storage_config: Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.
5909
+ :param storage_config: Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the *Amazon EKS User Guide* .
5892
5910
  :param tags: The metadata that you apply to the cluster to assist with categorization and organization. Each tag consists of a key and an optional value, both of which you define. Cluster tags don't propagate to any other resources associated with the cluster. .. epigraph:: You must have the ``eks:TagResource`` and ``eks:UntagResource`` permissions for your `IAM principal <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html>`_ to manage the AWS CloudFormation stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update.
5893
- :param upgrade_policy: This value indicates if extended support is enabled or disabled for the cluster. `Learn more about EKS Extended Support in the EKS User Guide. <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
5911
+ :param upgrade_policy: This value indicates if extended support is enabled or disabled for the cluster. `Learn more about EKS Extended Support in the *Amazon EKS User Guide* . <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
5894
5912
  :param version: The desired Kubernetes version for your cluster. If you don't specify a value here, the default version available in Amazon EKS is used. .. epigraph:: The default version might not be the latest version available.
5895
5913
  :param zonal_shift_config: The configuration for zonal shift for the cluster.
5896
5914
  '''
@@ -6400,7 +6418,7 @@ class CfnCluster(
6400
6418
  ) -> None:
6401
6419
  '''Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster.
6402
6420
 
6403
- For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.
6421
+ For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the *Amazon EKS User Guide* .
6404
6422
 
6405
6423
  :param enabled: Indicates if the block storage capability is enabled on your EKS Auto Mode cluster. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account.
6406
6424
 
@@ -6532,11 +6550,13 @@ class CfnCluster(
6532
6550
  node_pools: typing.Optional[typing.Sequence[builtins.str]] = None,
6533
6551
  node_role_arn: typing.Optional[builtins.str] = None,
6534
6552
  ) -> None:
6535
- '''Todo: add description.
6553
+ '''Indicates the current configuration of the compute capability on your EKS Auto Mode cluster.
6536
6554
 
6537
- :param enabled: Todo: add description.
6538
- :param node_pools: Todo: add description.
6539
- :param node_role_arn: Todo: add description.
6555
+ For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account. For more information, see EKS Auto Mode compute capability in the *Amazon EKS User Guide* .
6556
+
6557
+ :param enabled: Request to enable or disable the compute capability on your EKS Auto Mode cluster. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account.
6558
+ :param node_pools: Configuration for node pools that defines the compute resources for your EKS Auto Mode cluster. For more information, see EKS Auto Mode Node Pools in the *Amazon EKS User Guide* .
6559
+ :param node_role_arn: The ARN of the IAM Role EKS will assign to EC2 Managed Instances in your EKS Auto Mode cluster. This value cannot be changed after the compute capability of EKS Auto Mode is enabled. For more information, see the IAM Reference in the *Amazon EKS User Guide* .
6540
6560
 
6541
6561
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-computeconfig.html
6542
6562
  :exampleMetadata: fixture=_generated
@@ -6570,7 +6590,9 @@ class CfnCluster(
6570
6590
  def enabled(
6571
6591
  self,
6572
6592
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
6573
- '''Todo: add description.
6593
+ '''Request to enable or disable the compute capability on your EKS Auto Mode cluster.
6594
+
6595
+ If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account.
6574
6596
 
6575
6597
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-computeconfig.html#cfn-eks-cluster-computeconfig-enabled
6576
6598
  '''
@@ -6579,7 +6601,9 @@ class CfnCluster(
6579
6601
 
6580
6602
  @builtins.property
6581
6603
  def node_pools(self) -> typing.Optional[typing.List[builtins.str]]:
6582
- '''Todo: add description.
6604
+ '''Configuration for node pools that defines the compute resources for your EKS Auto Mode cluster.
6605
+
6606
+ For more information, see EKS Auto Mode Node Pools in the *Amazon EKS User Guide* .
6583
6607
 
6584
6608
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-computeconfig.html#cfn-eks-cluster-computeconfig-nodepools
6585
6609
  '''
@@ -6588,7 +6612,9 @@ class CfnCluster(
6588
6612
 
6589
6613
  @builtins.property
6590
6614
  def node_role_arn(self) -> typing.Optional[builtins.str]:
6591
- '''Todo: add description.
6615
+ '''The ARN of the IAM Role EKS will assign to EC2 Managed Instances in your EKS Auto Mode cluster.
6616
+
6617
+ This value cannot be changed after the compute capability of EKS Auto Mode is enabled. For more information, see the IAM Reference in the *Amazon EKS User Guide* .
6592
6618
 
6593
6619
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-computeconfig.html#cfn-eks-cluster-computeconfig-noderolearn
6594
6620
  '''
@@ -6615,7 +6641,7 @@ class CfnCluster(
6615
6641
  def __init__(self, *, group_name: typing.Optional[builtins.str] = None) -> None:
6616
6642
  '''The placement configuration for all the control plane instances of your local Amazon EKS cluster on an AWS Outpost.
6617
6643
 
6618
- For more information, see `Capacity considerations <https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html>`_ in the Amazon EKS User Guide.
6644
+ For more information, see `Capacity considerations <https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html>`_ in the *Amazon EKS User Guide* .
6619
6645
 
6620
6646
  :param group_name: The name of the placement group for the Kubernetes control plane instances. This property is only used for a local cluster on an AWS Outpost.
6621
6647
 
@@ -6674,7 +6700,7 @@ class CfnCluster(
6674
6700
  ) -> None:
6675
6701
  '''Indicates the current configuration of the load balancing capability on your EKS Auto Mode cluster.
6676
6702
 
6677
- For example, if the capability is enabled or disabled. For more information, see EKS Auto Mode load balancing capability in the EKS User Guide.
6703
+ For example, if the capability is enabled or disabled. For more information, see EKS Auto Mode load balancing capability in the *Amazon EKS User Guide* .
6678
6704
 
6679
6705
  :param enabled: Indicates if the load balancing capability is enabled on your EKS Auto Mode cluster. If the load balancing capability is enabled, EKS Auto Mode will create and delete load balancers in your AWS account.
6680
6706
 
@@ -6819,8 +6845,8 @@ class CfnCluster(
6819
6845
  ) -> None:
6820
6846
  '''The Kubernetes network configuration for the cluster.
6821
6847
 
6822
- :param elastic_load_balancing: Todo: add description.
6823
- :param ip_family: Specify which IP family is used to assign Kubernetes pod and service IP addresses. If you don't specify a value, ``ipv4`` is used by default. You can only specify an IP family when you create a cluster and can't change this value once the cluster is created. If you specify ``ipv6`` , the VPC and subnets that you specify for cluster creation must have both ``IPv4`` and ``IPv6`` CIDR blocks assigned to them. You can't specify ``ipv6`` for clusters in China Regions. You can only specify ``ipv6`` for ``1.21`` and later clusters that use version ``1.10.1`` or later of the Amazon VPC CNI add-on. If you specify ``ipv6`` , then ensure that your VPC meets the requirements listed in the considerations listed in `Assigning IPv6 addresses to pods and services <https://docs.aws.amazon.com/eks/latest/userguide/cni-ipv6.html>`_ in the Amazon EKS User Guide. Kubernetes assigns services ``IPv6`` addresses from the unique local address range ``(fc00::/7)`` . You can't specify a custom ``IPv6`` CIDR block. Pod addresses are assigned from the subnet's ``IPv6`` CIDR.
6848
+ :param elastic_load_balancing: Request to enable or disable the load balancing capability on your EKS Auto Mode cluster. For more information, see EKS Auto Mode load balancing capability in the *Amazon EKS User Guide* .
6849
+ :param ip_family: Specify which IP family is used to assign Kubernetes pod and service IP addresses. If you don't specify a value, ``ipv4`` is used by default. You can only specify an IP family when you create a cluster and can't change this value once the cluster is created. If you specify ``ipv6`` , the VPC and subnets that you specify for cluster creation must have both ``IPv4`` and ``IPv6`` CIDR blocks assigned to them. You can't specify ``ipv6`` for clusters in China Regions. You can only specify ``ipv6`` for ``1.21`` and later clusters that use version ``1.10.1`` or later of the Amazon VPC CNI add-on. If you specify ``ipv6`` , then ensure that your VPC meets the requirements listed in the considerations listed in `Assigning IPv6 addresses to pods and services <https://docs.aws.amazon.com/eks/latest/userguide/cni-ipv6.html>`_ in the *Amazon EKS User Guide* . Kubernetes assigns services ``IPv6`` addresses from the unique local address range ``(fc00::/7)`` . You can't specify a custom ``IPv6`` CIDR block. Pod addresses are assigned from the subnet's ``IPv6`` CIDR.
6824
6850
  :param service_ipv4_cidr: Don't specify a value if you select ``ipv6`` for *ipFamily* . The CIDR block to assign Kubernetes service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the ``10.100.0.0/16`` or ``172.20.0.0/16`` CIDR blocks. We recommend that you specify a block that does not overlap with resources in other networks that are peered or connected to your VPC. The block must meet the following requirements: - Within one of the following private IP address blocks: ``10.0.0.0/8`` , ``172.16.0.0/12`` , or ``192.168.0.0/16`` . - Doesn't overlap with any CIDR block assigned to the VPC that you selected for VPC. - Between ``/24`` and ``/12`` . .. epigraph:: You can only specify a custom CIDR block when you create a cluster. You can't change this value after the cluster is created.
6825
6851
  :param service_ipv6_cidr: The CIDR block that Kubernetes pod and service IP addresses are assigned from if you created a 1.21 or later cluster with version 1.10.1 or later of the Amazon VPC CNI add-on and specified ``ipv6`` for *ipFamily* when you created the cluster. Kubernetes assigns service addresses from the unique local address range ( ``fc00::/7`` ) because you can't specify a custom IPv6 CIDR block when you create the cluster.
6826
6852
 
@@ -6862,7 +6888,9 @@ class CfnCluster(
6862
6888
  def elastic_load_balancing(
6863
6889
  self,
6864
6890
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.ElasticLoadBalancingProperty"]]:
6865
- '''Todo: add description.
6891
+ '''Request to enable or disable the load balancing capability on your EKS Auto Mode cluster.
6892
+
6893
+ For more information, see EKS Auto Mode load balancing capability in the *Amazon EKS User Guide* .
6866
6894
 
6867
6895
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-kubernetesnetworkconfig.html#cfn-eks-cluster-kubernetesnetworkconfig-elasticloadbalancing
6868
6896
  '''
@@ -6875,7 +6903,7 @@ class CfnCluster(
6875
6903
 
6876
6904
  If you don't specify a value, ``ipv4`` is used by default. You can only specify an IP family when you create a cluster and can't change this value once the cluster is created. If you specify ``ipv6`` , the VPC and subnets that you specify for cluster creation must have both ``IPv4`` and ``IPv6`` CIDR blocks assigned to them. You can't specify ``ipv6`` for clusters in China Regions.
6877
6905
 
6878
- You can only specify ``ipv6`` for ``1.21`` and later clusters that use version ``1.10.1`` or later of the Amazon VPC CNI add-on. If you specify ``ipv6`` , then ensure that your VPC meets the requirements listed in the considerations listed in `Assigning IPv6 addresses to pods and services <https://docs.aws.amazon.com/eks/latest/userguide/cni-ipv6.html>`_ in the Amazon EKS User Guide. Kubernetes assigns services ``IPv6`` addresses from the unique local address range ``(fc00::/7)`` . You can't specify a custom ``IPv6`` CIDR block. Pod addresses are assigned from the subnet's ``IPv6`` CIDR.
6906
+ You can only specify ``ipv6`` for ``1.21`` and later clusters that use version ``1.10.1`` or later of the Amazon VPC CNI add-on. If you specify ``ipv6`` , then ensure that your VPC meets the requirements listed in the considerations listed in `Assigning IPv6 addresses to pods and services <https://docs.aws.amazon.com/eks/latest/userguide/cni-ipv6.html>`_ in the *Amazon EKS User Guide* . Kubernetes assigns services ``IPv6`` addresses from the unique local address range ``(fc00::/7)`` . You can't specify a custom ``IPv6`` CIDR block. Pod addresses are assigned from the subnet's ``IPv6`` CIDR.
6879
6907
 
6880
6908
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-kubernetesnetworkconfig.html#cfn-eks-cluster-kubernetesnetworkconfig-ipfamily
6881
6909
  '''
@@ -7214,10 +7242,12 @@ class CfnCluster(
7214
7242
  remote_node_networks: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.RemoteNodeNetworkProperty", typing.Dict[builtins.str, typing.Any]]]]],
7215
7243
  remote_pod_networks: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.RemotePodNetworkProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
7216
7244
  ) -> None:
7217
- '''Configuration fields for specifying on-premises node and pod CIDRs that are external to the VPC passed during cluster creation.
7245
+ '''The configuration in the cluster for EKS Hybrid Nodes.
7246
+
7247
+ You can't change or update this configuration after the cluster is created.
7218
7248
 
7219
- :param remote_node_networks: Network configuration of nodes run on-premises with EKS Hybrid Nodes.
7220
- :param remote_pod_networks: Network configuration of pods run on-premises with EKS Hybrid Nodes.
7249
+ :param remote_node_networks: The list of network CIDRs that can contain hybrid nodes. These CIDR blocks define the expected IP address range of the hybrid nodes that join the cluster. These blocks are typically determined by your network administrator. Enter one or more IPv4 CIDR blocks in decimal dotted-quad notation (for example, ``10.2.0.0/16`` ). It must satisfy the following requirements: - Each block must be within an ``IPv4`` RFC-1918 network range. Minimum allowed size is /24, maximum allowed size is /8. Publicly-routable addresses aren't supported. - Each block cannot overlap with the range of the VPC CIDR blocks for your EKS resources, or the block of the Kubernetes service IP range. - Each block must have a route to the VPC that uses the VPC CIDR blocks, not public IPs or Elastic IPs. There are many options including AWS Transit Gateway , AWS Site-to-Site VPN , or AWS Direct Connect . - Each host must allow outbound connection to the EKS cluster control plane on TCP ports ``443`` and ``10250`` . - Each host must allow inbound connection from the EKS cluster control plane on TCP port 10250 for logs, exec and port-forward operations. - Each host must allow TCP and UDP network connectivity to and from other hosts that are running ``CoreDNS`` on UDP port ``53`` for service and pod DNS names.
7250
+ :param remote_pod_networks: The list of network CIDRs that can contain pods that run Kubernetes webhooks on hybrid nodes. These CIDR blocks are determined by configuring your Container Network Interface (CNI) plugin. We recommend the Calico CNI or Cilium CNI. Note that the Amazon VPC CNI plugin for Kubernetes isn't available for on-premises and edge locations. Enter one or more IPv4 CIDR blocks in decimal dotted-quad notation (for example, ``10.2.0.0/16`` ). It must satisfy the following requirements: - Each block must be within an ``IPv4`` RFC-1918 network range. Minimum allowed size is /24, maximum allowed size is /8. Publicly-routable addresses aren't supported. - Each block cannot overlap with the range of the VPC CIDR blocks for your EKS resources, or the block of the Kubernetes service IP range.
7221
7251
 
7222
7252
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-remotenetworkconfig.html
7223
7253
  :exampleMetadata: fixture=_generated
@@ -7253,7 +7283,20 @@ class CfnCluster(
7253
7283
  def remote_node_networks(
7254
7284
  self,
7255
7285
  ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnCluster.RemoteNodeNetworkProperty"]]]:
7256
- '''Network configuration of nodes run on-premises with EKS Hybrid Nodes.
7286
+ '''The list of network CIDRs that can contain hybrid nodes.
7287
+
7288
+ These CIDR blocks define the expected IP address range of the hybrid nodes that join the cluster. These blocks are typically determined by your network administrator.
7289
+
7290
+ Enter one or more IPv4 CIDR blocks in decimal dotted-quad notation (for example, ``10.2.0.0/16`` ).
7291
+
7292
+ It must satisfy the following requirements:
7293
+
7294
+ - Each block must be within an ``IPv4`` RFC-1918 network range. Minimum allowed size is /24, maximum allowed size is /8. Publicly-routable addresses aren't supported.
7295
+ - Each block cannot overlap with the range of the VPC CIDR blocks for your EKS resources, or the block of the Kubernetes service IP range.
7296
+ - Each block must have a route to the VPC that uses the VPC CIDR blocks, not public IPs or Elastic IPs. There are many options including AWS Transit Gateway , AWS Site-to-Site VPN , or AWS Direct Connect .
7297
+ - Each host must allow outbound connection to the EKS cluster control plane on TCP ports ``443`` and ``10250`` .
7298
+ - Each host must allow inbound connection from the EKS cluster control plane on TCP port 10250 for logs, exec and port-forward operations.
7299
+ - Each host must allow TCP and UDP network connectivity to and from other hosts that are running ``CoreDNS`` on UDP port ``53`` for service and pod DNS names.
7257
7300
 
7258
7301
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-remotenetworkconfig.html#cfn-eks-cluster-remotenetworkconfig-remotenodenetworks
7259
7302
  '''
@@ -7265,7 +7308,16 @@ class CfnCluster(
7265
7308
  def remote_pod_networks(
7266
7309
  self,
7267
7310
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnCluster.RemotePodNetworkProperty"]]]]:
7268
- '''Network configuration of pods run on-premises with EKS Hybrid Nodes.
7311
+ '''The list of network CIDRs that can contain pods that run Kubernetes webhooks on hybrid nodes.
7312
+
7313
+ These CIDR blocks are determined by configuring your Container Network Interface (CNI) plugin. We recommend the Calico CNI or Cilium CNI. Note that the Amazon VPC CNI plugin for Kubernetes isn't available for on-premises and edge locations.
7314
+
7315
+ Enter one or more IPv4 CIDR blocks in decimal dotted-quad notation (for example, ``10.2.0.0/16`` ).
7316
+
7317
+ It must satisfy the following requirements:
7318
+
7319
+ - Each block must be within an ``IPv4`` RFC-1918 network range. Minimum allowed size is /24, maximum allowed size is /8. Publicly-routable addresses aren't supported.
7320
+ - Each block cannot overlap with the range of the VPC CIDR blocks for your EKS resources, or the block of the Kubernetes service IP range.
7269
7321
 
7270
7322
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-remotenetworkconfig.html#cfn-eks-cluster-remotenetworkconfig-remotepodnetworks
7271
7323
  '''
@@ -7588,9 +7640,11 @@ class CfnCluster(
7588
7640
  *,
7589
7641
  block_storage: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.BlockStorageProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7590
7642
  ) -> None:
7591
- '''Todo: add description.
7643
+ '''Request to update the configuration of the storage capability of your EKS Auto Mode cluster.
7644
+
7645
+ For example, enable the capability. For more information, see EKS Auto Mode block storage capability in the *Amazon EKS User Guide* .
7592
7646
 
7593
- :param block_storage: Todo: add description.
7647
+ :param block_storage: Request to configure EBS Block Storage settings for your EKS Auto Mode cluster.
7594
7648
 
7595
7649
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-storageconfig.html
7596
7650
  :exampleMetadata: fixture=_generated
@@ -7618,7 +7672,7 @@ class CfnCluster(
7618
7672
  def block_storage(
7619
7673
  self,
7620
7674
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.BlockStorageProperty"]]:
7621
- '''Todo: add description.
7675
+ '''Request to configure EBS Block Storage settings for your EKS Auto Mode cluster.
7622
7676
 
7623
7677
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-storageconfig.html#cfn-eks-cluster-storageconfig-blockstorage
7624
7678
  '''
@@ -7647,9 +7701,13 @@ class CfnCluster(
7647
7701
  *,
7648
7702
  support_type: typing.Optional[builtins.str] = None,
7649
7703
  ) -> None:
7650
- '''An object representing the Upgrade Policy to use for the cluster.
7704
+ '''The support policy to use for the cluster.
7651
7705
 
7652
- :param support_type: Specify the support type for your cluster.
7706
+ Extended support allows you to remain on specific Kubernetes versions for longer. Clusters in extended support have higher costs. The default value is ``EXTENDED`` . Use ``STANDARD`` to disable extended support.
7707
+
7708
+ `Learn more about EKS Extended Support in the *Amazon EKS User Guide* . <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
7709
+
7710
+ :param support_type: If the cluster is set to ``EXTENDED`` , it will enter extended support at the end of standard support. If the cluster is set to ``STANDARD`` , it will be automatically upgraded at the end of standard support. `Learn more about EKS Extended Support in the *Amazon EKS User Guide* . <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
7653
7711
 
7654
7712
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-upgradepolicy.html
7655
7713
  :exampleMetadata: fixture=_generated
@@ -7673,7 +7731,11 @@ class CfnCluster(
7673
7731
 
7674
7732
  @builtins.property
7675
7733
  def support_type(self) -> typing.Optional[builtins.str]:
7676
- '''Specify the support type for your cluster.
7734
+ '''If the cluster is set to ``EXTENDED`` , it will enter extended support at the end of standard support.
7735
+
7736
+ If the cluster is set to ``STANDARD`` , it will be automatically upgraded at the end of standard support.
7737
+
7738
+ `Learn more about EKS Extended Support in the *Amazon EKS User Guide* . <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
7677
7739
 
7678
7740
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-upgradepolicy.html#cfn-eks-cluster-upgradepolicy-supporttype
7679
7741
  '''
@@ -7798,16 +7860,16 @@ class CfnClusterProps:
7798
7860
  :param role_arn: The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. For more information, see `Amazon EKS Service IAM Role <https://docs.aws.amazon.com/eks/latest/userguide/service_IAM_role.html>`_ in the **Amazon EKS User Guide** .
7799
7861
  :param access_config: The access configuration for the cluster.
7800
7862
  :param bootstrap_self_managed_addons: If you set this value to ``False`` when creating a cluster, the default networking add-ons will not be installed. The default networking addons include vpc-cni, coredns, and kube-proxy. Use this option when you plan to install third-party alternative add-ons or self-manage the default networking add-ons.
7801
- :param compute_config: Indicates the current configuration of the compute capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account. For more information, see EKS Auto Mode compute capability in the EKS User Guide.
7863
+ :param compute_config: Indicates the current configuration of the compute capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account. For more information, see EKS Auto Mode compute capability in the *Amazon EKS User Guide* .
7802
7864
  :param encryption_config: The encryption configuration for the cluster.
7803
7865
  :param kubernetes_network_config: The Kubernetes network configuration for the cluster.
7804
7866
  :param logging: The logging configuration for your cluster.
7805
7867
  :param name: The unique name to give to your cluster. The name can contain only alphanumeric characters (case-sensitive) and hyphens. It must start with an alphanumeric character and can't be longer than 100 characters. The name must be unique within the AWS Region and AWS account that you're creating the cluster in. Note that underscores can't be used in AWS CloudFormation .
7806
7868
  :param outpost_config: An object representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This object isn't available for clusters on the AWS cloud.
7807
7869
  :param remote_network_config: The configuration in the cluster for EKS Hybrid Nodes. You can't change or update this configuration after the cluster is created.
7808
- :param storage_config: Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.
7870
+ :param storage_config: Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster. For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the *Amazon EKS User Guide* .
7809
7871
  :param tags: The metadata that you apply to the cluster to assist with categorization and organization. Each tag consists of a key and an optional value, both of which you define. Cluster tags don't propagate to any other resources associated with the cluster. .. epigraph:: You must have the ``eks:TagResource`` and ``eks:UntagResource`` permissions for your `IAM principal <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html>`_ to manage the AWS CloudFormation stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update.
7810
- :param upgrade_policy: This value indicates if extended support is enabled or disabled for the cluster. `Learn more about EKS Extended Support in the EKS User Guide. <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
7872
+ :param upgrade_policy: This value indicates if extended support is enabled or disabled for the cluster. `Learn more about EKS Extended Support in the *Amazon EKS User Guide* . <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
7811
7873
  :param version: The desired Kubernetes version for your cluster. If you don't specify a value here, the default version available in Amazon EKS is used. .. epigraph:: The default version might not be the latest version available.
7812
7874
  :param zonal_shift_config: The configuration for zonal shift for the cluster.
7813
7875
 
@@ -8011,7 +8073,7 @@ class CfnClusterProps:
8011
8073
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCluster.ComputeConfigProperty]]:
8012
8074
  '''Indicates the current configuration of the compute capability on your EKS Auto Mode cluster.
8013
8075
 
8014
- For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account. For more information, see EKS Auto Mode compute capability in the EKS User Guide.
8076
+ For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account. For more information, see EKS Auto Mode compute capability in the *Amazon EKS User Guide* .
8015
8077
 
8016
8078
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-computeconfig
8017
8079
  '''
@@ -8094,7 +8156,7 @@ class CfnClusterProps:
8094
8156
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCluster.StorageConfigProperty]]:
8095
8157
  '''Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster.
8096
8158
 
8097
- For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the EKS User Guide.
8159
+ For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the *Amazon EKS User Guide* .
8098
8160
 
8099
8161
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-storageconfig
8100
8162
  '''
@@ -8121,7 +8183,7 @@ class CfnClusterProps:
8121
8183
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCluster.UpgradePolicyProperty]]:
8122
8184
  '''This value indicates if extended support is enabled or disabled for the cluster.
8123
8185
 
8124
- `Learn more about EKS Extended Support in the EKS User Guide. <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
8186
+ `Learn more about EKS Extended Support in the *Amazon EKS User Guide* . <https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html>`_
8125
8187
 
8126
8188
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-upgradepolicy
8127
8189
  '''
@@ -8175,7 +8237,7 @@ class CfnFargateProfile(
8175
8237
 
8176
8238
  You must have at least one Fargate profile in a cluster to be able to run pods on Fargate.
8177
8239
 
8178
- The Fargate profile allows an administrator to declare which pods run on Fargate and specify which pods run on which Fargate profile. This declaration is done through the profiles selectors. Each profile can have up to five selectors that contain a namespace and labels. A namespace is required for every selector. The label field consists of multiple optional key-value pairs. Pods that match the selectors are scheduled on Fargate. If a to-be-scheduled pod matches any of the selectors in the Fargate profile, then that pod is run on Fargate.
8240
+ The Fargate profile allows an administrator to declare which pods run on Fargate and specify which pods run on which Fargate profile. This declaration is done through the profile's selectors. Each profile can have up to five selectors that contain a namespace and labels. A namespace is required for every selector. The label field consists of multiple optional key-value pairs. Pods that match the selectors are scheduled on Fargate. If a to-be-scheduled pod matches any of the selectors in the Fargate profile, then that pod is run on Fargate.
8179
8241
 
8180
8242
  When you create a Fargate profile, you must specify a pod execution role to use with the pods that are scheduled with the profile. This role is added to the cluster's Kubernetes `Role Based Access Control <https://docs.aws.amazon.com/https://kubernetes.io/docs/reference/access-authn-authz/rbac/>`_ (RBAC) for authorization so that the ``kubelet`` that is running on the Fargate infrastructure can register with your Amazon EKS cluster so that it can appear in your cluster as a node. The pod execution role also provides IAM permissions to the Fargate infrastructure to allow read access to Amazon ECR image repositories. For more information, see `Pod Execution Role <https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html>`_ in the *Amazon EKS User Guide* .
8181
8243
 
@@ -9401,7 +9463,7 @@ class CfnNodegroup(
9401
9463
  :param labels: The Kubernetes ``labels`` applied to the nodes in the node group. .. epigraph:: Only ``labels`` that are applied with the Amazon EKS API are shown here. There may be other Kubernetes ``labels`` applied to the nodes in this group.
9402
9464
  :param launch_template: An object representing a node group's launch template specification. When using this object, don't directly specify ``instanceTypes`` , ``diskSize`` , or ``remoteAccess`` . Make sure that the launch template meets the requirements in ``launchTemplateSpecification`` . Also refer to `Customizing managed nodes with launch templates <https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html>`_ in the *Amazon EKS User Guide* .
9403
9465
  :param nodegroup_name: The unique name to give your node group.
9404
- :param node_repair_config: The node auto repair configuration for node group.
9466
+ :param node_repair_config: The node auto repair configuration for the node group.
9405
9467
  :param release_version: The AMI version of the Amazon EKS optimized AMI to use with your node group (for example, ``1.14.7- *YYYYMMDD*`` ). By default, the latest available AMI version for the node group's current Kubernetes version is used. For more information, see `Amazon EKS optimized Linux AMI Versions <https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html>`_ in the *Amazon EKS User Guide* . .. epigraph:: Changing this value triggers an update of the node group if one is available. You can't update other properties at the same time as updating ``Release Version`` .
9406
9468
  :param remote_access: The remote access configuration to use with your node group. For Linux, the protocol is SSH. For Windows, the protocol is RDP. If you specify ``launchTemplate`` , then don't specify ``remoteAccess`` , or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see `Customizing managed nodes with launch templates <https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html>`_ in the *Amazon EKS User Guide* .
9407
9469
  :param scaling_config: The scaling configuration details for the Auto Scaling group that is created for your node group.
@@ -9677,7 +9739,7 @@ class CfnNodegroup(
9677
9739
  def node_repair_config(
9678
9740
  self,
9679
9741
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnNodegroup.NodeRepairConfigProperty"]]:
9680
- '''The node auto repair configuration for node group.'''
9742
+ '''The node auto repair configuration for the node group.'''
9681
9743
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnNodegroup.NodeRepairConfigProperty"]], jsii.get(self, "nodeRepairConfig"))
9682
9744
 
9683
9745
  @node_repair_config.setter
@@ -9910,9 +9972,9 @@ class CfnNodegroup(
9910
9972
  *,
9911
9973
  enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
9912
9974
  ) -> None:
9913
- '''The node auto repair configuration for node group.
9975
+ '''The node auto repair configuration for the node group.
9914
9976
 
9915
- :param enabled: Set this value to true to enable node auto repair for the node group.
9977
+ :param enabled: Specifies whether to enable node auto repair for the node group. Node auto repair is disabled by default.
9916
9978
 
9917
9979
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-noderepairconfig.html
9918
9980
  :exampleMetadata: fixture=_generated
@@ -9938,7 +10000,9 @@ class CfnNodegroup(
9938
10000
  def enabled(
9939
10001
  self,
9940
10002
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
9941
- '''Set this value to true to enable node auto repair for the node group.
10003
+ '''Specifies whether to enable node auto repair for the node group.
10004
+
10005
+ Node auto repair is disabled by default.
9942
10006
 
9943
10007
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-nodegroup-noderepairconfig.html#cfn-eks-nodegroup-noderepairconfig-enabled
9944
10008
  '''
@@ -10364,7 +10428,7 @@ class CfnNodegroupProps:
10364
10428
  :param labels: The Kubernetes ``labels`` applied to the nodes in the node group. .. epigraph:: Only ``labels`` that are applied with the Amazon EKS API are shown here. There may be other Kubernetes ``labels`` applied to the nodes in this group.
10365
10429
  :param launch_template: An object representing a node group's launch template specification. When using this object, don't directly specify ``instanceTypes`` , ``diskSize`` , or ``remoteAccess`` . Make sure that the launch template meets the requirements in ``launchTemplateSpecification`` . Also refer to `Customizing managed nodes with launch templates <https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html>`_ in the *Amazon EKS User Guide* .
10366
10430
  :param nodegroup_name: The unique name to give your node group.
10367
- :param node_repair_config: The node auto repair configuration for node group.
10431
+ :param node_repair_config: The node auto repair configuration for the node group.
10368
10432
  :param release_version: The AMI version of the Amazon EKS optimized AMI to use with your node group (for example, ``1.14.7- *YYYYMMDD*`` ). By default, the latest available AMI version for the node group's current Kubernetes version is used. For more information, see `Amazon EKS optimized Linux AMI Versions <https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html>`_ in the *Amazon EKS User Guide* . .. epigraph:: Changing this value triggers an update of the node group if one is available. You can't update other properties at the same time as updating ``Release Version`` .
10369
10433
  :param remote_access: The remote access configuration to use with your node group. For Linux, the protocol is SSH. For Windows, the protocol is RDP. If you specify ``launchTemplate`` , then don't specify ``remoteAccess`` , or the node group deployment will fail. For more information about using launch templates with Amazon EKS, see `Customizing managed nodes with launch templates <https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html>`_ in the *Amazon EKS User Guide* .
10370
10434
  :param scaling_config: The scaling configuration details for the Auto Scaling group that is created for your node group.
@@ -10623,7 +10687,7 @@ class CfnNodegroupProps:
10623
10687
  def node_repair_config(
10624
10688
  self,
10625
10689
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnNodegroup.NodeRepairConfigProperty]]:
10626
- '''The node auto repair configuration for node group.
10690
+ '''The node auto repair configuration for the node group.
10627
10691
 
10628
10692
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html#cfn-eks-nodegroup-noderepairconfig
10629
10693
  '''
@@ -18134,6 +18198,7 @@ class Cluster(
18134
18198
  allow_all_outbound: typing.Optional[builtins.bool] = None,
18135
18199
  associate_public_ip_address: typing.Optional[builtins.bool] = None,
18136
18200
  auto_scaling_group_name: typing.Optional[builtins.str] = None,
18201
+ az_capacity_distribution_strategy: typing.Optional[_CapacityDistributionStrategy_2393ccfe] = None,
18137
18202
  block_devices: typing.Optional[typing.Sequence[typing.Union[_BlockDevice_0cfc0568, typing.Dict[builtins.str, typing.Any]]]] = None,
18138
18203
  capacity_rebalance: typing.Optional[builtins.bool] = None,
18139
18204
  cooldown: typing.Optional[_Duration_4839e8c3] = None,
@@ -18182,6 +18247,7 @@ class Cluster(
18182
18247
  :param allow_all_outbound: Whether the instances can initiate connections to anywhere by default. Default: true
18183
18248
  :param associate_public_ip_address: Whether instances in the Auto Scaling Group should have public IP addresses associated with them. ``launchTemplate`` and ``mixedInstancesPolicy`` must not be specified when this property is specified Default: - Use subnet setting.
18184
18249
  :param auto_scaling_group_name: The name of the Auto Scaling group. This name must be unique per Region per account. Default: - Auto generated by CloudFormation
18250
+ :param az_capacity_distribution_strategy: The strategy for distributing instances across Availability Zones. Default: None
18185
18251
  :param block_devices: Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes. Each instance that is launched has an associated root device volume, either an Amazon EBS volume or an instance store volume. You can use block device mappings to specify additional EBS volumes or instance store volumes to attach to an instance when it is launched. ``launchTemplate`` and ``mixedInstancesPolicy`` must not be specified when this property is specified Default: - Uses the block device mapping of the AMI
18186
18252
  :param capacity_rebalance: Indicates whether Capacity Rebalancing is enabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. Default: false
18187
18253
  :param cooldown: Default scaling cooldown for this AutoScalingGroup. Default: Duration.minutes(5)
@@ -18219,6 +18285,7 @@ class Cluster(
18219
18285
  allow_all_outbound=allow_all_outbound,
18220
18286
  associate_public_ip_address=associate_public_ip_address,
18221
18287
  auto_scaling_group_name=auto_scaling_group_name,
18288
+ az_capacity_distribution_strategy=az_capacity_distribution_strategy,
18222
18289
  block_devices=block_devices,
18223
18290
  capacity_rebalance=capacity_rebalance,
18224
18291
  cooldown=cooldown,
@@ -21090,6 +21157,7 @@ def _typecheckingstub__9ac94eb5cd9569dcf4122cf20026c6f104b737f68ecd3395b237320bd
21090
21157
  allow_all_outbound: typing.Optional[builtins.bool] = None,
21091
21158
  associate_public_ip_address: typing.Optional[builtins.bool] = None,
21092
21159
  auto_scaling_group_name: typing.Optional[builtins.str] = None,
21160
+ az_capacity_distribution_strategy: typing.Optional[_CapacityDistributionStrategy_2393ccfe] = None,
21093
21161
  block_devices: typing.Optional[typing.Sequence[typing.Union[_BlockDevice_0cfc0568, typing.Dict[builtins.str, typing.Any]]]] = None,
21094
21162
  capacity_rebalance: typing.Optional[builtins.bool] = None,
21095
21163
  cooldown: typing.Optional[_Duration_4839e8c3] = None,
@@ -22873,6 +22941,7 @@ def _typecheckingstub__e9e81d821b1c1d14225d1c9cc695af8e71b96a7489dcd36bd237c9363
22873
22941
  allow_all_outbound: typing.Optional[builtins.bool] = None,
22874
22942
  associate_public_ip_address: typing.Optional[builtins.bool] = None,
22875
22943
  auto_scaling_group_name: typing.Optional[builtins.str] = None,
22944
+ az_capacity_distribution_strategy: typing.Optional[_CapacityDistributionStrategy_2393ccfe] = None,
22876
22945
  block_devices: typing.Optional[typing.Sequence[typing.Union[_BlockDevice_0cfc0568, typing.Dict[builtins.str, typing.Any]]]] = None,
22877
22946
  capacity_rebalance: typing.Optional[builtins.bool] = None,
22878
22947
  cooldown: typing.Optional[_Duration_4839e8c3] = None,
@@ -9928,7 +9928,7 @@ class CfnTargetGroup(
9928
9928
  ) -> None:
9929
9929
  '''Specifies a target group attribute.
9930
9930
 
9931
- :param key: The name of the attribute. The following attributes are supported by all load balancers: - ``deregistration_delay.timeout_seconds`` - The amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target from ``draining`` to ``unused`` . The range is 0-3600 seconds. The default value is 300 seconds. If the target is a Lambda function, this attribute is not supported. - ``stickiness.enabled`` - Indicates whether target stickiness is enabled. The value is ``true`` or ``false`` . The default is ``false`` . - ``stickiness.type`` - Indicates the type of stickiness. The possible values are: - ``lb_cookie`` and ``app_cookie`` for Application Load Balancers. - ``source_ip`` for Network Load Balancers. - ``source_ip_dest_ip`` and ``source_ip_dest_ip_proto`` for Gateway Load Balancers. The following attributes are supported by Application Load Balancers and Network Load Balancers: - ``load_balancing.cross_zone.enabled`` - Indicates whether cross zone load balancing is enabled. The value is ``true`` , ``false`` or ``use_load_balancer_configuration`` . The default is ``use_load_balancer_configuration`` . - ``target_group_health.dns_failover.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to the maximum number of targets. The default is ``off`` . - ``target_group_health.dns_failover.minimum_healthy_targets.percentage`` - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to 100. The default is ``off`` . - ``target_group_health.unhealthy_state_routing.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are 1 to the maximum number of targets. The default is 1. - ``target_group_health.unhealthy_state_routing.minimum_healthy_targets.percentage`` - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are ``off`` or an integer from 1 to 100. The default is ``off`` . The following attributes are supported only if the load balancer is an Application Load Balancer and the target is an instance or an IP address: - ``load_balancing.algorithm.type`` - The load balancing algorithm determines how the load balancer selects targets when routing requests. The value is ``round_robin`` , ``least_outstanding_requests`` , or ``weighted_random`` . The default is ``round_robin`` . - ``load_balancing.algorithm.anomaly_mitigation`` - Only available when ``load_balancing.algorithm.type`` is ``weighted_random`` . Indicates whether anomaly mitigation is enabled. The value is ``on`` or ``off`` . The default is ``off`` . - ``slow_start.duration_seconds`` - The time period, in seconds, during which a newly registered target receives an increasing share of the traffic to the target group. After this time period ends, the target receives its full share of traffic. The range is 30-900 seconds (15 minutes). The default is 0 seconds (disabled). - ``stickiness.app_cookie.cookie_name`` - Indicates the name of the application-based cookie. Names that start with the following prefixes are not allowed: ``AWSALB`` , ``AWSALBAPP`` , and ``AWSALBTG`` ; they're reserved for use by the load balancer. - ``stickiness.app_cookie.duration_seconds`` - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the application-based cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). - ``stickiness.lb_cookie.duration_seconds`` - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). The following attribute is supported only if the load balancer is an Application Load Balancer and the target is a Lambda function: - ``lambda.multi_value_headers.enabled`` - Indicates whether the request and response headers that are exchanged between the load balancer and the Lambda function include arrays of values or strings. The value is ``true`` or ``false`` . The default is ``false`` . If the value is ``false`` and the request contains a duplicate header field name or query parameter key, the load balancer uses the last value sent by the client. The following attributes are supported only by Network Load Balancers: - ``deregistration_delay.connection_termination.enabled`` - Indicates whether the load balancer terminates connections at the end of the deregistration timeout. The value is ``true`` or ``false`` . For new UDP/TCP_UDP target groups the default is ``true`` . Otherwise, the default is ``false`` . - ``preserve_client_ip.enabled`` - Indicates whether client IP preservation is enabled. The value is ``true`` or ``false`` . The default is disabled if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, the default is enabled. Client IP preservation can't be disabled for UDP and TCP_UDP target groups. - ``proxy_protocol_v2.enabled`` - Indicates whether Proxy Protocol version 2 is enabled. The value is ``true`` or ``false`` . The default is ``false`` . - ``target_health_state.unhealthy.connection_termination.enabled`` - Indicates whether the load balancer terminates connections to unhealthy targets. The value is ``true`` or ``false`` . The default is ``true`` . - ``target_health_state.unhealthy.draining_interval_seconds`` - The amount of time for Elastic Load Balancing to wait before changing the state of an unhealthy target from ``unhealthy.draining`` to ``unhealthy`` . The range is 0-360000 seconds. The default value is 0 seconds. Note: This attribute can only be configured when ``target_health_state.unhealthy.connection_termination.enabled`` is ``false`` . The following attributes are supported only by Gateway Load Balancers: - ``target_failover.on_deregistration`` - Indicates how the Gateway Load Balancer handles existing flows when a target is deregistered. The possible values are ``rebalance`` and ``no_rebalance`` . The default is ``no_rebalance`` . The two attributes ( ``target_failover.on_deregistration`` and ``target_failover.on_unhealthy`` ) can't be set independently. The value you set for both attributes must be the same. - ``target_failover.on_unhealthy`` - Indicates how the Gateway Load Balancer handles existing flows when a target is unhealthy. The possible values are ``rebalance`` and ``no_rebalance`` . The default is ``no_rebalance`` . The two attributes ( ``target_failover.on_deregistration`` and ``target_failover.on_unhealthy`` ) can't be set independently. The value you set for both attributes must be the same.
9931
+ :param key: The name of the attribute. The following attributes are supported by all load balancers: - ``deregistration_delay.timeout_seconds`` - The amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target from ``draining`` to ``unused`` . The range is 0-3600 seconds. The default value is 300 seconds. If the target is a Lambda function, this attribute is not supported. - ``stickiness.enabled`` - Indicates whether target stickiness is enabled. The value is ``true`` or ``false`` . The default is ``false`` . - ``stickiness.type`` - Indicates the type of stickiness. The possible values are: - ``lb_cookie`` and ``app_cookie`` for Application Load Balancers. - ``source_ip`` for Network Load Balancers. - ``source_ip_dest_ip`` and ``source_ip_dest_ip_proto`` for Gateway Load Balancers. The following attributes are supported by Application Load Balancers and Network Load Balancers: - ``load_balancing.cross_zone.enabled`` - Indicates whether cross zone load balancing is enabled. The value is ``true`` , ``false`` or ``use_load_balancer_configuration`` . The default is ``use_load_balancer_configuration`` . - ``target_group_health.dns_failover.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to the maximum number of targets. The default is ``off`` . - ``target_group_health.dns_failover.minimum_healthy_targets.percentage`` - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to 100. The default is ``off`` . - ``target_group_health.unhealthy_state_routing.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are 1 to the maximum number of targets. The default is 1. - ``target_group_health.unhealthy_state_routing.minimum_healthy_targets.percentage`` - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are ``off`` or an integer from 1 to 100. The default is ``off`` . The following attributes are supported only if the load balancer is an Application Load Balancer and the target is an instance or an IP address: - ``load_balancing.algorithm.type`` - The load balancing algorithm determines how the load balancer selects targets when routing requests. The value is ``round_robin`` , ``least_outstanding_requests`` , or ``weighted_random`` . The default is ``round_robin`` . - ``load_balancing.algorithm.anomaly_mitigation`` - Only available when ``load_balancing.algorithm.type`` is ``weighted_random`` . Indicates whether anomaly mitigation is enabled. The value is ``on`` or ``off`` . The default is ``off`` . - ``slow_start.duration_seconds`` - The time period, in seconds, during which a newly registered target receives an increasing share of the traffic to the target group. After this time period ends, the target receives its full share of traffic. The range is 30-900 seconds (15 minutes). The default is 0 seconds (disabled). - ``stickiness.app_cookie.cookie_name`` - Indicates the name of the application-based cookie. Names that start with the following prefixes are not allowed: ``AWSALB`` , ``AWSALBAPP`` , and ``AWSALBTG`` ; they're reserved for use by the load balancer. - ``stickiness.app_cookie.duration_seconds`` - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the application-based cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). - ``stickiness.lb_cookie.duration_seconds`` - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). The following attribute is supported only if the load balancer is an Application Load Balancer and the target is a Lambda function: - ``lambda.multi_value_headers.enabled`` - Indicates whether the request and response headers that are exchanged between the load balancer and the Lambda function include arrays of values or strings. The value is ``true`` or ``false`` . The default is ``false`` . If the value is ``false`` and the request contains a duplicate header field name or query parameter key, the load balancer uses the last value sent by the client. The following attributes are supported only by Network Load Balancers: - ``deregistration_delay.connection_termination.enabled`` - Indicates whether the load balancer terminates connections at the end of the deregistration timeout. The value is ``true`` or ``false`` . For new UDP/TCP_UDP target groups the default is ``true`` . Otherwise, the default is ``false`` . - ``preserve_client_ip.enabled`` - Indicates whether client IP preservation is enabled. The value is ``true`` or ``false`` . The default is disabled if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, the default is enabled. Client IP preservation can't be disabled for UDP and TCP_UDP target groups. - ``proxy_protocol_v2.enabled`` - Indicates whether Proxy Protocol version 2 is enabled. The value is ``true`` or ``false`` . The default is ``false`` . - ``target_health_state.unhealthy.connection_termination.enabled`` - Indicates whether the load balancer terminates connections to unhealthy targets. The value is ``true`` or ``false`` . The default is ``true`` . This attribute can't be enabled for UDP and TCP_UDP target groups. - ``target_health_state.unhealthy.draining_interval_seconds`` - The amount of time for Elastic Load Balancing to wait before changing the state of an unhealthy target from ``unhealthy.draining`` to ``unhealthy`` . The range is 0-360000 seconds. The default value is 0 seconds. Note: This attribute can only be configured when ``target_health_state.unhealthy.connection_termination.enabled`` is ``false`` . The following attributes are supported only by Gateway Load Balancers: - ``target_failover.on_deregistration`` - Indicates how the Gateway Load Balancer handles existing flows when a target is deregistered. The possible values are ``rebalance`` and ``no_rebalance`` . The default is ``no_rebalance`` . The two attributes ( ``target_failover.on_deregistration`` and ``target_failover.on_unhealthy`` ) can't be set independently. The value you set for both attributes must be the same. - ``target_failover.on_unhealthy`` - Indicates how the Gateway Load Balancer handles existing flows when a target is unhealthy. The possible values are ``rebalance`` and ``no_rebalance`` . The default is ``no_rebalance`` . The two attributes ( ``target_failover.on_deregistration`` and ``target_failover.on_unhealthy`` ) can't be set independently. The value you set for both attributes must be the same.
9932
9932
  :param value: The value of the attribute.
9933
9933
 
9934
9934
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html
@@ -9994,7 +9994,7 @@ class CfnTargetGroup(
9994
9994
  - ``deregistration_delay.connection_termination.enabled`` - Indicates whether the load balancer terminates connections at the end of the deregistration timeout. The value is ``true`` or ``false`` . For new UDP/TCP_UDP target groups the default is ``true`` . Otherwise, the default is ``false`` .
9995
9995
  - ``preserve_client_ip.enabled`` - Indicates whether client IP preservation is enabled. The value is ``true`` or ``false`` . The default is disabled if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, the default is enabled. Client IP preservation can't be disabled for UDP and TCP_UDP target groups.
9996
9996
  - ``proxy_protocol_v2.enabled`` - Indicates whether Proxy Protocol version 2 is enabled. The value is ``true`` or ``false`` . The default is ``false`` .
9997
- - ``target_health_state.unhealthy.connection_termination.enabled`` - Indicates whether the load balancer terminates connections to unhealthy targets. The value is ``true`` or ``false`` . The default is ``true`` .
9997
+ - ``target_health_state.unhealthy.connection_termination.enabled`` - Indicates whether the load balancer terminates connections to unhealthy targets. The value is ``true`` or ``false`` . The default is ``true`` . This attribute can't be enabled for UDP and TCP_UDP target groups.
9998
9998
  - ``target_health_state.unhealthy.draining_interval_seconds`` - The amount of time for Elastic Load Balancing to wait before changing the state of an unhealthy target from ``unhealthy.draining`` to ``unhealthy`` . The range is 0-360000 seconds. The default value is 0 seconds.
9999
9999
 
10000
10000
  Note: This attribute can only be configured when ``target_health_state.unhealthy.connection_termination.enabled`` is ``false`` .