aws-sdk-autoscaling 1.76.0 → 1.79.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.
@@ -391,9 +391,7 @@ module Aws::AutoScaling
391
391
  # @return [String]
392
392
  #
393
393
  # @!attribute [rw] health_check_grace_period
394
- # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
395
- # before checking the health status of an EC2 instance that has come
396
- # into service and marking it unhealthy due to a failed health check.
394
+ # The duration of the health check grace period, in seconds.
397
395
  # @return [Integer]
398
396
  #
399
397
  # @!attribute [rw] instances
@@ -471,20 +469,13 @@ module Aws::AutoScaling
471
469
  # @!attribute [rw] desired_capacity_type
472
470
  # The unit of measurement for the value specified for desired
473
471
  # capacity. Amazon EC2 Auto Scaling supports `DesiredCapacityType` for
474
- # attribute-based instance type selection only. For more information,
475
- # see [Creating an Auto Scaling group using attribute-based instance
476
- # type selection][1] in the *Amazon EC2 Auto Scaling User Guide*.
477
- #
478
- # By default, Amazon EC2 Auto Scaling specifies `units`, which
479
- # translates into number of instances.
480
- #
481
- # Valid values: `units` \| `vcpu` \| `memory-mib`
482
- #
483
- #
484
- #
485
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
472
+ # attribute-based instance type selection only.
486
473
  # @return [String]
487
474
  #
475
+ # @!attribute [rw] default_instance_warmup
476
+ # The duration of the default instance warmup, in seconds.
477
+ # @return [Integer]
478
+ #
488
479
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingGroup AWS API Documentation
489
480
  #
490
481
  class AutoScalingGroup < Struct.new(
@@ -519,7 +510,8 @@ module Aws::AutoScaling
519
510
  :warm_pool_configuration,
520
511
  :warm_pool_size,
521
512
  :context,
522
- :desired_capacity_type)
513
+ :desired_capacity_type,
514
+ :default_instance_warmup)
523
515
  SENSITIVE = []
524
516
  include Aws::Structure
525
517
  end
@@ -1108,6 +1100,7 @@ module Aws::AutoScaling
1108
1100
  # max_instance_lifetime: 1,
1109
1101
  # context: "Context",
1110
1102
  # desired_capacity_type: "XmlStringMaxLen255",
1103
+ # default_instance_warmup: 1,
1111
1104
  # }
1112
1105
  #
1113
1106
  # @!attribute [rw] auto_scaling_group_name
@@ -1198,13 +1191,15 @@ module Aws::AutoScaling
1198
1191
  # @return [Integer]
1199
1192
  #
1200
1193
  # @!attribute [rw] default_cooldown
1201
- # The amount of time, in seconds, after a scaling activity completes
1202
- # before another scaling activity can start. The default value is
1203
- # `300`. This setting applies when using simple scaling policies, but
1204
- # not when using other scaling policies or scheduled scaling. For more
1194
+ # *Only needed if you use simple scaling policies.*
1195
+ #
1196
+ # The amount of time, in seconds, between one scaling activity ending
1197
+ # and another one starting due to simple scaling policies. For more
1205
1198
  # information, see [Scaling cooldowns for Amazon EC2 Auto Scaling][1]
1206
1199
  # in the *Amazon EC2 Auto Scaling User Guide*.
1207
1200
  #
1201
+ # Default: `300` seconds
1202
+ #
1208
1203
  #
1209
1204
  #
1210
1205
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html
@@ -1253,13 +1248,17 @@ module Aws::AutoScaling
1253
1248
  # @return [String]
1254
1249
  #
1255
1250
  # @!attribute [rw] health_check_grace_period
1251
+ # **
1252
+ #
1256
1253
  # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
1257
1254
  # before checking the health status of an EC2 instance that has come
1258
- # into service and marking it unhealthy due to a failed health check.
1259
- # The default value is `0`. For more information, see [Health check
1260
- # grace period][1] in the *Amazon EC2 Auto Scaling User Guide*.
1255
+ # into service and marking it unhealthy due to a failed Elastic Load
1256
+ # Balancing or custom health check. This is useful if your instances
1257
+ # do not immediately pass these health checks after they enter the
1258
+ # `InService` state. For more information, see [Health check grace
1259
+ # period][1] in the *Amazon EC2 Auto Scaling User Guide*.
1261
1260
  #
