aws-sdk-ecs 1.165.0 → 1.171.0

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.
@@ -242,7 +242,7 @@ module Aws::ECS
242
242
 
243
243
  # An object representing the networking details for a task or service.
244
244
  # For example
245
- # `awsVpcConfiguration=\{subnets=["subnet-12344321"],securityGroups=["sg-12344321"]\}`.
245
+ # `awsVpcConfiguration={subnets=["subnet-12344321"],securityGroups=["sg-12344321"]}`.
246
246
  #
247
247
  # @!attribute [rw] subnets
248
248
  # The IDs of the subnets associated with the task or service. There's
@@ -267,7 +267,7 @@ module Aws::ECS
267
267
  #
268
268
  # @!attribute [rw] assign_public_ip
269
269
  # Whether the task's elastic network interface receives a public IP
270
- # address. The default value is `DISABLED`.
270
+ # address. The default value is `ENABLED`.
271
271
  # @return [String]
272
272
  #
273
273
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/AwsVpcConfiguration AWS API Documentation
@@ -871,7 +871,26 @@ module Aws::ECS
871
871
  end
872
872
 
873
873
  # The settings to use when creating a cluster. This parameter is used to
874
- # turn on CloudWatch Container Insights for a cluster.
874
+ # turn on CloudWatch Container Insights with enhanced observability or
875
+ # CloudWatch Container Insights for a cluster.
876
+ #
877
+ # Container Insights with enhanced observability provides all the
878
+ # Container Insights metrics, plus additional task and container
879
+ # metrics. This version supports enhanced observability for Amazon ECS
880
+ # clusters using the Amazon EC2 and Fargate launch types. After you
881
+ # configure Container Insights with enhanced observability on Amazon
882
+ # ECS, Container Insights auto-collects detailed infrastructure
883
+ # telemetry from the cluster level down to the container level in your
884
+ # environment and displays these critical performance data in curated
885
+ # dashboards removing the heavy lifting in observability set-up.
886
+ #
887
+ # For more information, see [Monitor Amazon ECS containers using
888
+ # Container Insights with enhanced observability][1] in the *Amazon
889
+ # Elastic Container Service Developer Guide*.
890
+ #
891
+ #
892
+ #
893
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch-container-insights.html
875
894
  #
876
895
  # @!attribute [rw] name
877
896
  # The name of the cluster setting. The value is `containerInsights` .
@@ -879,12 +898,15 @@ module Aws::ECS
879
898
  #
880
899
  # @!attribute [rw] value
881
900
  # The value to set for the cluster setting. The supported values are
882
- # `enabled` and `disabled`.
901
+ # `enhanced`, `enabled`, and `disabled`.
883
902
  #
884
- # If you set `name` to `containerInsights` and `value` to `enabled`,
885
- # CloudWatch Container Insights will be on for the cluster, otherwise
886
- # it will be off unless the `containerInsights` account setting is
887
- # turned on. If a cluster value is specified, it will override the
903
+ # To use Container Insights with enhanced observability, set the
904
+ # `containerInsights` account setting to `enhanced`.
905
+ #
906
+ # To use Container Insights, set the `containerInsights` account
907
+ # setting to `enabled`.
908
+ #
909
+ # If a cluster value is specified, it will override the
888
910
  # `containerInsights` value set with [PutAccountSetting][1] or
889
911
  # [PutAccountSettingDefault][2].
890
912
  #
@@ -1500,6 +1522,21 @@ module Aws::ECS
1500
1522
  # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html
1501
1523
  # @return [Integer]
1502
1524
  #
1525
+ # @!attribute [rw] version_consistency
1526
+ # Specifies whether Amazon ECS will resolve the container image tag
1527
+ # provided in the container definition to an image digest. By default,
1528
+ # the value is `enabled`. If you set the value for a container as
1529
+ # `disabled`, Amazon ECS will not resolve the provided container image
1530
+ # tag to a digest and will use the original image URI specified in the
1531
+ # container definition for deployment. For more information about
1532
+ # container image resolution, see [Container image resolution][1] in
1533
+ # the *Amazon ECS Developer Guide*.
1534
+ #
1535
+ #
1536
+ #
1537
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html#deployment-container-image-stability
1538
+ # @return [String]
1539
+ #
1503
1540
  # @!attribute [rw] hostname
1504
1541
  # The hostname to use for your container. This parameter maps to
1505
1542
  # `Hostname` in the docker container create command and the
@@ -1667,7 +1704,7 @@ module Aws::ECS
1667
1704
  # of the Docker Remote API or greater on your container instance. To
1668
1705
  # check the Docker Remote API version on your container instance, log
1669
1706
  # in to your container instance and run the following command: `sudo
1670
- # docker version --format '\{\{.Server.APIVersion\}\}'`
1707
+ # docker version --format '{{.Server.APIVersion}}'`
1671
1708
  # @return [Hash<String,String>]
1672
1709
  #
1673
1710
  # @!attribute [rw] ulimits
@@ -1688,7 +1725,7 @@ module Aws::ECS
1688
1725
  # greater on your container instance. To check the Docker Remote API
1689
1726
  # version on your container instance, log in to your container
1690
1727
  # instance and run the following command: `sudo docker version
1691
- # --format '\{\{.Server.APIVersion\}\}'`
1728
+ # --format '{{.Server.APIVersion}}'`
1692
1729
  #
1693
1730
  # <note markdown="1"> This parameter is not supported for Windows containers.
1694
1731
  #
@@ -1723,7 +1760,7 @@ module Aws::ECS
1723
1760
  # greater on your container instance. To check the Docker Remote API
1724
1761
  # version on your container instance, log in to your container
1725
1762
  # instance and run the following command: `sudo docker version
1726
- # --format '\{\{.Server.APIVersion\}\}'`
1763
+ # --format '{{.Server.APIVersion}}'`
1727
1764
  #
1728
1765
  # <note markdown="1"> The Amazon ECS container agent running on a container instance must
1729
1766
  # register the logging drivers available on that instance with the
@@ -1842,6 +1879,7 @@ module Aws::ECS
1842
1879
  :depends_on,
1843
1880
  :start_timeout,
1844
1881
  :stop_timeout,
1882
+ :version_consistency,
1845
1883
  :hostname,
1846
1884
  :user,
1847
1885
  :working_directory,
@@ -1940,6 +1978,45 @@ module Aws::ECS
1940
1978
  include Aws::Structure
1941
1979
  end
1942
1980
 
1981
+ # The details about the container image a service revision uses.
1982
+ #
1983
+ # To ensure that all tasks in a service use the same container image,
1984
+ # Amazon ECS resolves container image names and any image tags specified
1985
+ # in the task definition to container image digests.
1986
+ #
1987
+ # After the container image digest has been established, Amazon ECS uses
1988
+ # the digest to start any other desired tasks, and for any future
1989
+ # service and service revision updates. This leads to all tasks in a
1990
+ # service always running identical container images, resulting in
1991
+ # version consistency for your software. For more information, see
1992
+ # [Container image resolution][1] in the Amazon ECS Developer Guide.
1993
+ #
1994
+ #
1995
+ #
1996
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html#deployment-container-image-stability
1997
+ #
1998
+ # @!attribute [rw] container_name
1999
+ # The name of the container.
2000
+ # @return [String]
2001
+ #
2002
+ # @!attribute [rw] image_digest
2003
+ # The container image digest.
2004
+ # @return [String]
2005
+ #
2006
+ # @!attribute [rw] image
2007
+ # The container image.
2008
+ # @return [String]
2009
+ #
2010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ContainerImage AWS API Documentation
2011
+ #
2012
+ class ContainerImage < Struct.new(
2013
+ :container_name,
2014
+ :image_digest,
2015
+ :image)
2016
+ SENSITIVE = []
2017
+ include Aws::Structure
2018
+ end
2019
+
1943
2020
  # An Amazon EC2 or External instance that's running the Amazon ECS
