aws-cdk-lib 2.155.0__py3-none-any.whl → 2.157.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (66) hide show
  1. aws_cdk/__init__.py +28 -24
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.155.0.jsii.tgz → aws-cdk-lib@2.157.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +10 -75
  5. aws_cdk/aws_amplify/__init__.py +106 -0
  6. aws_cdk/aws_apigatewayv2/__init__.py +81 -13
  7. aws_cdk/aws_appintegrations/__init__.py +14 -14
  8. aws_cdk/aws_applicationsignals/__init__.py +750 -1
  9. aws_cdk/aws_appsync/__init__.py +50 -18
  10. aws_cdk/aws_autoscaling/__init__.py +6 -6
  11. aws_cdk/aws_backup/__init__.py +39 -0
  12. aws_cdk/aws_batch/__init__.py +41 -0
  13. aws_cdk/aws_bedrock/__init__.py +1528 -91
  14. aws_cdk/aws_chatbot/__init__.py +6 -6
  15. aws_cdk/aws_cloudformation/__init__.py +22 -22
  16. aws_cdk/aws_cloudfront/__init__.py +650 -57
  17. aws_cdk/aws_cloudfront/experimental/__init__.py +30 -3
  18. aws_cdk/aws_cloudfront_origins/__init__.py +2034 -91
  19. aws_cdk/aws_codebuild/__init__.py +1 -1
  20. aws_cdk/aws_datasync/__init__.py +40 -29
  21. aws_cdk/aws_docdb/__init__.py +78 -6
  22. aws_cdk/aws_ec2/__init__.py +397 -75
  23. aws_cdk/aws_ecs/__init__.py +271 -101
  24. aws_cdk/aws_ecs_patterns/__init__.py +129 -11
  25. aws_cdk/aws_eks/__init__.py +40 -4
  26. aws_cdk/aws_elasticloadbalancingv2/__init__.py +26 -50
  27. aws_cdk/aws_entityresolution/__init__.py +117 -4
  28. aws_cdk/aws_events/__init__.py +40 -14
  29. aws_cdk/aws_events_targets/__init__.py +357 -0
  30. aws_cdk/aws_glue/__init__.py +0 -8
  31. aws_cdk/aws_groundstation/__init__.py +27 -16
  32. aws_cdk/aws_guardduty/__init__.py +26 -14
  33. aws_cdk/aws_iam/__init__.py +7 -8
  34. aws_cdk/aws_iotfleetwise/__init__.py +108 -0
  35. aws_cdk/aws_kms/__init__.py +53 -10
  36. aws_cdk/aws_lambda/__init__.py +147 -17
  37. aws_cdk/aws_lambda_nodejs/__init__.py +30 -3
  38. aws_cdk/aws_macie/__init__.py +4 -4
  39. aws_cdk/aws_medialive/__init__.py +348 -0
  40. aws_cdk/aws_mediapackagev2/__init__.py +38 -38
  41. aws_cdk/aws_neptune/__init__.py +14 -8
  42. aws_cdk/aws_opensearchservice/__init__.py +194 -0
  43. aws_cdk/aws_pcaconnectorscep/__init__.py +884 -0
  44. aws_cdk/aws_personalize/__init__.py +2 -2
  45. aws_cdk/aws_pipes/__init__.py +22 -22
  46. aws_cdk/aws_qbusiness/__init__.py +675 -6
  47. aws_cdk/aws_quicksight/__init__.py +3285 -0
  48. aws_cdk/aws_rds/__init__.py +24 -0
  49. aws_cdk/aws_s3/__init__.py +13 -14
  50. aws_cdk/aws_sagemaker/__init__.py +1167 -0
  51. aws_cdk/aws_secretsmanager/__init__.py +2 -3
  52. aws_cdk/aws_securityhub/__init__.py +108 -103
  53. aws_cdk/aws_ses/__init__.py +31 -0
  54. aws_cdk/aws_sns/__init__.py +19 -13
  55. aws_cdk/aws_ssm/__init__.py +10 -6
  56. aws_cdk/aws_ssmquicksetup/__init__.py +967 -0
  57. aws_cdk/aws_stepfunctions_tasks/__init__.py +106 -45
  58. aws_cdk/aws_synthetics/__init__.py +13 -0
  59. aws_cdk/cx_api/__init__.py +16 -0
  60. aws_cdk/triggers/__init__.py +30 -3
  61. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/METADATA +1 -1
  62. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/RECORD +66 -64
  63. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/LICENSE +0 -0
  64. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/NOTICE +0 -0
  65. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/WHEEL +0 -0
  66. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/top_level.txt +0 -0
@@ -1124,7 +1124,46 @@ queue_processing_fargate_service = ecs_patterns.NetworkLoadBalancedFargateServic
1124
1124
  )