1262
- # Conditional: Required if you are adding an `ELB` health check.
1261
+ # Default: `0` seconds
1263
1262
  #
1264
1263
  #
1265
1264
  #
@@ -1268,11 +1267,14 @@ module Aws::AutoScaling
1268
1267
  #
1269
1268
  # @!attribute [rw] placement_group
1270
1269
  # The name of an existing placement group into which to launch your
1271
- # instances, if any. A placement group is a logical grouping of
1272
- # instances within a single Availability Zone. You cannot specify
1273
- # multiple Availability Zones and a placement group. For more
1274
- # information, see [Placement Groups][1] in the *Amazon EC2 User Guide
1275
- # for Linux Instances*.
1270
+ # instances. For more information, see [Placement groups][1] in the
1271
+ # *Amazon EC2 User Guide for Linux Instances*.
1272
+ #
1273
+ # <note markdown="1"> A *cluster* placement group is a logical grouping of instances
1274
+ # within a single Availability Zone. You cannot specify multiple
1275
+ # Availability Zones and a cluster placement group.
1276
+ #
1277
+ # </note>
1276
1278
  #
1277
1279
  #
1278
1280
  #
@@ -1399,6 +1401,35 @@ module Aws::AutoScaling
1399
1401
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
1400
1402
  # @return [String]
1401
1403
  #
1404
+ # @!attribute [rw] default_instance_warmup
1405
+ # The amount of time, in seconds, until a newly launched instance can
1406
+ # contribute to the Amazon CloudWatch metrics. This delay lets an
1407
+ # instance finish initializing before Amazon EC2 Auto Scaling
1408
+ # aggregates instance metrics, resulting in more reliable usage data.
1409
+ # Set this value equal to the amount of time that it takes for
1410
+ # resource consumption to become stable after an instance reaches the
1411
+ # `InService` state. For more information, see [Set the default
1412
+ # instance warmup for an Auto Scaling group][1] in the *Amazon EC2
1413
+ # Auto Scaling User Guide*.
1414
+ #
1415
+ # To manage your warm-up settings at the group level, we recommend
1416
+ # that you set the default instance warmup, *even if its value is set
1417
+ # to 0 seconds*. This also optimizes the performance of scaling
1418
+ # policies that scale continuously, such as target tracking and step
1419
+ # scaling policies.
1420
+ #
1421
+ # If you need to remove a value that you previously set, include the
1422
+ # property but specify `-1` for the value. However, we strongly
1423
+ # recommend keeping the default instance warmup enabled by specifying
1424
+ # a minimum value of `0`.
1425
+ #
1426
+ # Default: None
1427
+ #
1428
+ #
1429
+ #
1430
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html
1431
+ # @return [Integer]
1432
+ #
1402
1433
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroupType AWS API Documentation
1403
1434
  #
1404
1435
  class CreateAutoScalingGroupType < Struct.new(
@@ -1426,7 +1457,8 @@ module Aws::AutoScaling
1426
1457
  :service_linked_role_arn,
1427
1458
  :max_instance_lifetime,
1428
1459
  :context,
1429
- :desired_capacity_type)
1460
+ :desired_capacity_type,
1461
+ :default_instance_warmup)
1430
1462
  SENSITIVE = []
1431
1463
  include Aws::Structure
1432
1464
  end
@@ -1522,26 +1554,25 @@ module Aws::AutoScaling
1522
1554
  # @return [Array<String>]
1523
1555
  #
1524
1556
  # @!attribute [rw] classic_link_vpc_id
1557
+ # *EC2-Classic retires on August 15, 2022. This parameter is not
1558
+ # supported after that date.*
1559
+ #
1525
1560
  # The ID of a ClassicLink-enabled VPC to link your EC2-Classic
1526
1561
  # instances to. For more information, see [ClassicLink][1] in the
1527
- # *Amazon EC2 User Guide for Linux Instances* and [Linking EC2-Classic
1528
- # instances to a VPC][2] in the *Amazon EC2 Auto Scaling User Guide*.
1529
- #
1530
- # This parameter can only be used if you are launching EC2-Classic
1531
- # instances.
1562
+ # *Amazon EC2 User Guide for Linux Instances*.
1532
1563
  #