1944
2021
  # agent and has been registered with a cluster.
1945
2022
  #
@@ -2161,7 +2238,7 @@ module Aws::ECS
2161
2238
 
2162
2239
  # The overrides that are sent to a container. An empty container
2163
2240
  # override can be passed in. An example of an empty container override
2164
- # is `\{"containerOverrides": [ ] \}`. If a non-empty container override
2241
+ # is `{"containerOverrides": [ ] }`. If a non-empty container override
2165
2242
  # is specified, the `name` parameter must be included.
2166
2243
  #
2167
2244
  # You can use Secrets Manager or Amazon Web Services Systems Manager
@@ -2569,6 +2646,19 @@ module Aws::ECS
2569
2646
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
2570
2647
  # @return [String]
2571
2648
  #
2649
+ # @!attribute [rw] availability_zone_rebalancing
2650
+ # Indicates whether to use Availability Zone rebalancing for the
2651
+ # service.
2652
+ #
2653
+ # For more information, see [Balancing an Amazon ECS service across
2654
+ # Availability Zones][1] in the *Amazon Elastic Container Service
2655
+ # Developer Guide*.
2656
+ #
2657
+ #
2658
+ #
2659
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html
2660
+ # @return [String]
2661
+ #
2572
2662
  # @!attribute [rw] load_balancers
2573
2663
  # A load balancer object representing the load balancers to use with
2574
2664
  # your service. For more information, see [Service load balancing][1]
@@ -2777,27 +2867,18 @@ module Aws::ECS
2777
2867
  #
2778
2868
  # @!attribute [rw] health_check_grace_period_seconds
2779
2869
  # The period of time, in seconds, that the Amazon ECS service
2780
- # scheduler ignores unhealthy Elastic Load Balancing target health
2781
- # checks after a task has first started. This is only used when your
2782
- # service is configured to use a load balancer. If your service has a
2783
- # load balancer defined and you don't specify a health check grace
2784
- # period value, the default value of `0` is used.
2785
- #
2786
- # If you do not use an Elastic Load Balancing, we recommend that you
2787
- # use the `startPeriod` in the task definition health check
2788
- # parameters. For more information, see [Health check][1].
2789
- #
2790
- # If your service's tasks take a while to start and respond to
2791
- # Elastic Load Balancing health checks, you can specify a health check
2792
- # grace period of up to 2,147,483,647 seconds (about 69 years). During
2793
- # that time, the Amazon ECS service scheduler ignores health check
2794
- # status. This grace period can prevent the service scheduler from
2795
- # marking tasks as unhealthy and stopping them before they have time
2796
- # to come up.
2797
- #
2798
- #
2799
- #
2800
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_HealthCheck.html
2870
+ # scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and
2871
+ # container health checks after a task has first started. If you
2872
+ # don't specify a health check grace period value, the default value
2873
+ # of `0` is used. If you don't use any of the health checks, then
2874
+ # `healthCheckGracePeriodSeconds` is unused.
2875
+ #
2876
+ # If your service's tasks take a while to start and respond to health
2877
+ # checks, you can specify a health check grace period of up to
2878
+ # 2,147,483,647 seconds (about 69 years). During that time, the Amazon
2879
+ # ECS service scheduler ignores health check status. This grace period
2880
+ # can prevent the service scheduler from marking tasks as unhealthy
2881
+ # and stopping them before they have time to come up.
2801
2882
  # @return [Integer]
2802
2883
  #
2803
2884
  # @!attribute [rw] scheduling_strategy
@@ -2935,12 +3016,17 @@ module Aws::ECS
2935
3016
  # supported volume type is an Amazon EBS volume.
2936
3017
  # @return [Array<Types::ServiceVolumeConfiguration>]
2937
3018
  #
3019
+ # @!attribute [rw] vpc_lattice_configurations
3020
+ # The VPC Lattice configuration for the service being created.
3021
+ # @return [Array<Types::VpcLatticeConfiguration>]
3022
+ #
2938
3023
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreateServiceRequest AWS API Documentation
2939
3024
  #
2940
3025
  class CreateServiceRequest < Struct.new(
2941
3026
  :cluster,
2942
3027
  :service_name,
2943
3028
  :task_definition,
3029
+ :availability_zone_rebalancing,
2944
3030
  :load_balancers,
2945
3031
  :service_registries,
2946
3032
  :desired_count,
@@ -2961,7 +3047,8 @@ module Aws::ECS
2961
3047
  :propagate_tags,
2962
3048
  :enable_execute_command,
2963
3049
  :service_connect_configuration,
2964
- :volume_configurations)
3050
+ :volume_configurations,
3051
+ :vpc_lattice_configurations)
2965
3052
  SENSITIVE = []
2966
3053
  include Aws::Structure
2967
3054
  end
@@ -3165,6 +3252,30 @@ module Aws::ECS
3165
3252
  include Aws::Structure
3166
3253
  end
3167
3254
 
3255
+ # The optional filter to narrow the `ListServiceDeployment` results.
3256
+ #
3257
+ # If you do not specify a value, service deployments that were created
3258
+ # before the current time are included in the result.
3259
+ #
3260
+ # @!attribute [rw] before
3261
+ # Include service deployments in the result that were created before
3262
+ # this time. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.
3263
+ # @return [Time]
3264
+ #
3265
+ # @!attribute [rw] after
3266
+ # Include service deployments in the result that were created after
3267
+ # this time. The format is yyyy-MM-dd HH:mm:ss.SSSSSS.
3268
+ # @return [Time]
3269
+ #
3270
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/CreatedAt AWS API Documentation
3271
+ #
3272
+ class CreatedAt < Struct.new(
3273
+ :before,
3274
+ :after)
3275
+ SENSITIVE = []
3276
+ include Aws::Structure
3277
+ end
3278
+
3168
3279
  # @!attribute [rw] name
3169
3280
  # The resource name to disable the account setting for. If
3170
3281
  # `serviceLongArnFormat` is specified, the ARN for your Amazon ECS
@@ -3582,6 +3693,10 @@ module Aws::ECS
3582
3693
  # The Fargate ephemeral storage settings for the deployment.
3583
3694
  # @return [Types::DeploymentEphemeralStorage]
3584
3695
  #
3696
+ # @!attribute [rw] vpc_lattice_configurations
3697
+ # The VPC Lattice configuration for the service deployment.
3698
+ # @return [Array<Types::VpcLatticeConfiguration>]
3699
+ #
3585
3700
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Deployment AWS API Documentation
3586
3701
  #
3587
3702
  class Deployment < Struct.new(
@@ -3604,7 +3719,8 @@ module Aws::ECS
3604
3719
  :service_connect_configuration,
3605
3720
  :service_connect_resources,
3606
3721
  :volume_configurations,
3607
- :fargate_ephemeral_storage)
3722
+ :fargate_ephemeral_storage,
3723
+ :vpc_lattice_configurations)
3608
3724
  SENSITIVE = []
3609
3725
  include Aws::Structure
3610
3726
  end
@@ -3632,11 +3748,6 @@ module Aws::ECS
3632
3748
  # alarms.
3633
3749
  # @return [Array<String>]
3634
3750
  #
3635
- # @!attribute [rw] enable
3636
- # Determines whether to use the CloudWatch alarm option in the service
3637
- # deployment process.
3638
- # @return [Boolean]
3639
- #
3640
3751
  # @!attribute [rw] rollback
3641
3752
  # Determines whether to configure Amazon ECS to roll back the service
3642
3753
  # if a service deployment fails. If rollback is used, when a service
@@ -3644,12 +3755,17 @@ module Aws::ECS
3644
3755
  # that completed successfully.
3645
3756
  # @return [Boolean]
3646
3757
  #
