aws-cdk-lib 2.197.0__py3-none-any.whl → 2.199.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.
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.197.0.jsii.tgz → aws-cdk-lib@2.199.0.jsii.tgz} +0 -0
- aws_cdk/aws_appconfig/__init__.py +296 -48
- aws_cdk/aws_applicationautoscaling/__init__.py +36 -0
- aws_cdk/aws_appsync/__init__.py +31 -21
- aws_cdk/aws_aps/__init__.py +343 -0
- aws_cdk/aws_autoscaling/__init__.py +2 -1
- aws_cdk/aws_bedrock/__init__.py +387 -4
- aws_cdk/aws_codepipeline/__init__.py +4 -2
- aws_cdk/aws_datasync/__init__.py +885 -839
- aws_cdk/aws_deadline/__init__.py +23 -4
- aws_cdk/aws_ec2/__init__.py +229 -12
- aws_cdk/aws_ecs/__init__.py +14 -2
- aws_cdk/aws_ecs_patterns/__init__.py +64 -12
- aws_cdk/aws_eks/__init__.py +40 -9
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +14 -8
- aws_cdk/aws_events_targets/__init__.py +78 -1
- aws_cdk/aws_gamelift/__init__.py +15 -17
- aws_cdk/aws_lex/__init__.py +1245 -172
- aws_cdk/aws_mediapackagev2/__init__.py +11 -10
- aws_cdk/aws_omics/__init__.py +41 -19
- aws_cdk/aws_pcs/__init__.py +126 -0
- aws_cdk/aws_rds/__init__.py +48 -21
- aws_cdk/aws_rolesanywhere/__init__.py +14 -13
- aws_cdk/aws_sagemaker/__init__.py +38 -12
- aws_cdk/aws_ses/__init__.py +437 -0
- aws_cdk/aws_ssmquicksetup/__init__.py +10 -2
- aws_cdk/aws_stepfunctions_tasks/__init__.py +1502 -2
- aws_cdk/aws_synthetics/__init__.py +137 -3
- aws_cdk/aws_vpclattice/__init__.py +219 -209
- aws_cdk/aws_wafv2/__init__.py +4 -4
- aws_cdk/aws_workspaces/__init__.py +5 -3
- {aws_cdk_lib-2.197.0.dist-info → aws_cdk_lib-2.199.0.dist-info}/METADATA +2 -2
- {aws_cdk_lib-2.197.0.dist-info → aws_cdk_lib-2.199.0.dist-info}/RECORD +38 -38
- {aws_cdk_lib-2.197.0.dist-info → aws_cdk_lib-2.199.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.197.0.dist-info → aws_cdk_lib-2.199.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.197.0.dist-info → aws_cdk_lib-2.199.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.197.0.dist-info → aws_cdk_lib-2.199.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_ecs/__init__.py
CHANGED
|
@@ -10064,7 +10064,7 @@ class CfnService(
|
|
|
10064
10064
|
- For tasks that are on AWS Fargate , because you don't have access to the underlying infrastructure your tasks are hosted on, any additional software needed must be installed outside of the task. For example, the Fluentd output aggregators or a remote host running Logstash to send Gelf logs to.
|
|
10065
10065
|
|
|
10066
10066
|
:param log_driver: The log driver to use for the container. For tasks on AWS Fargate , the supported log drivers are ``awslogs`` , ``splunk`` , and ``awsfirelens`` . For tasks hosted on Amazon EC2 instances, the supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``syslog`` , ``splunk`` , and ``awsfirelens`` . For more information about using the ``awslogs`` log driver, see `Send Amazon ECS logs to CloudWatch <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html>`_ in the *Amazon Elastic Container Service Developer Guide* . For more information about using the ``awsfirelens`` log driver, see `Send Amazon ECS logs to an AWS service or AWS Partner <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html>`_ . .. epigraph:: If you have a custom driver that isn't listed, you can fork the Amazon ECS container agent project that's `available on GitHub <https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent>`_ and customize it to work with that driver. We encourage you to submit pull requests for changes that you would like to have included. However, we don't currently provide support for running modified copies of this software.
|
|
10067
|
-
:param options: The configuration options to send to the log driver. The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following: - **awslogs-create-group** - Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to ``false`` . .. epigraph:: Your IAM policy must include the ``logs:CreateLogGroup`` permission before you attempt to use ``awslogs-create-group`` . - **awslogs-region** - Required: Yes Specify the AWS Region that the ``awslogs`` log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. - **awslogs-group** - Required: Yes Make sure to specify a log group that the ``awslogs`` log driver sends its log streams to. - **awslogs-stream-prefix** - Required: Yes, when using Fargate.Optional when using EC2. Use the ``awslogs-stream-prefix`` option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format ``prefix-name/container-name/ecs-task-id`` . If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. - **awslogs-datetime-format** - Required: No This option defines a multiline start pattern in Python ``strftime`` format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see `awslogs-datetime-format <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-datetime-format>`_ . You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. - **awslogs-multiline-pattern** - Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see `awslogs-multiline-pattern <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-multiline-pattern>`_ . This option is ignored if ``awslogs-datetime-format`` is also configured. You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. The following options apply to all supported log drivers. - **mode** - Required: No Valid values: ``non-blocking`` | ``blocking`` This option defines the delivery mode of log messages from the container to the log driver specified using ``logDriver`` . The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the ``blocking`` mode and the flow of logs is interrupted, calls from container code to write to the ``stdout`` and ``stderr`` streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ . You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* . - **max-buffer-size** - Required: No Default value: ``1m`` When ``non-blocking`` mode is used, the ``max-buffer-size`` log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url`` . When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker. Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream`` . When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream`` . When you export logs to Amazon OpenSearch Service, you can specify options like ``Name`` , ``Host`` (OpenSearch Service endpoint without protocol), ``Port`` , ``Index`` , ``Type`` , ``Aws_auth`` , ``Aws_region`` , ``Suppress_Type_Name`` , and ``tls`` . For more information, see `Under the hood: FireLens for Amazon ECS Tasks <https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/>`_ . When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region`` , ``total_file_size`` , ``upload_timeout`` , and ``use_put_object`` as options. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``
|
|
10067
|
+
:param options: The configuration options to send to the log driver. The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following: - **awslogs-create-group** - Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to ``false`` . .. epigraph:: Your IAM policy must include the ``logs:CreateLogGroup`` permission before you attempt to use ``awslogs-create-group`` . - **awslogs-region** - Required: Yes Specify the AWS Region that the ``awslogs`` log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. - **awslogs-group** - Required: Yes Make sure to specify a log group that the ``awslogs`` log driver sends its log streams to. - **awslogs-stream-prefix** - Required: Yes, when using Fargate.Optional when using EC2. Use the ``awslogs-stream-prefix`` option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format ``prefix-name/container-name/ecs-task-id`` . If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. - **awslogs-datetime-format** - Required: No This option defines a multiline start pattern in Python ``strftime`` format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see `awslogs-datetime-format <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-datetime-format>`_ . You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. - **awslogs-multiline-pattern** - Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see `awslogs-multiline-pattern <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-multiline-pattern>`_ . This option is ignored if ``awslogs-datetime-format`` is also configured. You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. The following options apply to all supported log drivers. - **mode** - Required: No Valid values: ``non-blocking`` | ``blocking`` This option defines the delivery mode of log messages from the container to the log driver specified using ``logDriver`` . The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the ``blocking`` mode and the flow of logs is interrupted, calls from container code to write to the ``stdout`` and ``stderr`` streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ . You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: On June 25, 2025, Amazon ECS is changing the default log driver mode from ``blocking`` to ``non-blocking`` to prioritize task availability over logging. To continue using the ``blocking`` mode after this change, do one of the following: - Set the ``mode`` option in your container definition's ``logConfiguration`` as ``blocking`` . - Set the ``defaultLogDriverMode`` account setting to ``blocking`` . - **max-buffer-size** - Required: No Default value: ``1m`` When ``non-blocking`` mode is used, the ``max-buffer-size`` log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url`` . When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker. Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream`` . When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream`` . When you export logs to Amazon OpenSearch Service, you can specify options like ``Name`` , ``Host`` (OpenSearch Service endpoint without protocol), ``Port`` , ``Index`` , ``Type`` , ``Aws_auth`` , ``Aws_region`` , ``Suppress_Type_Name`` , and ``tls`` . For more information, see `Under the hood: FireLens for Amazon ECS Tasks <https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/>`_ . When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region`` , ``total_file_size`` , ``upload_timeout`` , and ``use_put_object`` as options. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``
|
|
10068
10068
|
:param secret_options: The secrets to pass to the log configuration. For more information, see `Specifying sensitive data <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
10069
10069
|
|
|
10070
10070
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-logconfiguration.html
|
|
@@ -10192,6 +10192,12 @@ class CfnService(
|
|
|
10192
10192
|
If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ .
|
|
10193
10193
|
|
|
10194
10194
|
You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
10195
|
+
.. epigraph::
|
|
10196
|
+
|
|
10197
|
+
On June 25, 2025, Amazon ECS is changing the default log driver mode from ``blocking`` to ``non-blocking`` to prioritize task availability over logging. To continue using the ``blocking`` mode after this change, do one of the following:
|
|
10198
|
+
|
|
10199
|
+
- Set the ``mode`` option in your container definition's ``logConfiguration`` as ``blocking`` .
|
|
10200
|
+
- Set the ``defaultLogDriverMode`` account setting to ``blocking`` .
|
|
10195
10201
|
|
|
10196
10202
|
- **max-buffer-size** - Required: No
|
|
10197
10203
|
|
|
@@ -15998,7 +16004,7 @@ class CfnTaskDefinition(
|
|
|
15998
16004
|
'''The ``LogConfiguration`` property specifies log configuration options to send to a custom log driver for the container.
|
|
15999
16005
|
|
|
16000
16006
|
:param log_driver: The log driver to use for the container. For tasks on AWS Fargate , the supported log drivers are ``awslogs`` , ``splunk`` , and ``awsfirelens`` . For tasks hosted on Amazon EC2 instances, the supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``syslog`` , ``splunk`` , and ``awsfirelens`` . For more information about using the ``awslogs`` log driver, see `Send Amazon ECS logs to CloudWatch <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html>`_ in the *Amazon Elastic Container Service Developer Guide* . For more information about using the ``awsfirelens`` log driver, see `Send Amazon ECS logs to an AWS service or AWS Partner <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html>`_ . .. epigraph:: If you have a custom driver that isn't listed, you can fork the Amazon ECS container agent project that's `available on GitHub <https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent>`_ and customize it to work with that driver. We encourage you to submit pull requests for changes that you would like to have included. However, we don't currently provide support for running modified copies of this software.
|
|
16001
|
-
:param options: The configuration options to send to the log driver. The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following: - **awslogs-create-group** - Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to ``false`` . .. epigraph:: Your IAM policy must include the ``logs:CreateLogGroup`` permission before you attempt to use ``awslogs-create-group`` . - **awslogs-region** - Required: Yes Specify the AWS Region that the ``awslogs`` log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. - **awslogs-group** - Required: Yes Make sure to specify a log group that the ``awslogs`` log driver sends its log streams to. - **awslogs-stream-prefix** - Required: Yes, when using Fargate.Optional when using EC2. Use the ``awslogs-stream-prefix`` option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format ``prefix-name/container-name/ecs-task-id`` . If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. - **awslogs-datetime-format** - Required: No This option defines a multiline start pattern in Python ``strftime`` format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see `awslogs-datetime-format <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-datetime-format>`_ . You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. - **awslogs-multiline-pattern** - Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see `awslogs-multiline-pattern <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-multiline-pattern>`_ . This option is ignored if ``awslogs-datetime-format`` is also configured. You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. The following options apply to all supported log drivers. - **mode** - Required: No Valid values: ``non-blocking`` | ``blocking`` This option defines the delivery mode of log messages from the container to the log driver specified using ``logDriver`` . The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the ``blocking`` mode and the flow of logs is interrupted, calls from container code to write to the ``stdout`` and ``stderr`` streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ . You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* . - **max-buffer-size** - Required: No Default value: ``1m`` When ``non-blocking`` mode is used, the ``max-buffer-size`` log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url`` . When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker. Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream`` . When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream`` . When you export logs to Amazon OpenSearch Service, you can specify options like ``Name`` , ``Host`` (OpenSearch Service endpoint without protocol), ``Port`` , ``Index`` , ``Type`` , ``Aws_auth`` , ``Aws_region`` , ``Suppress_Type_Name`` , and ``tls`` . For more information, see `Under the hood: FireLens for Amazon ECS Tasks <https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/>`_ . When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region`` , ``total_file_size`` , ``upload_timeout`` , and ``use_put_object`` as options. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``
|
|
16007
|
+
:param options: The configuration options to send to the log driver. The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following: - **awslogs-create-group** - Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to ``false`` . .. epigraph:: Your IAM policy must include the ``logs:CreateLogGroup`` permission before you attempt to use ``awslogs-create-group`` . - **awslogs-region** - Required: Yes Specify the AWS Region that the ``awslogs`` log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. - **awslogs-group** - Required: Yes Make sure to specify a log group that the ``awslogs`` log driver sends its log streams to. - **awslogs-stream-prefix** - Required: Yes, when using Fargate.Optional when using EC2. Use the ``awslogs-stream-prefix`` option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format ``prefix-name/container-name/ecs-task-id`` . If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. - **awslogs-datetime-format** - Required: No This option defines a multiline start pattern in Python ``strftime`` format. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see `awslogs-datetime-format <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-datetime-format>`_ . You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. - **awslogs-multiline-pattern** - Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don’t match the pattern. The matched line is the delimiter between log messages. For more information, see `awslogs-multiline-pattern <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/#awslogs-multiline-pattern>`_ . This option is ignored if ``awslogs-datetime-format`` is also configured. You cannot configure both the ``awslogs-datetime-format`` and ``awslogs-multiline-pattern`` options. .. epigraph:: Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. The following options apply to all supported log drivers. - **mode** - Required: No Valid values: ``non-blocking`` | ``blocking`` This option defines the delivery mode of log messages from the container to the log driver specified using ``logDriver`` . The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the ``blocking`` mode and the flow of logs is interrupted, calls from container code to write to the ``stdout`` and ``stderr`` streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ . You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: On June 25, 2025, Amazon ECS is changing the default log driver mode from ``blocking`` to ``non-blocking`` to prioritize task availability over logging. To continue using the ``blocking`` mode after this change, do one of the following: - Set the ``mode`` option in your container definition's ``logConfiguration`` as ``blocking`` . - Set the ``defaultLogDriverMode`` account setting to ``blocking`` . - **max-buffer-size** - Required: No Default value: ``1m`` When ``non-blocking`` mode is used, the ``max-buffer-size`` log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url`` . When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker. Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream`` . When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream`` . When you export logs to Amazon OpenSearch Service, you can specify options like ``Name`` , ``Host`` (OpenSearch Service endpoint without protocol), ``Port`` , ``Index`` , ``Type`` , ``Aws_auth`` , ``Aws_region`` , ``Suppress_Type_Name`` , and ``tls`` . For more information, see `Under the hood: FireLens for Amazon ECS Tasks <https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/>`_ . When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region`` , ``total_file_size`` , ``upload_timeout`` , and ``use_put_object`` as options. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``
|
|
16002
16008
|
:param secret_options: The secrets to pass to the log configuration. For more information, see `Specifying sensitive data <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
16003
16009
|
|
|
16004
16010
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-logconfiguration.html
|
|
@@ -16129,6 +16135,12 @@ class CfnTaskDefinition(
|
|
|
16129
16135
|
If you use the ``non-blocking`` mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the ``max-buffer-size`` option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see `Preventing log loss with non-blocking mode in the ``awslogs`` container log driver <https://docs.aws.amazon.com/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`_ .
|
|
16130
16136
|
|
|
16131
16137
|
You can set a default ``mode`` for all containers in a specific AWS Region by using the ``defaultLogDriverMode`` account setting. If you don't specify the ``mode`` option or configure the account setting, Amazon ECS will default to the ``blocking`` mode. For more information about the account setting, see `Default log driver mode <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-account-settings.html#default-log-driver-mode>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
16138
|
+
.. epigraph::
|
|
16139
|
+
|
|
16140
|
+
On June 25, 2025, Amazon ECS is changing the default log driver mode from ``blocking`` to ``non-blocking`` to prioritize task availability over logging. To continue using the ``blocking`` mode after this change, do one of the following:
|
|
16141
|
+
|
|
16142
|
+
- Set the ``mode`` option in your container definition's ``logConfiguration`` as ``blocking`` .
|
|
16143
|
+
- Set the ``defaultLogDriverMode`` account setting to ``blocking`` .
|
|
16132
16144
|
|
|
16133
16145
|
- **max-buffer-size** - Required: No
|
|
16134
16146
|
|
|
@@ -249,7 +249,9 @@ load_balanced_fargate_service = ecs_patterns.NetworkMultipleTargetGroupsFargateS
|
|
|
249
249
|
container_port=90,
|
|
250
250
|
listener="listener2"
|
|
251
251
|
)
|
|
252
|
-
]
|
|
252
|
+
],
|
|
253
|
+
min_healthy_percent=100,
|
|
254
|
+
max_healthy_percent=200
|
|
253
255
|
)
|
|
254
256
|
```
|
|
255
257
|
|
|
@@ -1598,7 +1600,7 @@ class ApplicationLoadBalancedServiceBase(
|
|
|
1598
1600
|
:param protocol_version: The protocol version to use. Default: ApplicationProtocolVersion.HTTP1
|
|
1599
1601
|
:param public_load_balancer: Determines whether the Load Balancer will be internet-facing. Default: true
|
|
1600
1602
|
:param record_type: Specifies whether the Route53 record should be a CNAME, an A record using the Alias feature or no record at all. This is useful if you need to work with DNS systems that do not support alias records. Default: ApplicationLoadBalancedServiceRecordType.ALIAS
|
|
1601
|
-
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to
|
|
1603
|
+
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects. This is only valid if the protocol of the ALB is HTTPS. Default: false
|
|
1602
1604
|
:param service_name: The name of the service. Default: - CloudFormation-generated name.
|
|
1603
1605
|
:param ssl_policy: The security policy that defines which ciphers and protocols are supported by the ALB Listener. Default: - The recommended elastic load balancing security policy
|
|
1604
1606
|
:param target_protocol: The protocol for connections from the load balancer to the ECS tasks. The default target port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). Default: HTTP.
|
|
@@ -1837,7 +1839,7 @@ class ApplicationLoadBalancedServiceBaseProps:
|
|
|
1837
1839
|
:param protocol_version: The protocol version to use. Default: ApplicationProtocolVersion.HTTP1
|
|
1838
1840
|
:param public_load_balancer: Determines whether the Load Balancer will be internet-facing. Default: true
|
|
1839
1841
|
:param record_type: Specifies whether the Route53 record should be a CNAME, an A record using the Alias feature or no record at all. This is useful if you need to work with DNS systems that do not support alias records. Default: ApplicationLoadBalancedServiceRecordType.ALIAS
|
|
1840
|
-
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to
|
|
1842
|
+
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects. This is only valid if the protocol of the ALB is HTTPS. Default: false
|
|
1841
1843
|
:param service_name: The name of the service. Default: - CloudFormation-generated name.
|
|
1842
1844
|
:param ssl_policy: The security policy that defines which ciphers and protocols are supported by the ALB Listener. Default: - The recommended elastic load balancing security policy
|
|
1843
1845
|
:param target_protocol: The protocol for connections from the load balancer to the ECS tasks. The default target port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). Default: HTTP.
|
|
@@ -2327,7 +2329,9 @@ class ApplicationLoadBalancedServiceBaseProps:
|
|
|
2327
2329
|
|
|
2328
2330
|
@builtins.property
|
|
2329
2331
|
def redirect_http(self) -> typing.Optional[builtins.bool]:
|
|
2330
|
-
'''Specifies whether the load balancer should redirect traffic on port 80 to
|
|
2332
|
+
'''Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects.
|
|
2333
|
+
|
|
2334
|
+
This is only valid if the protocol of the ALB is HTTPS.
|
|
2331
2335
|
|
|
2332
2336
|
:default: false
|
|
2333
2337
|
'''
|
|
@@ -7613,7 +7617,7 @@ class ApplicationLoadBalancedEc2Service(
|
|
|
7613
7617
|
:param protocol_version: The protocol version to use. Default: ApplicationProtocolVersion.HTTP1
|
|
7614
7618
|
:param public_load_balancer: Determines whether the Load Balancer will be internet-facing. Default: true
|
|
7615
7619
|
:param record_type: Specifies whether the Route53 record should be a CNAME, an A record using the Alias feature or no record at all. This is useful if you need to work with DNS systems that do not support alias records. Default: ApplicationLoadBalancedServiceRecordType.ALIAS
|
|
7616
|
-
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to
|
|
7620
|
+
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects. This is only valid if the protocol of the ALB is HTTPS. Default: false
|
|
7617
7621
|
:param service_name: The name of the service. Default: - CloudFormation-generated name.
|
|
7618
7622
|
:param ssl_policy: The security policy that defines which ciphers and protocols are supported by the ALB Listener. Default: - The recommended elastic load balancing security policy
|
|
7619
7623
|
:param target_protocol: The protocol for connections from the load balancer to the ECS tasks. The default target port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). Default: HTTP.
|
|
@@ -7791,7 +7795,7 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
|
|
|
7791
7795
|
:param protocol_version: The protocol version to use. Default: ApplicationProtocolVersion.HTTP1
|
|
7792
7796
|
:param public_load_balancer: Determines whether the Load Balancer will be internet-facing. Default: true
|
|
7793
7797
|
:param record_type: Specifies whether the Route53 record should be a CNAME, an A record using the Alias feature or no record at all. This is useful if you need to work with DNS systems that do not support alias records. Default: ApplicationLoadBalancedServiceRecordType.ALIAS
|
|
7794
|
-
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to
|
|
7798
|
+
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects. This is only valid if the protocol of the ALB is HTTPS. Default: false
|
|
7795
7799
|
:param service_name: The name of the service. Default: - CloudFormation-generated name.
|
|
7796
7800
|
:param ssl_policy: The security policy that defines which ciphers and protocols are supported by the ALB Listener. Default: - The recommended elastic load balancing security policy
|
|
7797
7801
|
:param target_protocol: The protocol for connections from the load balancer to the ECS tasks. The default target port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). Default: HTTP.
|
|
@@ -8222,7 +8226,9 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
|
|
|
8222
8226
|
|
|
8223
8227
|
@builtins.property
|
|
8224
8228
|
def redirect_http(self) -> typing.Optional[builtins.bool]:
|
|
8225
|
-
'''Specifies whether the load balancer should redirect traffic on port 80 to
|
|
8229
|
+
'''Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects.
|
|
8230
|
+
|
|
8231
|
+
This is only valid if the protocol of the ALB is HTTPS.
|
|
8226
8232
|
|
|
8227
8233
|
:default: false
|
|
8228
8234
|
'''
|
|
@@ -8509,7 +8515,7 @@ class ApplicationLoadBalancedFargateService(
|
|
|
8509
8515
|
:param protocol_version: The protocol version to use. Default: ApplicationProtocolVersion.HTTP1
|
|
8510
8516
|
:param public_load_balancer: Determines whether the Load Balancer will be internet-facing. Default: true
|
|
8511
8517
|
:param record_type: Specifies whether the Route53 record should be a CNAME, an A record using the Alias feature or no record at all. This is useful if you need to work with DNS systems that do not support alias records. Default: ApplicationLoadBalancedServiceRecordType.ALIAS
|
|
8512
|
-
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to
|
|
8518
|
+
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects. This is only valid if the protocol of the ALB is HTTPS. Default: false
|
|
8513
8519
|
:param service_name: The name of the service. Default: - CloudFormation-generated name.
|
|
8514
8520
|
:param ssl_policy: The security policy that defines which ciphers and protocols are supported by the ALB Listener. Default: - The recommended elastic load balancing security policy
|
|
8515
8521
|
:param target_protocol: The protocol for connections from the load balancer to the ECS tasks. The default target port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). Default: HTTP.
|
|
@@ -8728,7 +8734,7 @@ class ApplicationLoadBalancedFargateServiceProps(
|
|
|
8728
8734
|
:param protocol_version: The protocol version to use. Default: ApplicationProtocolVersion.HTTP1
|
|
8729
8735
|
:param public_load_balancer: Determines whether the Load Balancer will be internet-facing. Default: true
|
|
8730
8736
|
:param record_type: Specifies whether the Route53 record should be a CNAME, an A record using the Alias feature or no record at all. This is useful if you need to work with DNS systems that do not support alias records. Default: ApplicationLoadBalancedServiceRecordType.ALIAS
|
|
8731
|
-
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to
|
|
8737
|
+
:param redirect_http: Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects. This is only valid if the protocol of the ALB is HTTPS. Default: false
|
|
8732
8738
|
:param service_name: The name of the service. Default: - CloudFormation-generated name.
|
|
8733
8739
|
:param ssl_policy: The security policy that defines which ciphers and protocols are supported by the ALB Listener. Default: - The recommended elastic load balancing security policy
|
|
8734
8740
|
:param target_protocol: The protocol for connections from the load balancer to the ECS tasks. The default target port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). Default: HTTP.
|
|
@@ -9197,7 +9203,9 @@ class ApplicationLoadBalancedFargateServiceProps(
|
|
|
9197
9203
|
|
|
9198
9204
|
@builtins.property
|
|
9199
9205
|
def redirect_http(self) -> typing.Optional[builtins.bool]:
|
|
9200
|
-
'''Specifies whether the load balancer should redirect traffic on port 80 to
|
|
9206
|
+
'''Specifies whether the load balancer should redirect traffic on port 80 to the {@link listenerPort} to support HTTP->HTTPS redirects.
|
|
9207
|
+
|
|
9208
|
+
This is only valid if the protocol of the ALB is HTTPS.
|
|
9201
9209
|
|
|
9202
9210
|
:default: false
|
|
9203
9211
|
'''
|
|
@@ -12682,7 +12690,9 @@ class NetworkMultipleTargetGroupsFargateService(
|
|
|
12682
12690
|
container_port=90,
|
|
12683
12691
|
listener="listener2"
|
|
12684
12692
|
)
|
|
12685
|
-
]
|
|
12693
|
+
],
|
|
12694
|
+
min_healthy_percent=100,
|
|
12695
|
+
max_healthy_percent=200
|
|
12686
12696
|
)
|
|
12687
12697
|
'''
|
|
12688
12698
|
|
|
@@ -12692,6 +12702,8 @@ class NetworkMultipleTargetGroupsFargateService(
|
|
|
12692
12702
|
id: builtins.str,
|
|
12693
12703
|
*,
|
|
12694
12704
|
assign_public_ip: typing.Optional[builtins.bool] = None,
|
|
12705
|
+
max_healthy_percent: typing.Optional[jsii.Number] = None,
|
|
12706
|
+
min_healthy_percent: typing.Optional[jsii.Number] = None,
|
|
12695
12707
|
cloud_map_options: typing.Optional[typing.Union[_CloudMapOptions_444ee9f2, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
12696
12708
|
cluster: typing.Optional[_ICluster_16cddd09] = None,
|
|
12697
12709
|
desired_count: typing.Optional[jsii.Number] = None,
|
|
@@ -12716,6 +12728,8 @@ class NetworkMultipleTargetGroupsFargateService(
|
|
|
12716
12728
|
:param scope: -
|
|
12717
12729
|
:param id: -
|
|
12718
12730
|
:param assign_public_ip: Determines whether the service will be assigned a public IP address. Default: false
|
|
12731
|
+
:param max_healthy_percent: The maximum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that can run in a service during a deployment. Default: - 200%
|
|
12732
|
+
:param min_healthy_percent: The minimum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that must continue to run and remain healthy during a deployment. Default: - 50%
|
|
12719
12733
|
:param cloud_map_options: The options for configuring an Amazon ECS service to use service discovery. Default: - AWS Cloud Map service discovery is not enabled.
|
|
12720
12734
|
:param cluster: The name of the cluster that hosts the service. If a cluster is specified, the vpc construct should be omitted. Alternatively, you can omit both cluster and vpc. Default: - create a new cluster; if both cluster and vpc are omitted, a new VPC will be created for you.
|
|
12721
12735
|
:param desired_count: The desired number of instantiations of the task definition to keep running on the service. The minimum value is 1 Default: - The default is 1 for all new services and uses the existing service's desired count when updating an existing service.
|
|
@@ -12741,6 +12755,8 @@ class NetworkMultipleTargetGroupsFargateService(
|
|
|
12741
12755
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
12742
12756
|
props = NetworkMultipleTargetGroupsFargateServiceProps(
|
|
12743
12757
|
assign_public_ip=assign_public_ip,
|
|
12758
|
+
max_healthy_percent=max_healthy_percent,
|
|
12759
|
+
min_healthy_percent=min_healthy_percent,
|
|
12744
12760
|
cloud_map_options=cloud_map_options,
|
|
12745
12761
|
cluster=cluster,
|
|
12746
12762
|
desired_count=desired_count,
|
|
@@ -12824,6 +12840,8 @@ class NetworkMultipleTargetGroupsFargateService(
|
|
|
12824
12840
|
"runtime_platform": "runtimePlatform",
|
|
12825
12841
|
"task_definition": "taskDefinition",
|
|
12826
12842
|
"assign_public_ip": "assignPublicIp",
|
|
12843
|
+
"max_healthy_percent": "maxHealthyPercent",
|
|
12844
|
+
"min_healthy_percent": "minHealthyPercent",
|
|
12827
12845
|
},
|
|
12828
12846
|
)
|
|
12829
12847
|
class NetworkMultipleTargetGroupsFargateServiceProps(
|
|
@@ -12852,6 +12870,8 @@ class NetworkMultipleTargetGroupsFargateServiceProps(
|
|
|
12852
12870
|
runtime_platform: typing.Optional[typing.Union[_RuntimePlatform_5ed98a9c, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
12853
12871
|
task_definition: typing.Optional[_FargateTaskDefinition_83754b60] = None,
|
|
12854
12872
|
assign_public_ip: typing.Optional[builtins.bool] = None,
|
|
12873
|
+
max_healthy_percent: typing.Optional[jsii.Number] = None,
|
|
12874
|
+
min_healthy_percent: typing.Optional[jsii.Number] = None,
|
|
12855
12875
|
) -> None:
|
|
12856
12876
|
'''The properties for the NetworkMultipleTargetGroupsFargateService service.
|
|
12857
12877
|
|
|
@@ -12874,6 +12894,8 @@ class NetworkMultipleTargetGroupsFargateServiceProps(
|
|
|
12874
12894
|
:param runtime_platform: The runtime platform of the task definition. Default: - If the property is undefined, ``operatingSystemFamily`` is LINUX and ``cpuArchitecture`` is X86_64
|
|
12875
12895
|
:param task_definition: The task definition to use for tasks in the service. TaskDefinition or TaskImageOptions must be specified, but not both. [disable-awslint:ref-via-interface] Default: - none
|
|
12876
12896
|
:param assign_public_ip: Determines whether the service will be assigned a public IP address. Default: false
|
|
12897
|
+
:param max_healthy_percent: The maximum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that can run in a service during a deployment. Default: - 200%
|
|
12898
|
+
:param min_healthy_percent: The minimum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that must continue to run and remain healthy during a deployment. Default: - 50%
|
|
12877
12899
|
|
|
12878
12900
|
:exampleMetadata: infused
|
|
12879
12901
|
|
|
@@ -12909,7 +12931,9 @@ class NetworkMultipleTargetGroupsFargateServiceProps(
|
|
|
12909
12931
|
container_port=90,
|
|
12910
12932
|
listener="listener2"
|
|
12911
12933
|
)
|
|
12912
|
-
]
|
|
12934
|
+
],
|
|
12935
|
+
min_healthy_percent=100,
|
|
12936
|
+
max_healthy_percent=200
|
|
12913
12937
|
)
|
|
12914
12938
|
'''
|
|
12915
12939
|
if isinstance(cloud_map_options, dict):
|
|
@@ -12939,6 +12963,8 @@ class NetworkMultipleTargetGroupsFargateServiceProps(
|
|
|
12939
12963
|
check_type(argname="argument runtime_platform", value=runtime_platform, expected_type=type_hints["runtime_platform"])
|
|
12940
12964
|
check_type(argname="argument task_definition", value=task_definition, expected_type=type_hints["task_definition"])
|
|
12941
12965
|
check_type(argname="argument assign_public_ip", value=assign_public_ip, expected_type=type_hints["assign_public_ip"])
|
|
12966
|
+
check_type(argname="argument max_healthy_percent", value=max_healthy_percent, expected_type=type_hints["max_healthy_percent"])
|
|
12967
|
+
check_type(argname="argument min_healthy_percent", value=min_healthy_percent, expected_type=type_hints["min_healthy_percent"])
|
|
12942
12968
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
12943
12969
|
if cloud_map_options is not None:
|
|
12944
12970
|
self._values["cloud_map_options"] = cloud_map_options
|
|
@@ -12978,6 +13004,10 @@ class NetworkMultipleTargetGroupsFargateServiceProps(
|
|
|
12978
13004
|
self._values["task_definition"] = task_definition
|
|
12979
13005
|
if assign_public_ip is not None:
|
|
12980
13006
|
self._values["assign_public_ip"] = assign_public_ip
|
|
13007
|
+
if max_healthy_percent is not None:
|
|
13008
|
+
self._values["max_healthy_percent"] = max_healthy_percent
|
|
13009
|
+
if min_healthy_percent is not None:
|
|
13010
|
+
self._values["min_healthy_percent"] = min_healthy_percent
|
|
12981
13011
|
|
|
12982
13012
|
@builtins.property
|
|
12983
13013
|
def cloud_map_options(self) -> typing.Optional[_CloudMapOptions_444ee9f2]:
|
|
@@ -13213,6 +13243,24 @@ class NetworkMultipleTargetGroupsFargateServiceProps(
|
|
|
13213
13243
|
result = self._values.get("assign_public_ip")
|
|
13214
13244
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
13215
13245
|
|
|
13246
|
+
@builtins.property
|
|
13247
|
+
def max_healthy_percent(self) -> typing.Optional[jsii.Number]:
|
|
13248
|
+
'''The maximum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that can run in a service during a deployment.
|
|
13249
|
+
|
|
13250
|
+
:default: - 200%
|
|
13251
|
+
'''
|
|
13252
|
+
result = self._values.get("max_healthy_percent")
|
|
13253
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
13254
|
+
|
|
13255
|
+
@builtins.property
|
|
13256
|
+
def min_healthy_percent(self) -> typing.Optional[jsii.Number]:
|
|
13257
|
+
'''The minimum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that must continue to run and remain healthy during a deployment.
|
|
13258
|
+
|
|
13259
|
+
:default: - 50%
|
|
13260
|
+
'''
|
|
13261
|
+
result = self._values.get("min_healthy_percent")
|
|
13262
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
13263
|
+
|
|
13216
13264
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
13217
13265
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
13218
13266
|
|
|
@@ -17589,6 +17637,8 @@ def _typecheckingstub__d0896ef010a141982cad4e6363ddf5474e1d63a5c38dc712f84a1d13e
|
|
|
17589
17637
|
id: builtins.str,
|
|
17590
17638
|
*,
|
|
17591
17639
|
assign_public_ip: typing.Optional[builtins.bool] = None,
|
|
17640
|
+
max_healthy_percent: typing.Optional[jsii.Number] = None,
|
|
17641
|
+
min_healthy_percent: typing.Optional[jsii.Number] = None,
|
|
17592
17642
|
cloud_map_options: typing.Optional[typing.Union[_CloudMapOptions_444ee9f2, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
17593
17643
|
cluster: typing.Optional[_ICluster_16cddd09] = None,
|
|
17594
17644
|
desired_count: typing.Optional[jsii.Number] = None,
|
|
@@ -17632,6 +17682,8 @@ def _typecheckingstub__052b2be34bb887cde358099c21efe7f3e968827a5a4e4c975e35f96da
|
|
|
17632
17682
|
runtime_platform: typing.Optional[typing.Union[_RuntimePlatform_5ed98a9c, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
17633
17683
|
task_definition: typing.Optional[_FargateTaskDefinition_83754b60] = None,
|
|
17634
17684
|
assign_public_ip: typing.Optional[builtins.bool] = None,
|
|
17685
|
+
max_healthy_percent: typing.Optional[jsii.Number] = None,
|
|
17686
|
+
min_healthy_percent: typing.Optional[jsii.Number] = None,
|
|
17635
17687
|
) -> None:
|
|
17636
17688
|
"""Type checking stubs"""
|
|
17637
17689
|
pass
|
aws_cdk/aws_eks/__init__.py
CHANGED
|
@@ -1976,10 +1976,13 @@ load_balancer_address = cluster.get_service_load_balancer_address("my-service")
|
|
|
1976
1976
|
|
|
1977
1977
|
eks.Addon(self, "Addon",
|
|
1978
1978
|
cluster=cluster,
|
|
1979
|
-
addon_name="
|
|
1980
|
-
addon_version="v1.
|
|
1979
|
+
addon_name="coredns",
|
|
1980
|
+
addon_version="v1.11.4-eksbuild.2",
|
|
1981
1981
|
# whether to preserve the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on.
|
|
1982
|
-
preserve_on_delete=False
|
|
1982
|
+
preserve_on_delete=False,
|
|
1983
|
+
configuration_values={
|
|
1984
|
+
"replica_count": 2
|
|
1985
|
+
}
|
|
1983
1986
|
)
|
|
1984
1987
|
```
|
|
1985
1988
|
|
|
@@ -2808,6 +2811,7 @@ class AddonAttributes:
|
|
|
2808
2811
|
"addon_name": "addonName",
|
|
2809
2812
|
"cluster": "cluster",
|
|
2810
2813
|
"addon_version": "addonVersion",
|
|
2814
|
+
"configuration_values": "configurationValues",
|
|
2811
2815
|
"preserve_on_delete": "preserveOnDelete",
|
|
2812
2816
|
},
|
|
2813
2817
|
)
|
|
@@ -2818,6 +2822,7 @@ class AddonProps:
|
|
|
2818
2822
|
addon_name: builtins.str,
|
|
2819
2823
|
cluster: "ICluster",
|
|
2820
2824
|
addon_version: typing.Optional[builtins.str] = None,
|
|
2825
|
+
configuration_values: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
2821
2826
|
preserve_on_delete: typing.Optional[builtins.bool] = None,
|
|
2822
2827
|
) -> None:
|
|
2823
2828
|
'''Properties for creating an Amazon EKS Add-On.
|
|
@@ -2825,6 +2830,7 @@ class AddonProps:
|
|
|
2825
2830
|
:param addon_name: Name of the Add-On.
|
|
2826
2831
|
:param cluster: The EKS cluster the Add-On is associated with.
|
|
2827
2832
|
:param addon_version: Version of the Add-On. You can check all available versions with describe-addon-versions. For example, this lists all available versions for the ``eks-pod-identity-agent`` addon: $ aws eks describe-addon-versions --addon-name eks-pod-identity-agent --query 'addons[*].addonVersions[*].addonVersion' Default: the latest version.
|
|
2833
|
+
:param configuration_values: The configuration values for the Add-on. Default: - Use default configuration.
|
|
2828
2834
|
: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. Default: true
|
|
2829
2835
|
|
|
2830
2836
|
:exampleMetadata: infused
|
|
@@ -2836,10 +2842,13 @@ class AddonProps:
|
|
|
2836
2842
|
|
|
2837
2843
|
eks.Addon(self, "Addon",
|
|
2838
2844
|
cluster=cluster,
|
|
2839
|
-
addon_name="
|
|
2840
|
-
addon_version="v1.
|
|
2845
|
+
addon_name="coredns",
|
|
2846
|
+
addon_version="v1.11.4-eksbuild.2",
|
|
2841
2847
|
# whether to preserve the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on.
|
|
2842
|
-
preserve_on_delete=False
|
|
2848
|
+
preserve_on_delete=False,
|
|
2849
|
+
configuration_values={
|
|
2850
|
+
"replica_count": 2
|
|
2851
|
+
}
|
|
2843
2852
|
)
|
|
2844
2853
|
'''
|
|
2845
2854
|
if __debug__:
|
|
@@ -2847,6 +2856,7 @@ class AddonProps:
|
|
|
2847
2856
|
check_type(argname="argument addon_name", value=addon_name, expected_type=type_hints["addon_name"])
|
|
2848
2857
|
check_type(argname="argument cluster", value=cluster, expected_type=type_hints["cluster"])
|
|
2849
2858
|
check_type(argname="argument addon_version", value=addon_version, expected_type=type_hints["addon_version"])
|
|
2859
|
+
check_type(argname="argument configuration_values", value=configuration_values, expected_type=type_hints["configuration_values"])
|
|
2850
2860
|
check_type(argname="argument preserve_on_delete", value=preserve_on_delete, expected_type=type_hints["preserve_on_delete"])
|
|
2851
2861
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2852
2862
|
"addon_name": addon_name,
|
|
@@ -2854,6 +2864,8 @@ class AddonProps:
|
|
|
2854
2864
|
}
|
|
2855
2865
|
if addon_version is not None:
|
|
2856
2866
|
self._values["addon_version"] = addon_version
|
|
2867
|
+
if configuration_values is not None:
|
|
2868
|
+
self._values["configuration_values"] = configuration_values
|
|
2857
2869
|
if preserve_on_delete is not None:
|
|
2858
2870
|
self._values["preserve_on_delete"] = preserve_on_delete
|
|
2859
2871
|
|
|
@@ -2885,6 +2897,17 @@ class AddonProps:
|
|
|
2885
2897
|
result = self._values.get("addon_version")
|
|
2886
2898
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
2887
2899
|
|
|
2900
|
+
@builtins.property
|
|
2901
|
+
def configuration_values(
|
|
2902
|
+
self,
|
|
2903
|
+
) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
|
|
2904
|
+
'''The configuration values for the Add-on.
|
|
2905
|
+
|
|
2906
|
+
:default: - Use default configuration.
|
|
2907
|
+
'''
|
|
2908
|
+
result = self._values.get("configuration_values")
|
|
2909
|
+
return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
|
|
2910
|
+
|
|
2888
2911
|
@builtins.property
|
|
2889
2912
|
def preserve_on_delete(self) -> typing.Optional[builtins.bool]:
|
|
2890
2913
|
'''Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on.
|
|
@@ -18415,10 +18438,13 @@ class Addon(
|
|
|
18415
18438
|
|
|
18416
18439
|
eks.Addon(self, "Addon",
|
|
18417
18440
|
cluster=cluster,
|
|
18418
|
-
addon_name="
|
|
18419
|
-
addon_version="v1.
|
|
18441
|
+
addon_name="coredns",
|
|
18442
|
+
addon_version="v1.11.4-eksbuild.2",
|
|
18420
18443
|
# whether to preserve the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on.
|
|
18421
|
-
preserve_on_delete=False
|
|
18444
|
+
preserve_on_delete=False,
|
|
18445
|
+
configuration_values={
|
|
18446
|
+
"replica_count": 2
|
|
18447
|
+
}
|
|
18422
18448
|
)
|
|
18423
18449
|
'''
|
|
18424
18450
|
|
|
@@ -18430,6 +18456,7 @@ class Addon(
|
|
|
18430
18456
|
addon_name: builtins.str,
|
|
18431
18457
|
cluster: ICluster,
|
|
18432
18458
|
addon_version: typing.Optional[builtins.str] = None,
|
|
18459
|
+
configuration_values: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
18433
18460
|
preserve_on_delete: typing.Optional[builtins.bool] = None,
|
|
18434
18461
|
) -> None:
|
|
18435
18462
|
'''Creates a new Amazon EKS Add-On.
|
|
@@ -18439,6 +18466,7 @@ class Addon(
|
|
|
18439
18466
|
:param addon_name: Name of the Add-On.
|
|
18440
18467
|
:param cluster: The EKS cluster the Add-On is associated with.
|
|
18441
18468
|
:param addon_version: Version of the Add-On. You can check all available versions with describe-addon-versions. For example, this lists all available versions for the ``eks-pod-identity-agent`` addon: $ aws eks describe-addon-versions --addon-name eks-pod-identity-agent --query 'addons[*].addonVersions[*].addonVersion' Default: the latest version.
|
|
18469
|
+
:param configuration_values: The configuration values for the Add-on. Default: - Use default configuration.
|
|
18442
18470
|
: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. Default: true
|
|
18443
18471
|
'''
|
|
18444
18472
|
if __debug__:
|
|
@@ -18449,6 +18477,7 @@ class Addon(
|
|
|
18449
18477
|
addon_name=addon_name,
|
|
18450
18478
|
cluster=cluster,
|
|
18451
18479
|
addon_version=addon_version,
|
|
18480
|
+
configuration_values=configuration_values,
|
|
18452
18481
|
preserve_on_delete=preserve_on_delete,
|
|
18453
18482
|
)
|
|
18454
18483
|
|
|
@@ -21808,6 +21837,7 @@ def _typecheckingstub__febc9f6cb4243d885b1b1838be38d633e7c5fc6534eaaf731f00a2465
|
|
|
21808
21837
|
addon_name: builtins.str,
|
|
21809
21838
|
cluster: ICluster,
|
|
21810
21839
|
addon_version: typing.Optional[builtins.str] = None,
|
|
21840
|
+
configuration_values: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
21811
21841
|
preserve_on_delete: typing.Optional[builtins.bool] = None,
|
|
21812
21842
|
) -> None:
|
|
21813
21843
|
"""Type checking stubs"""
|
|
@@ -23585,6 +23615,7 @@ def _typecheckingstub__a8342124e215d4789acf852df764143c4809251dbcaa86f6b4a11860e
|
|
|
23585
23615
|
addon_name: builtins.str,
|
|
23586
23616
|
cluster: ICluster,
|
|
23587
23617
|
addon_version: typing.Optional[builtins.str] = None,
|
|
23618
|
+
configuration_values: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
23588
23619
|
preserve_on_delete: typing.Optional[builtins.bool] = None,
|
|
23589
23620
|
) -> None:
|
|
23590
23621
|
"""Type checking stubs"""
|
|
@@ -3859,7 +3859,7 @@ class CfnListener(
|
|
|
3859
3859
|
:param load_balancer_arn: The Amazon Resource Name (ARN) of the load balancer.
|
|
3860
3860
|
:param alpn_policy: [TLS listener] The name of the Application-Layer Protocol Negotiation (ALPN) policy.
|
|
3861
3861
|
:param certificates: The default SSL server certificate for a secure listener. You must provide exactly one certificate if the listener protocol is HTTPS or TLS. To create a certificate list for a secure listener, use `AWS::ElasticLoadBalancingV2::ListenerCertificate <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html>`_ .
|
|
3862
|
-
:param listener_attributes: The listener attributes.
|
|
3862
|
+
:param listener_attributes: The listener attributes. Attributes that you do not modify retain their current values.
|
|
3863
3863
|
:param mutual_authentication: The mutual authentication configuration information.
|
|
3864
3864
|
:param port: The port on which the load balancer is listening. You can't specify a port for a Gateway Load Balancer.
|
|
3865
3865
|
:param protocol: The protocol for connections from clients to the load balancer. For Application Load Balancers, the supported protocols are HTTP and HTTPS. For Network Load Balancers, the supported protocols are TCP, TLS, UDP, and TCP_UDP. You can’t specify the UDP or TCP_UDP protocol if dual-stack mode is enabled. You can't specify a protocol for a Gateway Load Balancer.
|
|
@@ -5808,7 +5808,7 @@ class CfnListenerProps:
|
|
|
5808
5808
|
:param load_balancer_arn: The Amazon Resource Name (ARN) of the load balancer.
|
|
5809
5809
|
:param alpn_policy: [TLS listener] The name of the Application-Layer Protocol Negotiation (ALPN) policy.
|
|
5810
5810
|
:param certificates: The default SSL server certificate for a secure listener. You must provide exactly one certificate if the listener protocol is HTTPS or TLS. To create a certificate list for a secure listener, use `AWS::ElasticLoadBalancingV2::ListenerCertificate <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html>`_ .
|
|
5811
|
-
:param listener_attributes: The listener attributes.
|
|
5811
|
+
:param listener_attributes: The listener attributes. Attributes that you do not modify retain their current values.
|
|
5812
5812
|
:param mutual_authentication: The mutual authentication configuration information.
|
|
5813
5813
|
:param port: The port on which the load balancer is listening. You can't specify a port for a Gateway Load Balancer.
|
|
5814
5814
|
:param protocol: The protocol for connections from clients to the load balancer. For Application Load Balancers, the supported protocols are HTTP and HTTPS. For Network Load Balancers, the supported protocols are TCP, TLS, UDP, and TCP_UDP. You can’t specify the UDP or TCP_UDP protocol if dual-stack mode is enabled. You can't specify a protocol for a Gateway Load Balancer.
|
|
@@ -5996,6 +5996,8 @@ class CfnListenerProps:
|
|
|
5996
5996
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnListener.ListenerAttributeProperty]]]]:
|
|
5997
5997
|
'''The listener attributes.
|
|
5998
5998
|
|
|
5999
|
+
Attributes that you do not modify retain their current values.
|
|
6000
|
+
|
|
5999
6001
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-listenerattributes
|
|
6000
6002
|
'''
|
|
6001
6003
|
result = self._values.get("listener_attributes")
|
|
@@ -7220,7 +7222,7 @@ class CfnListenerRule(
|
|
|
7220
7222
|
) -> None:
|
|
7221
7223
|
'''Information about a host header condition.
|
|
7222
7224
|
|
|
7223
|
-
:param values: The host names. The maximum size of each name is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character). If you specify multiple strings, the condition is satisfied if one of the strings matches the host name.
|
|
7225
|
+
:param values: The host names. The maximum size of each name is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character). You must include at least one "." character. You can include only alphabetical characters after the final "." character. If you specify multiple strings, the condition is satisfied if one of the strings matches the host name.
|
|
7224
7226
|
|
|
7225
7227
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-hostheaderconfig.html
|
|
7226
7228
|
:exampleMetadata: fixture=_generated
|
|
@@ -7246,7 +7248,7 @@ class CfnListenerRule(
|
|
|
7246
7248
|
def values(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
7247
7249
|
'''The host names.
|
|
7248
7250
|
|
|
7249
|
-
The maximum size of each name is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).
|
|
7251
|
+
The maximum size of each name is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character). You must include at least one "." character. You can include only alphabetical characters after the final "." character.
|
|
7250
7252
|
|
|
7251
7253
|
If you specify multiple strings, the condition is satisfied if one of the strings matches the host name.
|
|
7252
7254
|
|
|
@@ -8499,7 +8501,7 @@ class CfnLoadBalancer(
|
|
|
8499
8501
|
:param enforce_security_group_inbound_rules_on_private_link_traffic: Indicates whether to evaluate inbound security group rules for traffic sent to a Network Load Balancer through AWS PrivateLink . The default is ``on`` . You can't configure this property on a Network Load Balancer unless you associated a security group with the load balancer when you created it.
|
|
8500
8502
|
:param ip_address_type: The IP address type. Internal load balancers must use ``ipv4`` . [Application Load Balancers] The possible values are ``ipv4`` (IPv4 addresses), ``dualstack`` (IPv4 and IPv6 addresses), and ``dualstack-without-public-ipv4`` (public IPv6 addresses and private IPv4 and IPv6 addresses). Application Load Balancer authentication supports IPv4 addresses only when connecting to an Identity Provider (IdP) or Amazon Cognito endpoint. Without a public IPv4 address the load balancer can't complete the authentication process, resulting in HTTP 500 errors. [Network Load Balancers and Gateway Load Balancers] The possible values are ``ipv4`` (IPv4 addresses) and ``dualstack`` (IPv4 and IPv6 addresses).
|
|
8501
8503
|
:param ipv4_ipam_pool_id: The ID of the IPv4 IPAM pool.
|
|
8502
|
-
:param load_balancer_attributes: The load balancer attributes.
|
|
8504
|
+
:param load_balancer_attributes: The load balancer attributes. Attributes that you do not modify retain their current values.
|
|
8503
8505
|
:param minimum_load_balancer_capacity: The minimum capacity for a load balancer.
|
|
8504
8506
|
:param name: The name of the load balancer. This name must be unique per region per account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, must not begin or end with a hyphen, and must not begin with "internal-". If you don't specify a name, AWS CloudFormation generates a unique physical ID for the load balancer. If you specify a name, you cannot perform updates that require replacement of this resource, but you can perform other updates. To replace the resource, specify a new name.
|
|
8505
8507
|
:param scheme: The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the internet. The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can route requests only from clients with access to the VPC for the load balancer. The default is an Internet-facing load balancer. You can't specify a scheme for a Gateway Load Balancer.
|
|
@@ -9160,7 +9162,7 @@ class CfnLoadBalancerProps:
|
|
|
9160
9162
|
:param enforce_security_group_inbound_rules_on_private_link_traffic: Indicates whether to evaluate inbound security group rules for traffic sent to a Network Load Balancer through AWS PrivateLink . The default is ``on`` . You can't configure this property on a Network Load Balancer unless you associated a security group with the load balancer when you created it.
|
|
9161
9163
|
:param ip_address_type: The IP address type. Internal load balancers must use ``ipv4`` . [Application Load Balancers] The possible values are ``ipv4`` (IPv4 addresses), ``dualstack`` (IPv4 and IPv6 addresses), and ``dualstack-without-public-ipv4`` (public IPv6 addresses and private IPv4 and IPv6 addresses). Application Load Balancer authentication supports IPv4 addresses only when connecting to an Identity Provider (IdP) or Amazon Cognito endpoint. Without a public IPv4 address the load balancer can't complete the authentication process, resulting in HTTP 500 errors. [Network Load Balancers and Gateway Load Balancers] The possible values are ``ipv4`` (IPv4 addresses) and ``dualstack`` (IPv4 and IPv6 addresses).
|
|
9162
9164
|
:param ipv4_ipam_pool_id: The ID of the IPv4 IPAM pool.
|
|
9163
|
-
:param load_balancer_attributes: The load balancer attributes.
|
|
9165
|
+
:param load_balancer_attributes: The load balancer attributes. Attributes that you do not modify retain their current values.
|
|
9164
9166
|
:param minimum_load_balancer_capacity: The minimum capacity for a load balancer.
|
|
9165
9167
|
:param name: The name of the load balancer. This name must be unique per region per account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, must not begin or end with a hyphen, and must not begin with "internal-". If you don't specify a name, AWS CloudFormation generates a unique physical ID for the load balancer. If you specify a name, you cannot perform updates that require replacement of this resource, but you can perform other updates. To replace the resource, specify a new name.
|
|
9166
9168
|
:param scheme: The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the internet. The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can route requests only from clients with access to the VPC for the load balancer. The default is an Internet-facing load balancer. You can't specify a scheme for a Gateway Load Balancer.
|
|
@@ -9310,6 +9312,8 @@ class CfnLoadBalancerProps:
|
|
|
9310
9312
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnLoadBalancer.LoadBalancerAttributeProperty]]]]:
|
|
9311
9313
|
'''The load balancer attributes.
|
|
9312
9314
|
|
|
9315
|
+
Attributes that you do not modify retain their current values.
|
|
9316
|
+
|
|
9313
9317
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes
|
|
9314
9318
|
'''
|
|
9315
9319
|
result = self._values.get("load_balancer_attributes")
|
|
@@ -9539,7 +9543,7 @@ class CfnTargetGroup(
|
|
|
9539
9543
|
: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.
|
|
9540
9544
|
:param protocol_version: [HTTP/HTTPS protocol] The protocol version. The possible values are ``GRPC`` , ``HTTP1`` , and ``HTTP2`` .
|
|
9541
9545
|
:param tags: The tags.
|
|
9542
|
-
:param target_group_attributes: The target group attributes.
|
|
9546
|
+
:param target_group_attributes: The target group attributes. Attributes that you do not modify retain their current values.
|
|
9543
9547
|
:param targets: The targets.
|
|
9544
9548
|
: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.
|
|
9545
9549
|
: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.
|
|
@@ -10293,7 +10297,7 @@ class CfnTargetGroupProps:
|
|
|
10293
10297
|
: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.
|
|
10294
10298
|
:param protocol_version: [HTTP/HTTPS protocol] The protocol version. The possible values are ``GRPC`` , ``HTTP1`` , and ``HTTP2`` .
|
|
10295
10299
|
:param tags: The tags.
|
|
10296
|
-
:param target_group_attributes: The target group attributes.
|
|
10300
|
+
:param target_group_attributes: The target group attributes. Attributes that you do not modify retain their current values.
|
|
10297
10301
|
:param targets: The targets.
|
|
10298
10302
|
: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.
|
|
10299
10303
|
: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.
|
|
@@ -10570,6 +10574,8 @@ class CfnTargetGroupProps:
|
|
|
10570
10574
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnTargetGroup.TargetGroupAttributeProperty]]]]:
|
|
10571
10575
|
'''The target group attributes.
|
|
10572
10576
|
|
|
10577
|
+
Attributes that you do not modify retain their current values.
|
|
10578
|
+
|
|
10573
10579
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattributes
|
|
10574
10580
|
'''
|
|
10575
10581
|
result = self._values.get("target_group_attributes")
|