1533
1564
  #
1534
1565
  #
1535
1566
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html
1536
- # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-ClassicLink
1537
1567
  # @return [String]
1538
1568
  #
1539
1569
  # @!attribute [rw] classic_link_vpc_security_groups
1570
+ # *EC2-Classic retires on August 15, 2022. This parameter is not
1571
+ # supported after that date.*
1572
+ #
1540
1573
  # The IDs of one or more security groups for the specified
1541
1574
  # ClassicLink-enabled VPC. For more information, see [ClassicLink][1]
1542
- # in the *Amazon EC2 User Guide for Linux Instances* and [Linking
1543
- # EC2-Classic instances to a VPC][2] in the *Amazon EC2 Auto Scaling
1544
- # User Guide*.
1575
+ # in the *Amazon EC2 User Guide for Linux Instances*.
1545
1576
  #
1546
1577
  # If you specify the `ClassicLinkVPCId` parameter, you must specify
1547
1578
  # this parameter.
@@ -1549,7 +1580,6 @@ module Aws::AutoScaling
1549
1580
  #
1550
1581
  #
1551
1582
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html
1552
- # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-ClassicLink
1553
1583
  # @return [Array<String>]
1554
1584
  #
1555
1585
  # @!attribute [rw] user_data
@@ -4098,6 +4128,10 @@ module Aws::AutoScaling
4098
4128
  # To turn off price protection, specify a high value, such as
4099
4129
  # `999999`.
4100
4130
  #
4131
+ # If you set `DesiredCapacityType` to `vcpu` or `memory-mib`, the
4132
+ # price protection threshold is applied based on the per vCPU or per
4133
+ # memory price instead of the per instance price.
4134
+ #
4101
4135
  # Default: `100`
4102
4136
  # @return [Integer]
4103
4137
  #
@@ -4112,6 +4146,10 @@ module Aws::AutoScaling
4112
4146
  # To turn off price protection, specify a high value, such as
4113
4147
  # `999999`.
4114
4148
  #
4149
+ # If you set `DesiredCapacityType` to `vcpu` or `memory-mib`, the
4150
+ # price protection threshold is applied based on the per vCPU or per
4151
+ # memory price instead of the per instance price.
4152
+ #
4115
4153
  # Default: `20`
4116
4154
  # @return [Integer]
4117
4155
  #
@@ -4288,6 +4326,35 @@ module Aws::AutoScaling
4288
4326
  include Aws::Structure
4289
4327
  end
4290
4328
 
4329
+ # Describes an instance reuse policy for a warm pool.
4330
+ #
4331
+ # For more information, see [Warm pools for Amazon EC2 Auto Scaling][1]
4332
+ # in the *Amazon EC2 Auto Scaling User Guide*.
4333
+ #
4334
+ #
4335
+ #
4336
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-warm-pools.html
4337
+ #
4338
+ # @note When making an API call, you may pass InstanceReusePolicy
4339
+ # data as a hash:
4340
+ #
4341
+ # {
4342
+ # reuse_on_scale_in: false,
4343
+ # }
4344
+ #
4345
+ # @!attribute [rw] reuse_on_scale_in
4346
+ # Specifies whether instances in the Auto Scaling group can be
4347
+ # returned to the warm pool on scale in.
4348
+ # @return [Boolean]
4349
+ #
4350
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/InstanceReusePolicy AWS API Documentation
4351
+ #
4352
+ class InstanceReusePolicy < Struct.new(
4353
+ :reuse_on_scale_in)
4354
+ SENSITIVE = []
4355
+ include Aws::Structure
4356
+ end
4357
+
4291
4358
  # Describes an instances distribution for an Auto Scaling group.
4292
4359
  #
4293
4360
  # @note When making an API call, you may pass InstancesDistribution
@@ -4451,29 +4518,19 @@ module Aws::AutoScaling
4451
4518
  # @return [Array<String>]
4452
4519
  #
4453
4520
  # @!attribute [rw] classic_link_vpc_id