3758
+ # @!attribute [rw] enable
3759
+ # Determines whether to use the CloudWatch alarm option in the service
3760
+ # deployment process.
3761
+ # @return [Boolean]
3762
+ #
3647
3763
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentAlarms AWS API Documentation
3648
3764
  #
3649
3765
  class DeploymentAlarms < Struct.new(
3650
3766
  :alarm_names,
3651
- :enable,
3652
- :rollback)
3767
+ :rollback,
3768
+ :enable)
3653
3769
  SENSITIVE = []
3654
3770
  include Aws::Structure
3655
3771
  end
@@ -3843,13 +3959,7 @@ module Aws::ECS
3843
3959
  include Aws::Structure
3844
3960
  end
3845
3961
 
3846
- # The deployment controller to use for the service. For more
3847
- # information, see [Amazon ECS deployment types][1] in the *Amazon
3848
- # Elastic Container Service Developer Guide*.
3849
- #
3850
- #
3851
- #
3852
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html
3962
+ # The deployment controller to use for the service.
3853
3963
  #
3854
3964
  # @!attribute [rw] type
3855
3965
  # The deployment controller type to use.
@@ -3866,6 +3976,10 @@ module Aws::ECS
3866
3976
  # service deployment, as specified in the
3867
3977
  # [DeploymentConfiguration][1].
3868
3978
  #
3979
+ # For more information about rolling deployments, see [Deploy Amazon
3980
+ # ECS services by replacing tasks][2] in the *Amazon Elastic
3981
+ # Container Service Developer Guide*.
3982
+ #
3869
3983
  # CODE\_DEPLOY
3870
3984
  #
3871
3985
  # : The blue/green (`CODE_DEPLOY`) deployment type uses the blue/green
@@ -3873,15 +3987,26 @@ module Aws::ECS
3873
3987
  # a new deployment of a service before sending production traffic to
3874
3988
  # it.
3875
3989
  #
3990
+ # For more information about blue/green deployments, see [Validate
3991
+ # the state of an Amazon ECS service before deployment ][3] in the
3992
+ # *Amazon Elastic Container Service Developer Guide*.
3993
+ #
3876
3994
  # EXTERNAL
3877
3995
  #
3878
3996
  # : The external (`EXTERNAL`) deployment type enables you to use any
3879
3997
  # third-party deployment controller for full control over the
3880
3998
  # deployment process for an Amazon ECS service.
3881
3999
  #
4000
+ # For more information about external deployments, see [Deploy
4001
+ # Amazon ECS services using a third-party controller ][4] in the
4002
+ # *Amazon Elastic Container Service Developer Guide*.
4003
+ #
3882
4004
  #
3883
4005
  #
3884
4006
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeploymentConfiguration.html
4007
+ # [2]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html
4008
+ # [3]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-bluegreen.html
4009
+ # [4]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-external.html
3885
4010
  # @return [String]
3886
4011
  #
3887
4012
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DeploymentController AWS API Documentation
@@ -4167,6 +4292,78 @@ module Aws::ECS
4167
4292
  include Aws::Structure
4168
4293
  end
4169
4294
 
4295
+ # @!attribute [rw] service_deployment_arns
4296
+ # The ARN of the service deployment.
4297
+ #
4298
+ # You can specify a maximum of 20 ARNs.
4299
+ # @return [Array<String>]
4300
+ #
4301
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DescribeServiceDeploymentsRequest AWS API Documentation
4302
+ #
4303
+ class DescribeServiceDeploymentsRequest < Struct.new(
4304
+ :service_deployment_arns)
4305
+ SENSITIVE = []
4306
+ include Aws::Structure
4307
+ end
4308
+
4309
+ # @!attribute [rw] service_deployments
4310
+ # The list of service deployments described.
4311
+ # @return [Array<Types::ServiceDeployment>]
4312
+ #
4313
+ # @!attribute [rw] failures
4314
+ # Any failures associated with the call.
4315
+ #
4316
+ # If you decsribe a deployment with a service revision created before
4317
+ # October 25, 2024, the call fails. The failure includes the service
4318
+ # revision ARN and the reason set to `MISSING`.
4319
+ # @return [Array<Types::Failure>]
4320
+ #
4321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DescribeServiceDeploymentsResponse AWS API Documentation
4322
+ #
4323
+ class DescribeServiceDeploymentsResponse < Struct.new(
4324
+ :service_deployments,
4325
+ :failures)
4326
+ SENSITIVE = []
4327
+ include Aws::Structure
4328
+ end
4329
+
4330
+ # @!attribute [rw] service_revision_arns
4331
+ # The ARN of the service revision.
4332
+ #
4333
+ # You can specify a maximum of 20 ARNs.
4334
+ #
4335
+ # You can call [ListServiceDeployments][1] to get the ARNs.
4336
+ #
4337
+ #
4338
+ #
4339
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ListServiceDeployments.html
4340
+ # @return [Array<String>]
4341
+ #
4342
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DescribeServiceRevisionsRequest AWS API Documentation
4343
+ #
4344
+ class DescribeServiceRevisionsRequest < Struct.new(
4345
+ :service_revision_arns)
4346
+ SENSITIVE = []
4347
+ include Aws::Structure
4348
+ end
4349
+
4350
+ # @!attribute [rw] service_revisions
4351
+ # The list of service revisions described.
4352
+ # @return [Array<Types::ServiceRevision>]
4353
+ #
4354
+ # @!attribute [rw] failures
4355
+ # Any failures associated with the call.
4356
+ # @return [Array<Types::Failure>]
4357
+ #
4358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/DescribeServiceRevisionsResponse AWS API Documentation
4359
+ #
4360
+ class DescribeServiceRevisionsResponse < Struct.new(
4361
+ :service_revisions,
4362
+ :failures)
4363
+ SENSITIVE = []
4364
+ include Aws::Structure
4365
+ end
4366
+
4170
4367
  # @!attribute [rw] cluster
4171
4368
  # The short name or full Amazon Resource Name (ARN)the cluster that
4172
4369
  # hosts the service to describe. If you do not specify a cluster, the
@@ -4331,9 +4528,8 @@ module Aws::ECS
4331
4528
  # @!attribute [rw] cluster
4332
4529
  # The short name or full Amazon Resource Name (ARN) of the cluster
4333
4530
  # that hosts the task or tasks to describe. If you do not specify a
4334
- # cluster, the default cluster is assumed. This parameter is required
4335
- # if the task or tasks you are describing were launched in any cluster
4336
- # other than the default cluster.
4531
+ # cluster, the default cluster is assumed. This parameter is required.
4532
+ # If you do not specify a value, the `default` cluster is used.
4337
4533
  # @return [String]
4338
4534
  #
4339
4535
  # @!attribute [rw] tasks
@@ -4719,7 +4915,7 @@ module Aws::ECS
4719
4915
  #
4720
4916
  # @!attribute [rw] size_in_gi_b
4721
4917
  # The total amount, in GiB, of ephemeral storage to set for the task.
4722
- # The minimum supported value is `20` GiB and the maximum supported
4918
+ # The minimum supported value is `21` GiB and the maximum supported
4723
4919
  # value is `200` GiB.
4724
4920
  # @return [Integer]
4725
4921
  #
@@ -5018,7 +5214,7 @@ module Aws::ECS
5018
5214
  # to add additional metadata, such as the task, task definition,
5019
5215
  # cluster, and container instance details to the log event. If
5020
5216
  # specified, the syntax to use is
5021
- # `"options":\{"enable-ecs-log-metadata":"true|false","config-file-type:"s3|file","config-file-value":"arn:aws:s3:::mybucket/fluent.conf|filepath"\}`.
5217
+ # `"options":{"enable-ecs-log-metadata":"true|false","config-file-type:"s3|file","config-file-value":"arn:aws:s3:::mybucket/fluent.conf|filepath"}`.
5022
5218
  # For more information, see [Creating a task definition that uses a