1125
1125
  ```
1126
1126
 
1127
- ### Use dualstack NLB
1127
+ ### Use dualstack Load Balancer
1128
+
1129
+ You can use dualstack IP address type for Application Load Balancer and Network Load Balancer.
1130
+
1131
+ To use dualstack IP address type, you must have associated IPv6 CIDR blocks with the VPC and subnets and set the `ipAddressType` to `IpAddressType.DUAL_STACK` when creating the load balancer.
1132
+
1133
+ ### Application Load Balancer
1134
+
1135
+ You can use dualstack Application Load Balancer for Fargate and EC2 services.
1136
+
1137
+ ```python
1138
+ import aws_cdk.aws_elasticloadbalancingv2 as elbv2
1139
+
1140
+
1141
+ # The VPC and subnet must have associated IPv6 CIDR blocks.
1142
+ vpc = ec2.Vpc(self, "Vpc",
1143
+ ip_protocol=ec2.IpProtocol.DUAL_STACK
1144
+ )
1145
+ cluster = ecs.Cluster(self, "EcsCluster", vpc=vpc)
1146
+
1147
+ service = ecs_patterns.ApplicationLoadBalancedFargateService(self, "myService",
1148
+ cluster=cluster,
1149
+ task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
1150
+ image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
1151
+ ),
1152
+ ip_address_type=elbv2.IpAddressType.DUAL_STACK
1153
+ )
1154
+
1155
+ application_load_balanced_ec2_service = ecs_patterns.ApplicationLoadBalancedEc2Service(self, "myService",
1156
+ cluster=cluster,
1157
+ task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
1158
+ image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
1159
+ ),
1160
+ ip_address_type=elbv2.IpAddressType.DUAL_STACK
1161
+ )
1162
+ ```
1163
+
1164
+ ### Network Load Balancer
1165
+
1166
+ You can use dualstack Network Load Balancer for Fargate and EC2 services.
1128
1167
 
1129
1168
  ```python
1130
1169
  import aws_cdk.aws_elasticloadbalancingv2 as elbv2