4454
- # The ID of a ClassicLink-enabled VPC to link your EC2-Classic
4455
- # instances to. For more information, see [ClassicLink][1] in the
4456
- # *Amazon EC2 User Guide for Linux Instances* and [Linking EC2-Classic
4457
- # instances to a VPC][2] in the *Amazon EC2 Auto Scaling User Guide*.
4458
- #
4459
- #
4521
+ # *EC2-Classic retires on August 15, 2022. This parameter is not
4522
+ # supported after that date.*
4460
4523
  #
4461
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html
4462
- # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-ClassicLink
4524
+ # The ID of a ClassicLink-enabled VPC to link your EC2-Classic
4525
+ # instances to.
4463
4526
  # @return [String]
4464
4527
  #
4465
4528
  # @!attribute [rw] classic_link_vpc_security_groups
4529
+ # *EC2-Classic retires on August 15, 2022. This parameter is not
4530
+ # supported after that date.*
4531
+ #
4466
4532
  # The IDs of one or more security groups for the VPC specified in
4467
4533
  # `ClassicLinkVPCId`.
4468
- #
4469
- # For more information, see [ClassicLink][1] in the *Amazon EC2 User
4470
- # Guide for Linux Instances* and [Linking EC2-Classic instances to a
4471
- # VPC][2] in the *Amazon EC2 Auto Scaling User Guide*.
4472
- #
4473
- #
4474
- #
4475
- # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-classiclink.html
4476
- # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-in-vpc.html#as-ClassicLink
4477
4534
  # @return [Array<String>]
4478
4535
  #
4479
4536
  # @!attribute [rw] user_data
@@ -4893,23 +4950,23 @@ module Aws::AutoScaling
4893
4950
  # remaining to fulfill capacity, and Amazon EC2 Auto Scaling can only
4894
4951
  # launch an instance with a `WeightedCapacity` of five units, the
4895
4952
  # instance is launched, and the desired capacity is exceeded by three
4896
- # units. For more information, see [Instance weighting for Amazon EC2
4897
- # Auto Scaling][1] in the *Amazon EC2 Auto Scaling User Guide*. Value
4898
- # must be in the range of 1–999.
4953
+ # units. For more information, see [Configuring instance weighting for
4954
+ # Amazon EC2 Auto Scaling][1] in the *Amazon EC2 Auto Scaling User
4955
+ # Guide*. Value must be in the range of 1–999.
4899
4956
  #
4900
4957
  #
4901
4958
  #
4902
- # [1]: https://docs.aws.amazon.com/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html
4959
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html
4903
4960
  # @return [String]
4904
4961
  #
4905
4962
  # @!attribute [rw] launch_template_specification
4906
- # Provides the launch template to be used when launching the instance
4907
- # type specified in `InstanceType`. For example, some instance types
4908
- # might require a launch template with a different AMI. If not
4909
- # provided, Amazon EC2 Auto Scaling uses the launch template that's
4910
- # defined for your mixed instances policy. For more information, see
4911
- # [Specifying a different launch template for an instance type][1] in
4912
- # the *Amazon EC2 Auto Scaling User Guide*.
4963
+ # Provides a launch template for the specified instance type or
4964
+ # instance requirements. For example, some instance types might
4965
+ # require a launch template with a different AMI. If not provided,
4966
+ # Amazon EC2 Auto Scaling uses the launch template that's defined for
4967
+ # your mixed instances policy. For more information, see [Specifying a
4968
+ # different launch template for an instance type][1] in the *Amazon
4969
+ # EC2 Auto Scaling User Guide*.
4913
4970
  #
4914
4971
  #
4915
4972
  #
@@ -5010,9 +5067,10 @@ module Aws::AutoScaling
5010
5067
  include Aws::Structure
5011
5068
  end
5012
5069
 
5013
- # Describes a lifecycle hook, which enables an Auto Scaling group to be
5014
- # aware of events in the Auto Scaling instance lifecycle, and then
5015
- # perform a custom action when the corresponding lifecycle event occurs.
5070
+ # Describes a lifecycle hook. A lifecycle hook lets you create solutions
5071
+ # that are aware of events in the Auto Scaling instance lifecycle, and
5072
+ # then perform a custom action on instances when the corresponding
5073
+ # lifecycle event occurs.
5016
5074
  #