5023
5219
  # FireLens configuration][1] in the *Amazon Elastic Container Service
5024
5220
  # Developer Guide*.
@@ -5537,7 +5733,7 @@ module Aws::ECS
5537
5733
  # Remote API or greater on your container instance. To check the
5538
5734
  # Docker Remote API version on your container instance, log in to your
5539
5735
  # container instance and run the following command: `sudo docker
5540
- # version --format '\{\{.Server.APIVersion\}\}'`
5736
+ # version --format '{{.Server.APIVersion}}'`
5541
5737
  # @return [Boolean]
5542
5738
  #
5543
5739
  # @!attribute [rw] shared_memory_size
@@ -5922,6 +6118,103 @@ module Aws::ECS
5922
6118
  include Aws::Structure
5923
6119
  end
5924
6120
 
6121
+ # @!attribute [rw] service
6122
+ # The ARN or name of the service
6123
+ # @return [String]
6124
+ #
6125
+ # @!attribute [rw] cluster
6126
+ # The cluster that hosts the service. This can either be the cluster
6127
+ # name or ARN. Starting April 15, 2023, Amazon Web Services will not
6128
+ # onboard new customers to Amazon Elastic Inference (EI), and will
6129
+ # help current customers migrate their workloads to options that offer
6130
+ # better price and performanceIf you don't specify a cluster,
6131
+ # `default` is used.
6132
+ # @return [String]
6133
+ #
6134
+ # @!attribute [rw] status
6135
+ # An optional filter you can use to narrow the results. If you do not
6136
+ # specify a status, then all status values are included in the result.
6137
+ # @return [Array<String>]
6138
+ #
6139
+ # @!attribute [rw] created_at
6140
+ # An optional filter you can use to narrow the results by the service
6141
+ # creation date. If you do not specify a value, the result includes
6142
+ # all services created before the current time. The format is
6143
+ # yyyy-MM-dd HH:mm:ss.SSSSSS.
6144
+ # @return [Types::CreatedAt]
6145
+ #
6146
+ # @!attribute [rw] next_token
6147
+ # The `nextToken` value returned from a `ListServiceDeployments`
6148
+ # request indicating that more results are available to fulfill the
6149
+ # request and further calls are needed. If you provided `maxResults`,
6150
+ # it's possible the number of results is fewer than `maxResults`.
6151
+ # @return [String]
6152
+ #
6153
+ # @!attribute [rw] max_results
6154
+ # The maximum number of service deployment results that
6155
+ # `ListServiceDeployments` returned in paginated output. When this
6156
+ # parameter is used, `ListServiceDeployments` only returns
6157
+ # `maxResults` results in a single page along with a `nextToken`
6158
+ # response element. The remaining results of the initial request can
6159
+ # be seen by sending another `ListServiceDeployments` request with the
6160
+ # returned `nextToken` value. This value can be between 1 and 100. If
6161
+ # this parameter isn't used, then `ListServiceDeployments` returns up
6162
+ # to 20 results and a `nextToken` value if applicable.
6163
+ # @return [Integer]
6164
+ #
6165
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ListServiceDeploymentsRequest AWS API Documentation
6166
+ #
6167
+ class ListServiceDeploymentsRequest < Struct.new(
6168
+ :service,
6169
+ :cluster,
6170
+ :status,
6171
+ :created_at,
6172
+ :next_token,
6173
+ :max_results)
6174
+ SENSITIVE = []
6175
+ include Aws::Structure
6176
+ end
6177
+
6178
+ # @!attribute [rw] service_deployments
6179
+ # An overview of the service deployment, including the following
6180
+ # properties:
6181
+ #
6182
+ # * The ARN of the service deployment.
6183
+ #
6184
+ # * The ARN of the service being deployed.
6185
+ #
6186
+ # * The ARN of the cluster that hosts the service in the service
6187
+ # deployment.
6188
+ #
6189
+ # * The time that the service deployment started.
6190
+ #
6191
+ # * The time that the service deployment completed.
6192
+ #
6193
+ # * The service deployment status.
6194
+ #
6195
+ # * Information about why the service deployment is in the current
6196
+ # state.
6197
+ #
6198
+ # * The ARN of the service revision that is being deployed.
6199
+ # @return [Array<Types::ServiceDeploymentBrief>]
6200
+ #
6201
+ # @!attribute [rw] next_token
6202
+ # The `nextToken` value to include in a future
6203
+ # `ListServiceDeployments` request. When the results of a
6204
+ # `ListServiceDeployments` request exceed `maxResults`, this value can
6205
+ # be used to retrieve the next page of results. This value is null
6206
+ # when there are no more results to return.
6207
+ # @return [String]
6208
+ #
6209
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ListServiceDeploymentsResponse AWS API Documentation
6210
+ #
6211
+ class ListServiceDeploymentsResponse < Struct.new(
6212
+ :service_deployments,
6213
+ :next_token)
6214
+ SENSITIVE = []
6215
+ include Aws::Structure
6216
+ end
6217
+
5925
6218
  # @!attribute [rw] namespace
5926
6219
  # The namespace name or full Amazon Resource Name (ARN) of the Cloud
5927
6220
  # Map namespace to list the services in.
@@ -6716,7 +7009,7 @@ module Aws::ECS
6716
7009
  # greater on your container instance. To check the Docker Remote API
6717
7010
  # version on your container instance, log in to your container
6718
7011
  # instance and run the following command: `sudo docker version
6719
- # --format '\{\{.Server.APIVersion\}\}'`
7012
+ # --format '{{.Server.APIVersion}}'`
6720
7013
  #
6721
7014
  #
6722
7015
  #
@@ -7002,7 +7295,6 @@ module Aws::ECS
7002
7295
  # Amazon ECS agent finds open host ports from the default
7003
7296
  # ephemeral range and passes it to docker to bind them to the
7004
7297
  # container ports.
7005
- #
7006
7298
  # * The `containerPortRange` valid values are between 1 and 65535.
7007
7299
  #
7008
7300
  # * A port can only be included in one port mapping per container.
@@ -7320,19 +7612,12 @@ module Aws::ECS
7320
7612
  # @return [String]
7321
7613
  #
7322
7614
  # @!attribute [rw] name
7323
- # The name that's used for the port mapping. This parameter only
7324
- # applies to Service Connect. This parameter is the name that you use
7325
- # in the `serviceConnectConfiguration` of a service. The name can
7326
- # include up to 64 characters. The characters can include lowercase
7327
- # letters, numbers, underscores (\_), and hyphens (-). The name can't
7328
- # start with a hyphen.
7329
- #
7330
- # For more information, see [Service Connect][1] in the *Amazon
7331
- # Elastic Container Service Developer Guide*.
7332
- #
7333
- #
7334
- #
7335
- # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
7615
+ # The name that's used for the port mapping. This parameter is the
7616
+ # name that you use in the `serviceConnectConfiguration` and the
7617
+ # `vpcLatticeConfigurations` of a service. The name can include up to
7618
+ # 64 characters. The characters can include lowercase letters,
7619
+ # numbers, underscores (\_), and hyphens (-). The name can't start
7620
+ # with a hyphen.
7336
7621
  # @return [String]
7337
7622
  #
7338
7623
  # @!attribute [rw] app_protocol
@@ -7397,7 +7682,6 @@ module Aws::ECS
7397
7682
  # Amazon ECS agent finds open host ports from the default
7398
7683
  # ephemeral range and passes it to docker to bind them to the
7399
7684
  # container ports.
7400
- #
7401
7685
  # * The `containerPortRange` valid values are between 1 and 65535.
7402
7686
  #
7403
7687
  # * A port can only be included in one port mapping per container.
@@ -7577,14 +7861,26 @@ module Aws::ECS
7577
7861
  # [Elastic Network Interface Trunking][1] in the *Amazon Elastic
