aws-sdk-ecs 1.165.0 → 1.171.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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