5017
5075
  # @!attribute [rw] lifecycle_hook_name
5018
5076
  # The name of the lifecycle hook.
@@ -5040,7 +5098,8 @@ module Aws::AutoScaling
5040
5098
  #
5041
5099
  # @!attribute [rw] role_arn
5042
5100
  # The ARN of the IAM role that allows the Auto Scaling group to
5043
- # publish to the specified notification target.
5101
+ # publish to the specified notification target (an Amazon SNS topic or
5102
+ # an Amazon SQS queue).
5044
5103
  # @return [String]
5045
5104
  #
5046
5105
  # @!attribute [rw] notification_metadata
@@ -5056,10 +5115,9 @@ module Aws::AutoScaling
5056
5115
  # @return [Integer]
5057
5116
  #
5058
5117
  # @!attribute [rw] global_timeout
5059
- # The maximum time, in seconds, that an instance can remain in a
5060
- # `Pending:Wait` or `Terminating:Wait` state. The maximum is 172800
5061
- # seconds (48 hours) or 100 times `HeartbeatTimeout`, whichever is
5062
- # smaller.
5118
+ # The maximum time, in seconds, that an instance can remain in a wait
5119
+ # state. The maximum is 172800 seconds (48 hours) or 100 times
5120
+ # `HeartbeatTimeout`, whichever is smaller.
5063
5121
  # @return [Integer]
5064
5122
  #
5065
5123
  # @!attribute [rw] default_result
@@ -5151,8 +5209,11 @@ module Aws::AutoScaling
5151
5209
  #
5152
5210
  # @!attribute [rw] role_arn
5153
5211
  # The ARN of the IAM role that allows the Auto Scaling group to
5154
- # publish to the specified notification target, for example, an Amazon
5155
- # SNS topic or an Amazon SQS queue.
5212
+ # publish to the specified notification target.
5213
+ #
5214
+ # Valid only if the notification target is an Amazon SNS topic or an
5215
+ # Amazon SQS queue. Required for new lifecycle hooks, but optional
5216
+ # when updating existing hooks.
5156
5217
  # @return [String]
5157
5218
  #
5158
5219
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/LifecycleHookSpecification AWS API Documentation
@@ -5900,8 +5961,8 @@ module Aws::AutoScaling
5900
5961
  # * `ASGAverageNetworkOut` - Average number of bytes sent out on all
5901
5962
  # network interfaces by the Auto Scaling group.
5902
5963
  #
5903
- # * `ALBRequestCountPerTarget` - Number of requests completed per
5904
- # target in an Application Load Balancer target group.
5964
+ # * `ALBRequestCountPerTarget` - Average Application Load Balancer
5965
+ # request count per target for your Auto Scaling group.
5905
5966
  # @return [String]
5906
5967
  #
5907
5968
  # @!attribute [rw] resource_label
@@ -6714,11 +6775,11 @@ module Aws::AutoScaling
6714
6775
  #
6715
6776
  # @!attribute [rw] role_arn
6716
6777
  # The ARN of the IAM role that allows the Auto Scaling group to
6717
- # publish to the specified notification target, for example, an Amazon
6718
- # SNS topic or an Amazon SQS queue.
6778
+ # publish to the specified notification target.
6719
6779
  #
6720
- # Required for new lifecycle hooks, but optional when updating
6721
- # existing hooks.
6780
+ # Valid only if the notification target is an Amazon SNS topic or an
6781
+ # Amazon SQS queue. Required for new lifecycle hooks, but optional
6782
+ # when updating existing hooks.
6722
6783
  # @return [String]
6723
6784
  #
6724
6785
  # @!attribute [rw] notification_target_arn
@@ -7023,14 +7084,16 @@ module Aws::AutoScaling
7023
7084
  # @return [Integer]
7024
7085
  #
7025
7086
  # @!attribute [rw] cooldown
7026
- # The duration of the policy's cooldown period, in seconds. When a
7027
- # cooldown period is specified here, it overrides the default cooldown
7028
- # period defined for the Auto Scaling group.
7087
+ # A cooldown period, in seconds, that applies to a specific simple
7088
+ # scaling policy. When a cooldown period is specified here, it
7089
+ # overrides the default cooldown.
7029
7090
  #