7578
7862
  # Container Service Developer Guide*.
7579
7863
  #
7580
- # * `containerInsights` - When modified, the default setting
7581
- # indicating whether Amazon Web Services CloudWatch Container
7582
- # Insights is turned on for your clusters is changed. If
7583
- # `containerInsights` is turned on, any new clusters that are
7584
- # created will have Container Insights turned on unless you disable
7585
- # it during cluster creation. For more information, see [CloudWatch
7586
- # Container Insights][2] in the *Amazon Elastic Container Service
7587
- # Developer Guide*.
7864
+ # * `containerInsights` - Container Insights with enhanced
7865
+ # observability provides all the Container Insights metrics, plus
7866
+ # additional task and container metrics. This version supports
7867
+ # enhanced observability for Amazon ECS clusters using the Amazon
7868
+ # EC2 and Fargate launch types. After you configure Container
7869
+ # Insights with enhanced observability on Amazon ECS, Container
7870
+ # Insights auto-collects detailed infrastructure telemetry from the
7871
+ # cluster level down to the container level in your environment and
7872
+ # displays these critical performance data in curated dashboards
7873
+ # removing the heavy lifting in observability set-up.
7874
+ #
7875
+ # To use Container Insights with enhanced observability, set the
7876
+ # `containerInsights` account setting to `enhanced`.
7877
+ #
7878
+ # To use Container Insights, set the `containerInsights` account
7879
+ # setting to `enabled`.
7880
+ #
7881
+ # For more information, see [Monitor Amazon ECS containers using
7882
+ # Container Insights with enhanced observability][2] in the *Amazon
7883
+ # Elastic Container Service Developer Guide*.
7588
7884
  #
7589
7885
  # * `dualStackIPv6` - When turned on, when using a VPC in dual stack
7590
7886
  # mode, your tasks using the `awsvpc` network mode can have an IPv6
@@ -7635,7 +7931,7 @@ module Aws::ECS
7635
7931
  #
7636
7932
  # @!attribute [rw] value
7637
7933
  # The account setting value for the specified principal ARN. Accepted
7638
- # values are `enabled`, `disabled`, `on`, and `off`.
7934
+ # values are `enabled`, `disabled`, `on`, `enhanced`, and `off`.
7639
7935
  #
7640
7936
  # When you specify `fargateTaskRetirementWaitPeriod` for the `name`,
7641
7937
  # the following are the valid values:
@@ -7711,14 +8007,26 @@ module Aws::ECS
7711
8007
  # [Elastic Network Interface Trunking][1] in the *Amazon Elastic
7712
8008
  # Container Service Developer Guide*.
7713
8009
  #
7714
- # * `containerInsights` - When modified, the default setting
7715
- # indicating whether Amazon Web Services CloudWatch Container
7716
- # Insights is turned on for your clusters is changed. If
7717
- # `containerInsights` is turned on, any new clusters that are
7718
- # created will have Container Insights turned on unless you disable
7719
- # it during cluster creation. For more information, see [CloudWatch
7720
- # Container Insights][2] in the *Amazon Elastic Container Service
7721
- # Developer Guide*.
8010
+ # * `containerInsights` - Container Insights with enhanced
8011
+ # observability provides all the Container Insights metrics, plus
8012
+ # additional task and container metrics. This version supports
8013
+ # enhanced observability for Amazon ECS clusters using the Amazon
8014
+ # EC2 and Fargate launch types. After you configure Container
8015
+ # Insights with enhanced observability on Amazon ECS, Container
8016
+ # Insights auto-collects detailed infrastructure telemetry from the
8017
+ # cluster level down to the container level in your environment and
8018
+ # displays these critical performance data in curated dashboards
8019
+ # removing the heavy lifting in observability set-up.
8020
+ #
8021
+ # To use Container Insights with enhanced observability, set the
8022
+ # `containerInsights` account setting to `enhanced`.
8023
+ #
8024
+ # To use Container Insights, set the `containerInsights` account
8025
+ # setting to `enabled`.
8026
+ #
8027
+ # For more information, see [Monitor Amazon ECS containers using
8028
+ # Container Insights with enhanced observability][2] in the *Amazon
8029
+ # Elastic Container Service Developer Guide*.
7722
8030
  #
7723
8031
  # * `dualStackIPv6` - When turned on, when using a VPC in dual stack
7724
8032
  # mode, your tasks using the `awsvpc` network mode can have an IPv6
@@ -7766,7 +8074,7 @@ module Aws::ECS
7766
8074
  #
7767
8075
  # @!attribute [rw] value
7768
8076
  # The account setting value for the specified principal ARN. Accepted
7769
- # values are `enabled`, `disabled`, `on`, and `off`.
8077
+ # values are `enabled`, `disabled`, `enhanced`, `on`, and `off`.
7770
8078
  #
7771
8079
  # When you specify `fargateTaskRetirementWaitPeriod` for the `name`,
7772
8080
  # the following are the valid values:
@@ -8541,6 +8849,46 @@ module Aws::ECS
8541
8849
  include Aws::Structure
8542
8850
  end
8543
8851
 
8852
+ # Information about the service deployment rollback.
8853
+ #
8854
+ # @!attribute [rw] reason
8855
+ # The reason the rollback happened. For example, the circuit breaker
8856
+ # initiated the rollback operation.
8857
+ # @return [String]
8858
+ #
8859
+ # @!attribute [rw] started_at
8860
+ # Time time that the rollback started. The format is yyyy-MM-dd
8861
+ # HH:mm:ss.SSSSSS.
8862
+ # @return [Time]
8863
+ #
8864
+ # @!attribute [rw] service_revision_arn
8865
+ # The ARN of the service revision deployed as part of the rollback.
8866
+ #
8867
+ # When the type is `GPU`, the value is the number of physical `GPUs`
8868
+ # the Amazon ECS container agent reserves for the container. The
8869
+ # number of GPUs that's reserved for all containers in a task can't
8870
+ # exceed the number of available GPUs on the container instance that
8871
+ # the task is launched on.
8872
+ #
8873
+ # When the type is `InferenceAccelerator`, the `value` matches the
8874
+ # `deviceName` for an [InferenceAccelerator][1] specified in a task
8875
+ # definition.
8876
+ #
8877
+ #
8878
+ #
8879
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_InferenceAccelerator.html
8880
+ # @return [String]
8881
+ #
8882
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Rollback AWS API Documentation
8883
+ #
8884
+ class Rollback < Struct.new(
8885
+ :reason,
8886
+ :started_at,
8887
+ :service_revision_arn)
8888
+ SENSITIVE = []
8889
+ include Aws::Structure
8890
+ end
8891
+
8544
8892
  # @!attribute [rw] capacity_provider_strategy
8545
8893
  # The capacity provider strategy to use for the task.
8546
8894
  #
@@ -9223,6 +9571,19 @@ module Aws::ECS
9223
9571
  # turned on for all containers in tasks as part of the service.
9224
9572
  # @return [Boolean]
9225
9573
  #
9574
+ # @!attribute [rw] availability_zone_rebalancing
9575
+ # Indicates whether to use Availability Zone rebalancing for the
9576
+ # service.
9577
+ #
9578
+ # For more information, see [Balancing an Amazon ECS service across
9579
+ # Availability Zones][1] in the *Amazon Elastic Container Service
9580
+ # Developer Guide*.
9581
+ #
9582
+ #
9583
+ #
9584
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html
9585
+ # @return [String]
9586
+ #
9226
9587
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Service AWS API Documentation
9227
9588
  #
9228
9589
  class Service < Struct.new(
@@ -9256,7 +9617,8 @@ module Aws::ECS
9256
9617
  :created_by,
9257
9618
  :enable_ecs_managed_tags,
9258
9619
  :propagate_tags,
9259
- :enable_execute_command)
9620
+ :enable_execute_command,
9621
+ :availability_zone_rebalancing)
9260
9622
  SENSITIVE = []