@@ -1391,6 +1430,7 @@ class ApplicationLoadBalancedServiceBase(
1391
1430
  enable_execute_command: typing.Optional[builtins.bool] = None,
1392
1431
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
1393
1432
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
1433
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
1394
1434
  listener_port: typing.Optional[jsii.Number] = None,
1395
1435
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
1396
1436
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -1426,6 +1466,7 @@ class ApplicationLoadBalancedServiceBase(
1426
1466
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
1427
1467
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
1428
1468
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
1469
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
1429
1470
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
1430
1471
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
1431
1472
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -1462,6 +1503,7 @@ class ApplicationLoadBalancedServiceBase(
1462
1503
  enable_execute_command=enable_execute_command,
1463
1504
  health_check_grace_period=health_check_grace_period,
1464
1505
  idle_timeout=idle_timeout,
1506
+ ip_address_type=ip_address_type,
1465
1507
  listener_port=listener_port,
1466
1508
  load_balancer=load_balancer,
1467
1509
  load_balancer_name=load_balancer_name,
@@ -1592,6 +1634,7 @@ typing.cast(typing.Any, ApplicationLoadBalancedServiceBase).__jsii_proxy_class__
1592
1634
  "enable_execute_command": "enableExecuteCommand",
1593
1635
  "health_check_grace_period": "healthCheckGracePeriod",
1594
1636
  "idle_timeout": "idleTimeout",
1637
+ "ip_address_type": "ipAddressType",
1595
1638
  "listener_port": "listenerPort",
1596
1639
  "load_balancer": "loadBalancer",
1597
1640
  "load_balancer_name": "loadBalancerName",
@@ -1628,6 +1671,7 @@ class ApplicationLoadBalancedServiceBaseProps:
1628
1671
  enable_execute_command: typing.Optional[builtins.bool] = None,
1629
1672
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
1630
1673
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
1674
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
1631
1675
  listener_port: typing.Optional[jsii.Number] = None,
1632
1676
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
1633
1677
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -1661,6 +1705,7 @@ class ApplicationLoadBalancedServiceBaseProps:
1661
1705
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
1662
1706
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
1663
1707
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
1708
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
1664
1709
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
1665
1710
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
1666
1711
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -1740,6 +1785,7 @@ class ApplicationLoadBalancedServiceBaseProps:
1740
1785
  enable_execute_command=False,
1741
1786
  health_check_grace_period=cdk.Duration.minutes(30),
1742
1787
  idle_timeout=cdk.Duration.minutes(30),
1788
+ ip_address_type=elbv2.IpAddressType.IPV4,
1743
1789
  listener_port=123,
1744
1790
  load_balancer=application_load_balancer,
1745
1791
  load_balancer_name="loadBalancerName",
@@ -1804,6 +1850,7 @@ class ApplicationLoadBalancedServiceBaseProps:
1804
1850
  check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
1805
1851
  check_type(argname="argument health_check_grace_period", value=health_check_grace_period, expected_type=type_hints["health_check_grace_period"])
1806
1852
  check_type(argname="argument idle_timeout", value=idle_timeout, expected_type=type_hints["idle_timeout"])
1853
+ check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
1807
1854
  check_type(argname="argument listener_port", value=listener_port, expected_type=type_hints["listener_port"])
1808
1855
  check_type(argname="argument load_balancer", value=load_balancer, expected_type=type_hints["load_balancer"])
1809
1856
  check_type(argname="argument load_balancer_name", value=load_balancer_name, expected_type=type_hints["load_balancer_name"])
@@ -1848,6 +1895,8 @@ class ApplicationLoadBalancedServiceBaseProps:
1848
1895
  self._values["health_check_grace_period"] = health_check_grace_period
1849
1896
  if idle_timeout is not None:
1850
1897
  self._values["idle_timeout"] = idle_timeout
1898
+ if ip_address_type is not None:
1899
+ self._values["ip_address_type"] = ip_address_type
1851
1900
  if listener_port is not None:
1852
1901
  self._values["listener_port"] = listener_port
1853
1902
  if load_balancer is not None:
@@ -2027,6 +2076,15 @@ class ApplicationLoadBalancedServiceBaseProps:
2027
2076
  result = self._values.get("idle_timeout")
2028
2077
  return typing.cast(typing.Optional[_Duration_4839e8c3], result)
2029
2078
 
2079
+ @builtins.property
2080
+ def ip_address_type(self) -> typing.Optional[_IpAddressType_c43b240e]:
2081
+ '''The type of IP address to use.
2082
+
2083
+ :default: - IpAddressType.IPV4
2084
+ '''
2085
+ result = self._values.get("ip_address_type")
2086
+ return typing.cast(typing.Optional[_IpAddressType_c43b240e], result)
2087
+
2030
2088
  @builtins.property
2031
2089
  def listener_port(self) -> typing.Optional[jsii.Number]:
2032
2090
  '''Listener port of the application load balancer that will serve traffic to the service.
@@ -7346,6 +7404,7 @@ class ApplicationLoadBalancedEc2Service(
7346
7404
  enable_execute_command: typing.Optional[builtins.bool] = None,
7347
7405
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
7348
7406
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
7407
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
7349
7408
  listener_port: typing.Optional[jsii.Number] = None,
7350
7409
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
7351
7410
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -7387,6 +7446,7 @@ class ApplicationLoadBalancedEc2Service(
7387
7446
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
7388
7447
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
7389
7448
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
7449
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
7390
7450
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
7391
7451
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
7392
7452
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -7429,6 +7489,7 @@ class ApplicationLoadBalancedEc2Service(
7429
7489
  enable_execute_command=enable_execute_command,
7430
7490
  health_check_grace_period=health_check_grace_period,
7431
7491
  idle_timeout=idle_timeout,
7492
+ ip_address_type=ip_address_type,
7432
7493
  listener_port=listener_port,
7433
7494
  load_balancer=load_balancer,
7434
7495
  load_balancer_name=load_balancer_name,
@@ -7480,6 +7541,7 @@ class ApplicationLoadBalancedEc2Service(
7480
7541
  "enable_execute_command": "enableExecuteCommand",
7481
7542
  "health_check_grace_period": "healthCheckGracePeriod",
7482
7543
  "idle_timeout": "idleTimeout",
7544
+ "ip_address_type": "ipAddressType",
7483
7545
  "listener_port": "listenerPort",
7484
7546
  "load_balancer": "loadBalancer",
7485
7547
  "load_balancer_name": "loadBalancerName",
@@ -7522,6 +7584,7 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7522
7584
  enable_execute_command: typing.Optional[builtins.bool] = None,
7523
7585
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
7524
7586
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
7587
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
7525
7588
  listener_port: typing.Optional[jsii.Number] = None,
7526
7589
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
7527
7590
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -7561,6 +7624,7 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7561
7624
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
7562
7625
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
7563
7626
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
7627
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
7564
7628
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
7565
7629
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
7566
7630
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -7629,6 +7693,7 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7629
7693
  check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
7630
7694
  check_type(argname="argument health_check_grace_period", value=health_check_grace_period, expected_type=type_hints["health_check_grace_period"])
7631
7695
  check_type(argname="argument idle_timeout", value=idle_timeout, expected_type=type_hints["idle_timeout"])
7696
+ check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
7632
7697
  check_type(argname="argument listener_port", value=listener_port, expected_type=type_hints["listener_port"])
7633
7698
  check_type(argname="argument load_balancer", value=load_balancer, expected_type=type_hints["load_balancer"])
7634
7699
  check_type(argname="argument load_balancer_name", value=load_balancer_name, expected_type=type_hints["load_balancer_name"])
@@ -7679,6 +7744,8 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7679
7744
  self._values["health_check_grace_period"] = health_check_grace_period
7680
7745
  if idle_timeout is not None:
7681
7746
  self._values["idle_timeout"] = idle_timeout
7747
+ if ip_address_type is not None:
7748
+ self._values["ip_address_type"] = ip_address_type
7682
7749
  if listener_port is not None:
7683
7750
  self._values["listener_port"] = listener_port
7684
7751
  if load_balancer is not None:
@@ -7870,6 +7937,15 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7870
7937
  result = self._values.get("idle_timeout")
7871
7938
  return typing.cast(typing.Optional[_Duration_4839e8c3], result)
7872
7939
 
7940
+ @builtins.property
7941
+ def ip_address_type(self) -> typing.Optional[_IpAddressType_c43b240e]:
7942
+ '''The type of IP address to use.
7943
+
7944
+ :default: - IpAddressType.IPV4
7945
+ '''
7946
+ result = self._values.get("ip_address_type")
7947
+ return typing.cast(typing.Optional[_IpAddressType_c43b240e], result)
7948
+
7873
7949
  @builtins.property
7874
7950
  def listener_port(self) -> typing.Optional[jsii.Number]:
7875
7951
  '''Listener port of the application load balancer that will serve traffic to the service.
@@ -8175,11 +8251,20 @@ class ApplicationLoadBalancedFargateService(
8175
8251
  cpu=512,
8176
8252
  task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
8177
8253
  image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
8178
- ),
8179
- task_subnets=ec2.SubnetSelection(
8180
- subnets=[ec2.Subnet.from_subnet_id(self, "subnet", "VpcISOLATEDSubnet1Subnet80F07FA0")]
8181
- ),
8182
- load_balancer_name="application-lb-name"
8254
+ )
8255
+ )
8256
+
8257
+ scalable_target = load_balanced_fargate_service.service.auto_scale_task_count(
8258
+ min_capacity=1,
8259
+ max_capacity=20
8260
+ )
8261
+
8262
+ scalable_target.scale_on_cpu_utilization("CpuScaling",
8263
+ target_utilization_percent=50
8264
+ )
8265
+
8266
+ scalable_target.scale_on_memory_utilization("MemoryScaling",
8267
+ target_utilization_percent=50
8183
8268
  )
8184
8269
  '''
8185
8270
 
@@ -8205,6 +8290,7 @@ class ApplicationLoadBalancedFargateService(
8205
8290
  enable_execute_command: typing.Optional[builtins.bool] = None,
8206
8291
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
8207
8292
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
8293
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
8208
8294
  listener_port: typing.Optional[jsii.Number] = None,
8209
8295
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
8210
8296
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -8250,6 +8336,7 @@ class ApplicationLoadBalancedFargateService(
8250
8336
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
8251
8337
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
8252
8338
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
8339
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
8253
8340
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
8254
8341
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
8255
8342
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -8296,6 +8383,7 @@ class ApplicationLoadBalancedFargateService(
8296
8383
  enable_execute_command=enable_execute_command,
8297
8384
  health_check_grace_period=health_check_grace_period,
8298
8385
  idle_timeout=idle_timeout,
8386
+ ip_address_type=ip_address_type,
8299
8387
  listener_port=listener_port,
8300
8388
  load_balancer=load_balancer,
8301
8389
  load_balancer_name=load_balancer_name,
@@ -8361,6 +8449,7 @@ class ApplicationLoadBalancedFargateService(
8361
8449
  "enable_execute_command": "enableExecuteCommand",
8362
8450
  "health_check_grace_period": "healthCheckGracePeriod",
8363
8451
  "idle_timeout": "idleTimeout",
8452
+ "ip_address_type": "ipAddressType",
8364
8453
  "listener_port": "listenerPort",
8365
8454
  "load_balancer": "loadBalancer",
8366
8455
  "load_balancer_name": "loadBalancerName",
@@ -8410,6 +8499,7 @@ class ApplicationLoadBalancedFargateServiceProps(
8410
8499
  enable_execute_command: typing.Optional[builtins.bool] = None,
8411
8500
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
8412
8501
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
8502
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
8413
8503
  listener_port: typing.Optional[jsii.Number] = None,
8414
8504
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
8415
8505
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -8453,6 +8543,7 @@ class ApplicationLoadBalancedFargateServiceProps(
8453
8543
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
8454
8544
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
8455
8545
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
8546
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
8456
8547
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
8457
8548
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
8458
8549
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -8494,11 +8585,20 @@ class ApplicationLoadBalancedFargateServiceProps(
8494
8585
  cpu=512,
8495
8586
  task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
8496
8587
  image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
8497
- ),
8498
- task_subnets=ec2.SubnetSelection(
8499
- subnets=[ec2.Subnet.from_subnet_id(self, "subnet", "VpcISOLATEDSubnet1Subnet80F07FA0")]
8500
- ),
8501
- load_balancer_name="application-lb-name"
8588
+ )
8589
+ )
8590
+
8591
+ scalable_target = load_balanced_fargate_service.service.auto_scale_task_count(
8592
+ min_capacity=1,
8593
+ max_capacity=20
8594
+ )
8595
+
8596
+ scalable_target.scale_on_cpu_utilization("CpuScaling",
8597
+ target_utilization_percent=50
8598
+ )
8599
+
8600
+ scalable_target.scale_on_memory_utilization("MemoryScaling",
8601
+ target_utilization_percent=50
8502
8602
  )
8503
8603
  '''
8504
8604
  if isinstance(circuit_breaker, dict):
@@ -8530,6 +8630,7 @@ class ApplicationLoadBalancedFargateServiceProps(
8530
8630
  check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
8531
8631
  check_type(argname="argument health_check_grace_period", value=health_check_grace_period, expected_type=type_hints["health_check_grace_period"])
8532
8632
  check_type(argname="argument idle_timeout", value=idle_timeout, expected_type=type_hints["idle_timeout"])
8633
+ check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
8533
8634
  check_type(argname="argument listener_port", value=listener_port, expected_type=type_hints["listener_port"])
8534
8635
  check_type(argname="argument load_balancer", value=load_balancer, expected_type=type_hints["load_balancer"])
8535
8636
  check_type(argname="argument load_balancer_name", value=load_balancer_name, expected_type=type_hints["load_balancer_name"])
@@ -8584,6 +8685,8 @@ class ApplicationLoadBalancedFargateServiceProps(
8584
8685
  self._values["health_check_grace_period"] = health_check_grace_period
8585
8686
  if idle_timeout is not None:
8586
8687
  self._values["idle_timeout"] = idle_timeout
8688
+ if ip_address_type is not None:
8689
+ self._values["ip_address_type"] = ip_address_type
8587
8690
  if listener_port is not None:
8588
8691
  self._values["listener_port"] = listener_port
8589
8692
  if load_balancer is not None:
@@ -8783,6 +8886,15 @@ class ApplicationLoadBalancedFargateServiceProps(
8783
8886
  result = self._values.get("idle_timeout")
8784
8887
  return typing.cast(typing.Optional[_Duration_4839e8c3], result)
8785
8888
 
8889
+ @builtins.property
8890
+ def ip_address_type(self) -> typing.Optional[_IpAddressType_c43b240e]:
8891
+ '''The type of IP address to use.
8892
+
8893
+ :default: - IpAddressType.IPV4
8894
+ '''
8895
+ result = self._values.get("ip_address_type")
8896
+ return typing.cast(typing.Optional[_IpAddressType_c43b240e], result)
8897
+
8786
8898
  @builtins.property
8787
8899
  def listener_port(self) -> typing.Optional[jsii.Number]:
8788
8900
  '''Listener port of the application load balancer that will serve traffic to the service.
@@ -16055,6 +16167,7 @@ def _typecheckingstub__8c3ede040de35ed817f7c39537976690e81673c7be443b152e959f7f9
16055
16167
  enable_execute_command: typing.Optional[builtins.bool] = None,
16056
16168
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16057
16169
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16170
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16058
16171
  listener_port: typing.Optional[jsii.Number] = None,
16059
16172
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16060
16173
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16110,6 +16223,7 @@ def _typecheckingstub__a68b3d7133b7b22b27e8c904e21f15f3a38d6a44c16a16cdf89d4051b
16110
16223
  enable_execute_command: typing.Optional[builtins.bool] = None,
16111
16224
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16112
16225
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16226
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16113
16227
  listener_port: typing.Optional[jsii.Number] = None,
16114
16228
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16115
16229
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16694,6 +16808,7 @@ def _typecheckingstub__c7c2728dc66395799b8f32553505628c230427b49bbbc6fd682aa7208
16694
16808
  enable_execute_command: typing.Optional[builtins.bool] = None,
16695
16809
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16696
16810
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16811
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16697
16812
  listener_port: typing.Optional[jsii.Number] = None,
16698
16813
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16699
16814
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16730,6 +16845,7 @@ def _typecheckingstub__b3f33e583b66138930e8047d22ea9454885645ecc97e1b8505d5c0a26
16730
16845
  enable_execute_command: typing.Optional[builtins.bool] = None,
16731
16846
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16732
16847
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16848
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16733
16849
  listener_port: typing.Optional[jsii.Number] = None,
16734
16850
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16735
16851
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16778,6 +16894,7 @@ def _typecheckingstub__52e4707f036e6b5ab8a12a1dd88ad78656d9ef102eb7d04caef957d69
16778
16894
  enable_execute_command: typing.Optional[builtins.bool] = None,
16779
16895
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16780
16896
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16897
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16781
16898
  listener_port: typing.Optional[jsii.Number] = None,
16782
16899
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16783
16900
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16820,6 +16937,7 @@ def _typecheckingstub__cdcb8bd483faaddad588ad37d4527fa1a0028fc2307a21fc3690044a0
16820
16937
  enable_execute_command: typing.Optional[builtins.bool] = None,
16821
16938
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16822
16939
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16940
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16823
16941
  listener_port: typing.Optional[jsii.Number] = None,
16824
16942
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16825
16943
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -660,7 +660,7 @@ The default value is `eks.EndpointAccess.PUBLIC_AND_PRIVATE`. Which means the cl
660
660
 
661
661
  ### Alb Controller
662
662
 
663
- Some Kubernetes resources are commonly implemented on AWS with the help of the [ALB Controller](https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.5/).
663
+ Some Kubernetes resources are commonly implemented on AWS with the help of the [ALB Controller](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/).
664
664
 
665
665
  From the docs:
666
666
 
@@ -675,7 +675,7 @@ To deploy the controller on your EKS cluster, configure the `albController` prop
675
675
  eks.Cluster(self, "HelloEKS",
676
676
  version=eks.KubernetesVersion.V1_30,
677
677
  alb_controller=eks.AlbControllerOptions(
678
- version=eks.AlbControllerVersion.V2_6_2
678
+ version=eks.AlbControllerVersion.V2_8_2
679
679
  )
680
680
  )
681
681
  ```
@@ -2879,7 +2879,7 @@ class AlbControllerOptions:
2879
2879
  eks.Cluster(self, "HelloEKS",
2880
2880
  version=eks.KubernetesVersion.V1_30,
2881
2881
  alb_controller=eks.AlbControllerOptions(
2882
- version=eks.AlbControllerVersion.V2_6_2
2882
+ version=eks.AlbControllerVersion.V2_8_2
2883
2883
  )
2884
2884
  )
2885
2885
  '''
@@ -3072,7 +3072,7 @@ class AlbControllerVersion(
3072
3072
  eks.Cluster(self, "HelloEKS",
3073
3073
  version=eks.KubernetesVersion.V1_30,
3074
3074
  alb_controller=eks.AlbControllerOptions(
3075
- version=eks.AlbControllerVersion.V2_6_2
3075
+ version=eks.AlbControllerVersion.V2_8_2
3076
3076
  )
3077
3077
  )
3078
3078
  '''
@@ -3269,6 +3269,42 @@ class AlbControllerVersion(
3269
3269
  '''v2.6.2.'''
3270
3270
  return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_6_2"))
3271
3271
 
3272
+ @jsii.python.classproperty
3273
+ @jsii.member(jsii_name="V2_7_0")
3274
+ def V2_7_0(cls) -> "AlbControllerVersion":
3275
+ '''v2.7.0.'''
3276
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_7_0"))
3277
+
3278
+ @jsii.python.classproperty
3279
+ @jsii.member(jsii_name="V2_7_1")
3280
+ def V2_7_1(cls) -> "AlbControllerVersion":
3281
+ '''v2.7.1.'''
3282
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_7_1"))
3283
+
3284
+ @jsii.python.classproperty
3285
+ @jsii.member(jsii_name="V2_7_2")
3286
+ def V2_7_2(cls) -> "AlbControllerVersion":
3287
+ '''v2.7.2.'''
3288
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_7_2"))
3289
+
3290
+ @jsii.python.classproperty
3291
+ @jsii.member(jsii_name="V2_8_0")
3292
+ def V2_8_0(cls) -> "AlbControllerVersion":
3293
+ '''v2.8.0.'''
3294
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_8_0"))
3295
+
3296
+ @jsii.python.classproperty
3297
+ @jsii.member(jsii_name="V2_8_1")
3298
+ def V2_8_1(cls) -> "AlbControllerVersion":
3299
+ '''v2.8.1.'''
3300
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_8_1"))
3301
+
3302
+ @jsii.python.classproperty
3303
+ @jsii.member(jsii_name="V2_8_2")
3304
+ def V2_8_2(cls) -> "AlbControllerVersion":
3305
+ '''v2.8.2.'''
3306
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_8_2"))
3307
+
3272
3308
  @builtins.property
3273
3309
  @jsii.member(jsii_name="custom")
3274
3310
  def custom(self) -> builtins.bool:
@@ -1021,7 +1021,7 @@ class AddNetworkTargetsProps:
1021
1021
  ) -> None:
1022
1022
  '''Properties for adding new network targets to a listener.
1023
1023
 
1024
- :param port: The port on which the listener listens for requests. Default: Determined from protocol if known
1024
+ :param port: The port on which the target receives traffic. Default: Determined from protocol if known
1025
1025
  :param deregistration_delay: The amount of time for Elastic Load Balancing to wait before deregistering a target. The range is 0-3600 seconds. Default: Duration.minutes(5)
1026
1026
  :param health_check: Health check configuration. Default: - The default value for each property in this configuration varies depending on the target.
1027
1027
  :param preserve_client_ip: Indicates whether client IP preservation is enabled. Default: false if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, true.
@@ -1092,7 +1092,7 @@ class AddNetworkTargetsProps:
1092
1092
 
1093
1093
  @builtins.property
1094
1094
  def port(self) -> jsii.Number:
1095
- '''The port on which the listener listens for requests.
1095
+ '''The port on which the target receives traffic.
1096
1096
 
1097
1097
  :default: Determined from protocol if known
1098
1098
  '''
@@ -8812,7 +8812,7 @@ class CfnTargetGroup(
8812
8812
  :param protocol: The protocol to use for routing traffic to the targets. For Application Load Balancers, the supported protocols are HTTP and HTTPS. For Network Load Balancers, the supported protocols are TCP, TLS, UDP, or TCP_UDP. For Gateway Load Balancers, the supported protocol is GENEVE. A TCP_UDP listener must be associated with a TCP_UDP target group. If the target is a Lambda function, this parameter does not apply.
8813
8813
  :param protocol_version: [HTTP/HTTPS protocol] The protocol version. The possible values are ``GRPC`` , ``HTTP1`` , and ``HTTP2`` .
8814
8814
  :param tags: The tags.
8815
- :param target_group_attributes: The attributes.
8815
+ :param target_group_attributes: The target group attributes.
8816
8816
  :param targets: The targets.
8817
8817
  :param target_type: The type of target that you must specify when registering targets with this target group. You can't specify targets for a target group using more than one target type. - ``instance`` - Register targets by instance ID. This is the default value. - ``ip`` - Register targets by IP address. You can specify IP addresses from the subnets of the virtual private cloud (VPC) for the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP addresses. - ``lambda`` - Register a single Lambda function as a target. - ``alb`` - Register a single Application Load Balancer as a target.
8818
8818
  :param unhealthy_threshold_count: The number of consecutive health check failures required before considering a target unhealthy. The range is 2-10. If the target group protocol is TCP, TCP_UDP, UDP, TLS, HTTP or HTTPS, the default is 2. For target groups with a protocol of GENEVE, the default is 2. If the target type is ``lambda`` , the default is 5.
@@ -9127,7 +9127,7 @@ class CfnTargetGroup(
9127
9127
  def target_group_attributes(
9128
9128
  self,
9129
9129
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTargetGroup.TargetGroupAttributeProperty"]]]]:
9130
- '''The attributes.'''
9130
+ '''The target group attributes.'''
9131
9131
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTargetGroup.TargetGroupAttributeProperty"]]]], jsii.get(self, "targetGroupAttributes"))
9132
9132
 
9133
9133
  @target_group_attributes.setter
@@ -9566,7 +9566,7 @@ class CfnTargetGroupProps:
9566
9566
  :param protocol: The protocol to use for routing traffic to the targets. For Application Load Balancers, the supported protocols are HTTP and HTTPS. For Network Load Balancers, the supported protocols are TCP, TLS, UDP, or TCP_UDP. For Gateway Load Balancers, the supported protocol is GENEVE. A TCP_UDP listener must be associated with a TCP_UDP target group. If the target is a Lambda function, this parameter does not apply.
9567
9567
  :param protocol_version: [HTTP/HTTPS protocol] The protocol version. The possible values are ``GRPC`` , ``HTTP1`` , and ``HTTP2`` .
9568
9568
  :param tags: The tags.
9569
- :param target_group_attributes: The attributes.
9569
+ :param target_group_attributes: The target group attributes.
9570
9570
  :param targets: The targets.
9571
9571
  :param target_type: The type of target that you must specify when registering targets with this target group. You can't specify targets for a target group using more than one target type. - ``instance`` - Register targets by instance ID. This is the default value. - ``ip`` - Register targets by IP address. You can specify IP addresses from the subnets of the virtual private cloud (VPC) for the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP addresses. - ``lambda`` - Register a single Lambda function as a target. - ``alb`` - Register a single Application Load Balancer as a target.
9572
9572
  :param unhealthy_threshold_count: The number of consecutive health check failures required before considering a target unhealthy. The range is 2-10. If the target group protocol is TCP, TCP_UDP, UDP, TLS, HTTP or HTTPS, the default is 2. For target groups with a protocol of GENEVE, the default is 2. If the target type is ``lambda`` , the default is 5.
@@ -9841,7 +9841,7 @@ class CfnTargetGroupProps:
9841
9841
  def target_group_attributes(
9842
9842
  self,
9843
9843
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnTargetGroup.TargetGroupAttributeProperty]]]]:
9844
- '''The attributes.
9844
+ '''The target group attributes.
9845
9845
 
9846
9846
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattributes
9847
9847
  '''
@@ -14942,53 +14942,29 @@ class IpAddressType(enum.Enum):
14942
14942
 
14943
14943
  Example::
14944
14944
 
14945
- # vpc: ec2.Vpc
14946
-
14947
-
14948
- lb = elbv2.ApplicationLoadBalancer(self, "LB",
14949
- vpc=vpc,
14950
- internet_facing=True,
14945
+ import aws_cdk.aws_elasticloadbalancingv2 as elbv2
14951
14946
 
14952
- # Whether HTTP/2 is enabled
14953
- http2_enabled=False,
14954
-
14955
- # The idle timeout value, in seconds
14956
- idle_timeout=Duration.seconds(1000),
14957
14947
 
14958
- # Whether HTTP headers with header fields thatare not valid
14959
- # are removed by the load balancer (true), or routed to targets
14960
- drop_invalid_header_fields=True,
14961
-
14962
- # How the load balancer handles requests that might
14963
- # pose a security risk to your application
14964
- desync_mitigation_mode=elbv2.DesyncMitigationMode.DEFENSIVE,
14965
-
14966
- # The type of IP addresses to use.
14967
- ip_address_type=elbv2.IpAddressType.IPV4,
14968
-
14969
- # The duration of client keep-alive connections
14970
- client_keep_alive=Duration.seconds(500),
14971
-
14972
- # Whether cross-zone load balancing is enabled.
14973
- cross_zone_enabled=True,
14974
-
14975
- # Whether the load balancer blocks traffic through the Internet Gateway (IGW).
14976
- deny_all_igw_traffic=False,
14977
-
14978
- # Whether to preserve host header in the request to the target
14979
- preserve_host_header=True,
14980
-
14981
- # Whether to add the TLS information header to the request
14982
- x_amzn_tls_version_and_cipher_suite_headers=True,
14983
-
14984
- # Whether the X-Forwarded-For header should preserve the source port
14985
- preserve_xff_client_port=True,
14948
+ # The VPC and subnet must have associated IPv6 CIDR blocks.
14949
+ vpc = ec2.Vpc(self, "Vpc",
14950
+ ip_protocol=ec2.IpProtocol.DUAL_STACK
14951
+ )
14952
+ cluster = ecs.Cluster(self, "EcsCluster", vpc=vpc)
14986
14953
 
14987
- # The processing mode for X-Forwarded-For headers
14988
- xff_header_processing_mode=elbv2.XffHeaderProcessingMode.APPEND,
14954
+ service = ecs_patterns.ApplicationLoadBalancedFargateService(self, "myService",
14955
+ cluster=cluster,
14956
+ task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
14957
+ image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
14958
+ ),
14959
+ ip_address_type=elbv2.IpAddressType.DUAL_STACK
14960
+ )
14989
14961
 
14990
- # Whether to allow a load balancer to route requests to targets if it is unable to forward the request to AWS WAF.
14991
- waf_fail_open=True
14962
+ application_load_balanced_ec2_service = ecs_patterns.ApplicationLoadBalancedEc2Service(self, "myService",
14963
+ cluster=cluster,
14964
+ task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
14965
+ image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
14966
+ ),
14967
+ ip_address_type=elbv2.IpAddressType.DUAL_STACK
14992
14968
  )
14993
14969
  '''
14994
14970
 
@@ -21794,7 +21770,7 @@ class NetworkListener(
21794
21770
  one set of targets must be added without conditions.
21795
21771
 
21796
21772
  :param id: -
21797
- :param port: The port on which the listener listens for requests. Default: Determined from protocol if known
21773
+ :param port: The port on which the target receives traffic. Default: Determined from protocol if known
21798
21774
  :param deregistration_delay: The amount of time for Elastic Load Balancing to wait before deregistering a target. The range is 0-3600 seconds. Default: Duration.minutes(5)
21799
21775
  :param health_check: Health check configuration. Default: - The default value for each property in this configuration varies depending on the target.
21800
21776
  :param preserve_client_ip: Indicates whether client IP preservation is enabled. Default: false if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, true.