7030
7091
  # Valid only if the policy type is `SimpleScaling`. For more
7031
7092
  # information, see [Scaling cooldowns for Amazon EC2 Auto Scaling][1]
7032
7093
  # in the *Amazon EC2 Auto Scaling User Guide*.
7033
7094
  #
7095
+ # Default: None
7096
+ #
7034
7097
  #
7035
7098
  #
7036
7099
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/Cooldown.html
@@ -7053,13 +7116,24 @@ module Aws::AutoScaling
7053
7116
  # @return [Array<Types::StepAdjustment>]
7054
7117
  #
7055
7118
  # @!attribute [rw] estimated_instance_warmup
7119
+ # *Not needed if the default instance warmup is defined for the
7120
+ # group.*
7121
+ #
7056
7122
  # The estimated time, in seconds, until a newly launched instance can
7057
- # contribute to the CloudWatch metrics. If not provided, the default
7058
- # is to use the value from the default cooldown period for the Auto
7059
- # Scaling group.
7123
+ # contribute to the CloudWatch metrics. This warm-up period applies to
7124
+ # instances launched due to a specific target tracking or step scaling
7125
+ # policy. When a warm-up period is specified here, it overrides the
7126
+ # default instance warmup.
7060
7127
  #
7061
7128
  # Valid only if the policy type is `TargetTrackingScaling` or
7062
7129
  # `StepScaling`.
7130
+ #
7131
+ # <note markdown="1"> The default is to use the value for the default instance warmup
7132
+ # defined for the group. If default instance warmup is null, then
7133
+ # `EstimatedInstanceWarmup` falls back to the value of default
7134
+ # cooldown.
7135
+ #
7136
+ # </note>
7063
7137
  # @return [Integer]
7064
7138
  #
7065
7139
  # @!attribute [rw] target_tracking_configuration
@@ -7258,7 +7332,10 @@ module Aws::AutoScaling
7258
7332
  # auto_scaling_group_name: "XmlStringMaxLen255", # required
7259
7333
  # max_group_prepared_capacity: 1,
7260
7334
  # min_size: 1,
7261
- # pool_state: "Stopped", # accepts Stopped, Running
7335
+ # pool_state: "Stopped", # accepts Stopped, Running, Hibernated
7336
+ # instance_reuse_policy: {
7337
+ # reuse_on_scale_in: false,
7338
+ # },
7262
7339
  # }
7263
7340
  #
7264
7341
  # @!attribute [rw] auto_scaling_group_name
@@ -7301,13 +7378,20 @@ module Aws::AutoScaling
7301
7378
  # are complete. Default is `Stopped`.
7302
7379
  # @return [String]
7303
7380
  #
7381
+ # @!attribute [rw] instance_reuse_policy
7382
+ # Indicates whether instances in the Auto Scaling group can be
7383
+ # returned to the warm pool on scale in. The default is to terminate
7384
+ # instances in the Auto Scaling group when the group scales in.
7385
+ # @return [Types::InstanceReusePolicy]
7386
+ #
7304
7387
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PutWarmPoolType AWS API Documentation
7305
7388
  #
7306
7389
  class PutWarmPoolType < Struct.new(
7307
7390
  :auto_scaling_group_name,
7308
7391
  :max_group_prepared_capacity,
7309
7392
  :min_size,
7310
- :pool_state)
7393
+ :pool_state,
7394
+ :instance_reuse_policy)
7311
7395
  SENSITIVE = []
7312
7396
  include Aws::Structure
7313
7397
  end
@@ -7370,11 +7454,11 @@ module Aws::AutoScaling
7370
7454
  # }
7371
7455
  #
7372
7456
  # @!attribute [rw] min_healthy_percentage
7373
- # The amount of capacity in the Auto Scaling group that must remain
7374
- # healthy during an instance refresh to allow the operation to
7375
- # continue. The value is expressed as a percentage of the desired
7376
- # capacity of the Auto Scaling group (rounded up to the nearest
7377
- # integer). The default is `90`.
7457
+ # The amount of capacity in the Auto Scaling group that must pass your
7458
+ # group's health checks to allow the operation to continue. The value
7459
+ # is expressed as a percentage of the desired capacity of the Auto
7460
+ # Scaling group (rounded up to the nearest integer). The default is
7461
+ # `90`.
7378
7462
  #