9261
9623
  include Aws::Structure
9262
9624
  end
@@ -9594,6 +9956,268 @@ module Aws::ECS
9594
9956
  include Aws::Structure
9595
9957
  end
9596
9958
 
9959
+ # Information about the service deployment.
9960
+ #
9961
+ # Service deployments provide a comprehensive view of your deployments.
9962
+ # For information about service deployments, see [View service history
9963
+ # using Amazon ECS service deployments][1] in the <i> <i>Amazon Elastic
9964
+ # Container Service Developer Guide</i> </i>.
9965
+ #
9966
+ #
9967
+ #
9968
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-deployment.html
9969
+ #
9970
+ # @!attribute [rw] service_deployment_arn
9971
+ # The ARN of the service deployment.
9972
+ # @return [String]
9973
+ #
9974
+ # @!attribute [rw] service_arn
9975
+ # The ARN of the service for this service deployment.
9976
+ # @return [String]
9977
+ #
9978
+ # @!attribute [rw] cluster_arn
9979
+ # The ARN of the cluster that hosts the service.
9980
+ # @return [String]
9981
+ #
9982
+ # @!attribute [rw] created_at
9983
+ # The time the service deployment was created. The format is
9984
+ # yyyy-MM-dd HH:mm:ss.SSSSSS.
9985
+ # @return [Time]
9986
+ #
9987
+ # @!attribute [rw] started_at
9988
+ # The time the service deployment statred. The format is yyyy-MM-dd
9989
+ # HH:mm:ss.SSSSSS.
9990
+ # @return [Time]
9991
+ #
9992
+ # @!attribute [rw] finished_at
9993
+ # The time the service deployment finished. The format is yyyy-MM-dd
9994
+ # HH:mm:ss.SSSSSS.
9995
+ # @return [Time]
9996
+ #
9997
+ # @!attribute [rw] stopped_at
9998
+ # The time the service deployment stopped. The format is yyyy-MM-dd
9999
+ # HH:mm:ss.SSSSSS.
10000
+ #
10001
+ # The service deployment stops when any of the following actions
10002
+ # happen:
10003
+ #
10004
+ # * A user manually stops the deployment
10005
+ #
10006
+ # * The rollback option is not in use for the failure detection
10007
+ # mechanism (the circuit breaker or alarm-based) and the service
10008
+ # fails.
10009
+ # @return [Time]
10010
+ #
10011
+ # @!attribute [rw] updated_at
10012
+ # The time that the service deployment was last updated. The format is
10013
+ # yyyy-MM-dd HH:mm:ss.SSSSSS.
10014
+ # @return [Time]
10015
+ #
10016
+ # @!attribute [rw] source_service_revisions
10017
+ # The currently deployed workload configuration.
10018
+ # @return [Array<Types::ServiceRevisionSummary>]
10019
+ #
10020
+ # @!attribute [rw] target_service_revision
10021
+ # The workload configuration being deployed.
10022
+ # @return [Types::ServiceRevisionSummary]
10023
+ #
10024
+ # @!attribute [rw] status
10025
+ # The service deployment state.
10026
+ # @return [String]
10027
+ #
10028
+ # @!attribute [rw] status_reason
10029
+ # Information about why the service deployment is in the current
10030
+ # status. For example, the circuit breaker detected a failure.
10031
+ # @return [String]
10032
+ #
10033
+ # @!attribute [rw] deployment_configuration
10034
+ # Optional deployment parameters that control how many tasks run
10035
+ # during a deployment and the ordering of stopping and starting tasks.
10036
+ # @return [Types::DeploymentConfiguration]
10037
+ #
10038
+ # @!attribute [rw] rollback
10039
+ # The rollback options the service deployment uses when the deployment
10040
+ # fails.
10041
+ # @return [Types::Rollback]
10042
+ #
10043
+ # @!attribute [rw] deployment_circuit_breaker
10044
+ # The circuit breaker configuration that determines a service
10045
+ # deployment failed.
10046
+ # @return [Types::ServiceDeploymentCircuitBreaker]
10047
+ #
10048
+ # @!attribute [rw] alarms
10049
+ # The CloudWatch alarms that determine when a service deployment
10050
+ # fails.
10051
+ # @return [Types::ServiceDeploymentAlarms]
10052
+ #
10053
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceDeployment AWS API Documentation
10054
+ #
10055
+ class ServiceDeployment < Struct.new(
10056
+ :service_deployment_arn,
10057
+ :service_arn,
10058
+ :cluster_arn,
10059
+ :created_at,
10060
+ :started_at,
10061
+ :finished_at,
10062
+ :stopped_at,
10063
+ :updated_at,
10064
+ :source_service_revisions,
10065
+ :target_service_revision,
10066
+ :status,
10067
+ :status_reason,
10068
+ :deployment_configuration,
10069
+ :rollback,
10070
+ :deployment_circuit_breaker,
10071
+ :alarms)
10072
+ SENSITIVE = []
10073
+ include Aws::Structure
10074
+ end
10075
+
10076
+ # The CloudWatch alarms used to determine a service deployment failed.
10077
+ #
10078
+ # Amazon ECS considers the service deployment as failed when any of the
10079
+ # alarms move to the `ALARM` state. For more information, see [How
10080
+ # CloudWatch alarms detect Amazon ECS deployment failures][1] in the
10081
+ # Amazon ECS Developer Guide.
10082
+ #
10083
+ #
10084
+ #
10085
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-alarm-failure.html
10086
+ #
10087
+ # @!attribute [rw] status
10088
+ # The status of the alarms check. Amazon ECS is not using alarms for
10089
+ # service deployment failures when the status is `DISABLED`.
10090
+ # @return [String]
10091
+ #
10092
+ # @!attribute [rw] alarm_names
10093
+ # The name of the CloudWatch alarms that determine when a service
10094
+ # deployment failed. A "," separates the alarms.
10095
+ # @return [Array<String>]
10096
+ #
10097
+ # @!attribute [rw] triggered_alarm_names
10098
+ # One or more CloudWatch alarm names that have been triggered during
10099
+ # the service deployment. A "," separates the alarm names.
10100
+ # @return [Array<String>]
10101
+ #
10102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceDeploymentAlarms AWS API Documentation
10103
+ #
10104
+ class ServiceDeploymentAlarms < Struct.new(
10105
+ :status,
10106
+ :alarm_names,
10107
+ :triggered_alarm_names)
10108
+ SENSITIVE = []
10109
+ include Aws::Structure
10110
+ end
10111
+
10112
+ # The service deployment properties that are retured when you call
10113
+ # `ListServiceDeployments`.
10114
+ #
10115
+ # This provides a high-level overview of the service deployment.
10116
+ #
10117
+ # @!attribute [rw] service_deployment_arn
10118
+ # The ARN of the service deployment.
10119
+ # @return [String]
10120
+ #
10121
+ # @!attribute [rw] service_arn
10122
+ # The ARN of the service for this service deployment.
10123
+ # @return [String]
10124
+ #
10125
+ # @!attribute [rw] cluster_arn
10126
+ # The ARN of the cluster that hosts the service.
10127
+ # @return [String]
10128
+ #
10129
+ # @!attribute [rw] started_at
10130
+ # The time that the service deployment statred. The format is
10131
+ # yyyy-MM-dd HH:mm:ss.SSSSSS.
10132
+ # @return [Time]
10133
+ #
10134
+ # @!attribute [rw] created_at
10135
+ # The time that the service deployment was created. The format is
10136
+ # yyyy-MM-dd HH:mm:ss.SSSSSS.
10137
+ # @return [Time]
10138
+ #
10139
+ # @!attribute [rw] finished_at
10140
+ # The time that the service deployment completed. The format is
10141
+ # yyyy-MM-dd HH:mm:ss.SSSSSS.
10142
+ # @return [Time]
10143
+ #
10144
+ # @!attribute [rw] target_service_revision_arn
10145
+ # The ARN of the service revision being deplyed.
10146
+ # @return [String]
10147
+ #
10148
+ # @!attribute [rw] status
10149
+ # The status of the service deployment
10150
+ # @return [String]
10151
+ #
10152
+ # @!attribute [rw] status_reason
10153
+ # Information about why the service deployment is in the current
10154
+ # status. For example, the circuit breaker detected a deployment
10155
+ # failure.
10156
+ # @return [String]
10157
+ #
10158
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceDeploymentBrief AWS API Documentation
10159
+ #
10160
+ class ServiceDeploymentBrief < Struct.new(
10161
+ :service_deployment_arn,
10162
+ :service_arn,
10163
+ :cluster_arn,
10164
+ :started_at,
10165
+ :created_at,
10166
+ :finished_at,
10167
+ :target_service_revision_arn,
10168
+ :status,
10169
+ :status_reason)
10170
+ SENSITIVE = []
10171
+ include Aws::Structure
10172
+ end
10173
+
10174
+ # Information about the circuit breaker used to determine when a service
10175
+ # deployment has failed.
10176
+ #
10177
+ # The deployment circuit breaker is the rolling update mechanism that
10178
+ # determines if the tasks reach a steady state. The deployment circuit
10179
+ # breaker has an option that will automatically roll back a failed
10180
+ # deployment to the last cpompleted service revision. For more
10181
+ # information, see [How the Amazon ECS deployment circuit breaker
10182
+ # detects failures][1] in the<i> Amazon ECS Developer Guide</i>.
10183
+ #
10184
+ #
10185
+ #
10186
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-circuit-breaker.html
10187
+ #
10188
+ # @!attribute [rw] status
10189
+ # The circuit breaker status. Amazon ECS is not using the circuit
10190
+ # breaker for service deployment failures when the status is
10191
+ # `DISABLED`.
10192
+ # @return [String]
10193
+ #
10194
+ # @!attribute [rw] failure_count
10195
+ # The number of times the circuit breaker detected a service
10196
+ # deploymeny failure.
10197
+ # @return [Integer]
10198
+ #
10199
+ # @!attribute [rw] threshold
10200
+ # The threshhold which determines that the service deployment failed.
10201
+ #
10202
+ # The deployment circuit breaker calculates the threshold value, and
10203
+ # then uses the value to determine when to move the deployment to a
10204
+ # FAILED state. The deployment circuit breaker has a minimum threshold
10205
+ # of 3 and a maximum threshold of 200. and uses the values in the
10206
+ # following formula to determine the deployment failure.
10207
+ #
10208
+ # `0.5 * desired task count`
10209
+ # @return [Integer]
10210
+ #
10211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceDeploymentCircuitBreaker AWS API Documentation
10212
+ #
10213
+ class ServiceDeploymentCircuitBreaker < Struct.new(
10214
+ :status,
10215
+ :failure_count,
10216
+ :threshold)
10217
+ SENSITIVE = []
10218
+ include Aws::Structure
10219
+ end
10220
+
9597
10221
  # The details for an event that's associated with a service.