7379
7463
  # Setting the minimum healthy percentage to 100 percent limits the
7380
7464
  # rate of replacement to one instance at a time. In contrast, setting
@@ -7383,10 +7467,17 @@ module Aws::AutoScaling
7383
7467
  # @return [Integer]
7384
7468
  #
7385
7469
  # @!attribute [rw] instance_warmup
7386
- # The number of seconds until a newly launched instance is configured
7387
- # and ready to use. During this time, Amazon EC2 Auto Scaling does not
7388
- # immediately move on to the next replacement. The default is to use
7389
- # the value for the health check grace period defined for the group.
7470
+ # *Not needed if the default instance warmup is defined for the
7471
+ # group.*
7472
+ #
7473
+ # The duration of the instance warmup, in seconds.
7474
+ #
7475
+ # <note markdown="1"> The default is to use the value for the default instance warmup
7476
+ # defined for the group. If default instance warmup is null, then
7477
+ # `InstanceWarmup` falls back to the value of the health check grace
7478
+ # period.
7479
+ #
7480
+ # </note>
7390
7481
  # @return [Integer]
7391
7482
  #
7392
7483
  # @!attribute [rw] checkpoint_percentages
@@ -8367,6 +8458,15 @@ module Aws::AutoScaling
8367
8458
  #
8368
8459
  # @!attribute [rw] target_value
8369
8460
  # The target value for the metric.
8461
+ #
8462
+ # <note markdown="1"> Some metrics are based on a count instead of a percentage, such as
8463
+ # the request count for an Application Load Balancer or the number of
8464
+ # messages in an SQS queue. If the scaling policy specifies one of
8465
+ # these metrics, specify the target utilization as the optimal average
8466
+ # request or message count per instance during any one-minute
8467
+ # interval.
8468
+ #
8469
+ # </note>
8370
8470
  # @return [Float]
8371
8471
  #
8372
8472
  # @!attribute [rw] disable_scale_in
@@ -8544,6 +8644,7 @@ module Aws::AutoScaling
8544
8644
  # capacity_rebalance: false,
8545
8645
  # context: "Context",
8546
8646
  # desired_capacity_type: "XmlStringMaxLen255",
8647
+ # default_instance_warmup: 1,
8547
8648
  # }
8548
8649
  #
8549
8650
  # @!attribute [rw] auto_scaling_group_name
@@ -8599,10 +8700,10 @@ module Aws::AutoScaling
8599
8700
  # @return [Integer]
8600
8701
  #
8601
8702
  # @!attribute [rw] default_cooldown
8602
- # The amount of time, in seconds, after a scaling activity completes
8603
- # before another scaling activity can start. The default value is
8604
- # `300`. This setting applies when using simple scaling policies, but
8605
- # not when using other scaling policies or scheduled scaling. For more
8703
+ # *Only needed if you use simple scaling policies.*
8704
+ #
8705
+ # The amount of time, in seconds, between one scaling activity ending
8706
+ # and another one starting due to simple scaling policies. For more
8606
8707
  # information, see [Scaling cooldowns for Amazon EC2 Auto Scaling][1]
8607
8708
  # in the *Amazon EC2 Auto Scaling User Guide*.
8608
8709
  #
@@ -8625,11 +8726,11 @@ module Aws::AutoScaling
8625
8726
  # @!attribute [rw] health_check_grace_period
8626
8727
  # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
8627
8728
  # before checking the health status of an EC2 instance that has come
8628
- # into service and marking it unhealthy due to a failed health check.
8629
- # The default value is `0`. For more information, see [Health check
8630
- # grace period][1] in the *Amazon EC2 Auto Scaling User Guide*.
8631
- #
8632
- # Conditional: Required if you are adding an `ELB` health check.
8729
+ # into service and marking it unhealthy due to a failed Elastic Load
8730
+ # Balancing or custom health check. This is useful if your instances
8731
+ # do not immediately pass these health checks after they enter the
8732
+ # `InService` state. For more information, see [Health check grace
8733
+ # period][1] in the *Amazon EC2 Auto Scaling User Guide*.
8633
8734
  #
8634
8735
  #
8635
8736
  #
@@ -8638,11 +8739,14 @@ module Aws::AutoScaling
8638
8739
  #
8639
8740
  # @!attribute [rw] placement_group
8640
8741
  # The name of an existing placement group into which to launch your
8641
- # instances, if any. A placement group is a logical grouping of
8642
- # instances within a single Availability Zone. You cannot specify
8643
- # multiple Availability Zones and a placement group. For more
8644
- # information, see [Placement Groups][1] in the *Amazon EC2 User Guide
8645
- # for Linux Instances*.
8742
+ # instances. For more information, see [Placement groups][1] in the
8743
+ # *Amazon EC2 User Guide for Linux Instances*.
8744
+ #
8745
+ # <note markdown="1"> A *cluster* placement group is a logical grouping of instances
8746
+ # within a single Availability Zone. You cannot specify multiple
8747
+ # Availability Zones and a cluster placement group.
8748
+ #
8749
+ # </note>
8646
8750
  #
8647
8751
  #
8648
8752
  #
@@ -8735,6 +8839,33 @@ module Aws::AutoScaling
8735
8839
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
8736
8840
  # @return [String]
8737
8841
  #
8842
+ # @!attribute [rw] default_instance_warmup
8843
+ # The amount of time, in seconds, until a newly launched instance can
8844
+ # contribute to the Amazon CloudWatch metrics. This delay lets an
8845
+ # instance finish initializing before Amazon EC2 Auto Scaling
8846
+ # aggregates instance metrics, resulting in more reliable usage data.
8847
+ # Set this value equal to the amount of time that it takes for
8848
+ # resource consumption to become stable after an instance reaches the
8849
+ # `InService` state. For more information, see [Set the default
8850
+ # instance warmup for an Auto Scaling group][1] in the *Amazon EC2
8851
+ # Auto Scaling User Guide*.
8852
+ #
8853
+ # To manage your warm-up settings at the group level, we recommend
8854
+ # that you set the default instance warmup, *even if its value is set
8855
+ # to 0 seconds*. This also optimizes the performance of scaling
8856
+ # policies that scale continuously, such as target tracking and step
8857
+ # scaling policies.
8858
+ #
8859
+ # If you need to remove a value that you previously set, include the
8860
+ # property but specify `-1` for the value. However, we strongly
8861
+ # recommend keeping the default instance warmup enabled by specifying
8862
+ # a minimum value of `0`.
8863
+ #
8864
+ #
8865
+ #
8866
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html
8867
+ # @return [Integer]
8868
+ #
8738
8869
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroupType AWS API Documentation
8739
8870
  #
8740
8871
  class UpdateAutoScalingGroupType < Struct.new(
@@ -8757,7 +8888,8 @@ module Aws::AutoScaling
8757
8888
  :max_instance_lifetime,
8758
8889
  :capacity_rebalance,
8759
8890
  :context,
8760
- :desired_capacity_type)
8891
+ :desired_capacity_type,
8892
+ :default_instance_warmup)
8761
8893
  SENSITIVE = []
8762
8894
  include Aws::Structure
8763
8895
  end
@@ -8810,13 +8942,18 @@ module Aws::AutoScaling
8810
8942
  # The status of a warm pool that is marked for deletion.
8811
8943
  # @return [String]
8812
8944
  #
8945
+ # @!attribute [rw] instance_reuse_policy
8946
+ # The instance reuse policy.
8947
+ # @return [Types::InstanceReusePolicy]
8948
+ #
8813
8949
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/WarmPoolConfiguration AWS API Documentation
8814
8950
  #
8815
8951
  class WarmPoolConfiguration < Struct.new(
8816
8952
  :max_group_prepared_capacity,
8817
8953
  :min_size,
8818
8954
  :pool_state,
8819
- :status)
8955
+ :status,
8956
+ :instance_reuse_policy)
8820
8957
  SENSITIVE = []
8821
8958
  include Aws::Structure
8822
8959
  end