9598
10222
  #
9599
10223
  # @!attribute [rw] id
@@ -9904,6 +10528,167 @@ module Aws::ECS
9904
10528
  include Aws::Structure
9905
10529
  end
9906
10530
 
10531
+ # Information about the service revision.
10532
+ #
10533
+ # A service revision contains a record of the workload configuration
10534
+ # Amazon ECS is attempting to deploy. Whenever you create or deploy a
10535
+ # service, Amazon ECS automatically creates and captures the
10536
+ # configuration that you're trying to deploy in the service revision.
10537
+ # For information about service revisions, see [Amazon ECS service
10538
+ # revisions][1] in the <i> <i>Amazon Elastic Container Service Developer
10539
+ # Guide</i> </i>.
10540
+ #
10541
+ #
10542
+ #
10543
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-revision.html
10544
+ #
10545
+ # @!attribute [rw] service_revision_arn
10546
+ # The ARN of the service revision.
10547
+ # @return [String]
10548
+ #
10549
+ # @!attribute [rw] service_arn
10550
+ # The ARN of the service for the service revision.
10551
+ # @return [String]
10552
+ #
10553
+ # @!attribute [rw] cluster_arn
10554
+ # The ARN of the cluster that hosts the service.
10555
+ # @return [String]
10556
+ #
10557
+ # @!attribute [rw] task_definition
10558
+ # The task definition the service revision uses.
10559
+ # @return [String]
10560
+ #
10561
+ # @!attribute [rw] capacity_provider_strategy
10562
+ # The capacity provider strategy the service revision uses.
10563
+ # @return [Array<Types::CapacityProviderStrategyItem>]
10564
+ #
10565
+ # @!attribute [rw] launch_type
10566
+ # The launch type the service revision uses.
10567
+ # @return [String]
10568
+ #
10569
+ # @!attribute [rw] platform_version
10570
+ # For the Fargate launch type, the platform version the service
10571
+ # revision uses.
10572
+ # @return [String]
10573
+ #
10574
+ # @!attribute [rw] platform_family
10575
+ # The platform family the service revision uses.
10576
+ # @return [String]
10577
+ #
10578
+ # @!attribute [rw] load_balancers
10579
+ # The load balancers the service revision uses.
10580
+ # @return [Array<Types::LoadBalancer>]
10581
+ #
10582
+ # @!attribute [rw] service_registries
10583
+ # The service registries (for Service Discovery) the service revision
10584
+ # uses.
10585
+ # @return [Array<Types::ServiceRegistry>]
10586
+ #
10587
+ # @!attribute [rw] network_configuration
10588
+ # The network configuration for a task or service.
10589
+ # @return [Types::NetworkConfiguration]
10590
+ #
10591
+ # @!attribute [rw] container_images
10592
+ # The container images the service revision uses.
10593
+ # @return [Array<Types::ContainerImage>]
10594
+ #
10595
+ # @!attribute [rw] guard_duty_enabled
10596
+ # Indicates whether Runtime Monitoring is turned on.
10597
+ # @return [Boolean]
10598
+ #
10599
+ # @!attribute [rw] service_connect_configuration
10600
+ # The Service Connect configuration of your Amazon ECS service. The
10601
+ # configuration for this service to discover and connect to services,
10602
+ # and be discovered by, and connected from, other services within a
10603
+ # namespace.
10604
+ #
10605
+ # Tasks that run in a namespace can use short names to connect to
10606
+ # services in the namespace. Tasks can connect to services across all
10607
+ # of the clusters in the namespace. Tasks connect through a managed
10608
+ # proxy container that collects logs and metrics for increased
10609
+ # visibility. Only the tasks that Amazon ECS services create are
10610
+ # supported with Service Connect. For more information, see [Service
10611
+ # Connect][1] in the *Amazon Elastic Container Service Developer
10612
+ # Guide*.
10613
+ #
10614
+ #
10615
+ #
10616
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html
10617
+ # @return [Types::ServiceConnectConfiguration]
10618
+ #
10619
+ # @!attribute [rw] volume_configurations
10620
+ # The volumes that are configured at deployment that the service
10621
+ # revision uses.
10622
+ # @return [Array<Types::ServiceVolumeConfiguration>]
10623
+ #
10624
+ # @!attribute [rw] fargate_ephemeral_storage
10625
+ # The amount of ephemeral storage to allocate for the deployment.
10626
+ # @return [Types::DeploymentEphemeralStorage]
10627
+ #
10628
+ # @!attribute [rw] created_at
10629
+ # The time that the service revision was created. The format is
10630
+ # yyyy-mm-dd HH:mm:ss.SSSSS.
10631
+ # @return [Time]
10632
+ #
10633
+ # @!attribute [rw] vpc_lattice_configurations
10634
+ # The VPC Lattice configuration for the service revision.
10635
+ # @return [Array<Types::VpcLatticeConfiguration>]
10636
+ #
10637
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceRevision AWS API Documentation
10638
+ #
10639
+ class ServiceRevision < Struct.new(
10640
+ :service_revision_arn,
10641
+ :service_arn,
10642
+ :cluster_arn,
10643
+ :task_definition,
10644
+ :capacity_provider_strategy,
10645
+ :launch_type,
10646
+ :platform_version,
10647
+ :platform_family,
10648
+ :load_balancers,
10649
+ :service_registries,
10650
+ :network_configuration,
10651
+ :container_images,
10652
+ :guard_duty_enabled,
10653
+ :service_connect_configuration,
10654
+ :volume_configurations,
10655
+ :fargate_ephemeral_storage,
10656
+ :created_at,
10657
+ :vpc_lattice_configurations)
10658
+ SENSITIVE = []
10659
+ include Aws::Structure
10660
+ end
10661
+
10662
+ # The information about the number of requested, pending, and running
10663
+ # tasks for a service revision.
10664
+ #
10665
+ # @!attribute [rw] arn
10666
+ # The ARN of the service revision.
10667
+ # @return [String]
10668
+ #
10669
+ # @!attribute [rw] requested_task_count
10670
+ # The number of requested tasks for the service revision.
10671
+ # @return [Integer]
10672
+ #
10673
+ # @!attribute [rw] running_task_count
10674
+ # The number of running tasks for the service revision.
10675
+ # @return [Integer]
10676
+ #
10677
+ # @!attribute [rw] pending_task_count
10678
+ # The number of pending tasks for the service revision.
10679
+ # @return [Integer]
10680
+ #
10681
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ServiceRevisionSummary AWS API Documentation
10682
+ #
10683
+ class ServiceRevisionSummary < Struct.new(
10684
+ :arn,
10685
+ :requested_task_count,
10686
+ :running_task_count,
10687
+ :pending_task_count)
10688
+ SENSITIVE = []
10689
+ include Aws::Structure
10690
+ end
10691
+
9907
10692
  # The configuration for a volume specified in the task definition as a
9908
10693
  # volume that is configured at launch time. Currently, the only
9909
10694
  # supported volume type is an Amazon EBS volume.
@@ -12446,6 +13231,19 @@ module Aws::ECS
12446
13231
  # tasks.
12447
13232
  # @return [Types::DeploymentConfiguration]
12448
13233
  #
13234
+ # @!attribute [rw] availability_zone_rebalancing
13235
+ # Indicates whether to use Availability Zone rebalancing for the
13236
+ # service.
13237
+ #
13238
+ # For more information, see [Balancing an Amazon ECS service across
13239
+ # Availability Zones][1] in the *Amazon Elastic Container Service
13240
+ # Developer Guide*.
13241
+ #
13242
+ #
13243
+ #
13244
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html
13245
+ # @return [String]
13246
+ #
12449
13247
  # @!attribute [rw] network_configuration
12450
13248
  # An object representing the network configuration for the service.
12451
13249
  # @return [Types::NetworkConfiguration]
@@ -12497,16 +13295,18 @@ module Aws::ECS
12497
13295
  #
12498
13296
  # @!attribute [rw] health_check_grace_period_seconds
12499
13297
  # The period of time, in seconds, that the Amazon ECS service
12500
- # scheduler ignores unhealthy Elastic Load Balancing target health
12501
- # checks after a task has first started. This is only valid if your
12502
- # service is configured to use a load balancer. If your service's
12503
- # tasks take a while to start and respond to Elastic Load Balancing
12504
- # health checks, you can specify a health check grace period of up to
12505
- # 2,147,483,647 seconds. During that time, the Amazon ECS service
12506
- # scheduler ignores the Elastic Load Balancing health check status.
12507
- # This grace period can prevent the ECS service scheduler from marking
12508
- # tasks as unhealthy and stopping them before they have time to come
12509
- # up.
13298
+ # scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and
13299
+ # container health checks after a task has first started. If you
13300
+ # don't specify a health check grace period value, the default value
13301
+ # of `0` is used. If you don't use any of the health checks, then
13302
+ # `healthCheckGracePeriodSeconds` is unused.
13303
+ #
13304
+ # If your service's tasks take a while to start and respond to health
13305
+ # checks, you can specify a health check grace period of up to
13306
+ # 2,147,483,647 seconds (about 69 years). During that time, the Amazon
13307
+ # ECS service scheduler ignores health check status. This grace period
13308
+ # can prevent the service scheduler from marking tasks as unhealthy
13309
+ # and stopping them before they have time to come up.
12510
13310
  # @return [Integer]
12511
13311
  #
12512
13312
  # @!attribute [rw] enable_execute_command
@@ -12631,6 +13431,11 @@ module Aws::ECS
12631
13431
  # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ServiceManagedEBSVolumeConfiguration.html
12632
13432
  # @return [Array<Types::ServiceVolumeConfiguration>]
12633
13433
  #
13434
+ # @!attribute [rw] vpc_lattice_configurations
13435
+ # An object representing the VPC Lattice configuration for the service
13436
+ # being updated.
13437
+ # @return [Array<Types::VpcLatticeConfiguration>]
13438
+ #
12634
13439
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateServiceRequest AWS API Documentation
12635
13440
  #
12636
13441
  class UpdateServiceRequest < Struct.new(
@@ -12640,6 +13445,7 @@ module Aws::ECS
12640
13445
  :task_definition,
12641
13446
  :capacity_provider_strategy,
12642
13447
  :deployment_configuration,
13448
+ :availability_zone_rebalancing,
12643
13449
  :network_configuration,
12644
13450
  :placement_constraints,
12645
13451
  :placement_strategy,
@@ -12652,7 +13458,8 @@ module Aws::ECS
12652
13458
  :propagate_tags,
12653
13459
  :service_registries,
12654
13460
  :service_connect_configuration,
12655
- :volume_configurations)
13461
+ :volume_configurations,
13462
+ :vpc_lattice_configurations)
12656
13463
  SENSITIVE = []
12657
13464
  include Aws::Structure
12658
13465
  end
@@ -12922,6 +13729,38 @@ module Aws::ECS
12922
13729
  include Aws::Structure
12923
13730
  end
12924
13731
 
13732
+ # The VPC Lattice configuration for your service that holds the
13733
+ # information for the target group(s) Amazon ECS tasks will be
13734
+ # registered to.
13735
+ #
13736
+ # @!attribute [rw] role_arn
13737
+ # The ARN of the IAM role to associate with this VPC Lattice
13738
+ # configuration. This is the Amazon ECS
 infrastructure IAM role that
13739
+ # is used to manage your VPC Lattice infrastructure.
13740
+ # @return [String]
13741
+ #
13742
+ # @!attribute [rw] target_group_arn
13743
+ # The full Amazon Resource Name (ARN) of the target group or groups
13744
+ # associated with the VPC Lattice configuration that the Amazon ECS
13745
+ # tasks will be registered to.
13746
+ # @return [String]
13747
+ #
13748
+ # @!attribute [rw] port_name
13749
+ # The name of the port mapping to register in the VPC Lattice target
13750
+ # group. This is the name of the `portMapping` you defined in your
13751
+ # task definition.
13752
+ # @return [String]
13753
+ #
13754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/VpcLatticeConfiguration AWS API Documentation
13755
+ #
13756
+ class VpcLatticeConfiguration < Struct.new(
13757
+ :role_arn,
13758
+ :target_group_arn,
13759
+ :port_name)
13760
+ SENSITIVE = []
13761
+ include Aws::Structure
13762
+ end
13763
+
12925
13764
  end
12926
13765
  end
12927
13766