aws-sdk-autoscaling 1.72.0 → 1.76.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -393,7 +393,7 @@ module Aws::AutoScaling
393
393
  # @!attribute [rw] health_check_grace_period
394
394
  # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
395
395
  # before checking the health status of an EC2 instance that has come
396
- # into service.
396
+ # into service and marking it unhealthy due to a failed health check.
397
397
  # @return [Integer]
398
398
  #
399
399
  # @!attribute [rw] instances
@@ -916,7 +916,7 @@ module Aws::AutoScaling
916
916
  # data points.
917
917
  #
918
918
  # @!attribute [rw] timestamps
919
- # The time stamps for the data points, in UTC format.
919
+ # The timestamps for the data points, in UTC format.
920
920
  # @return [Array<Time>]
921
921
  #
922
922
  # @!attribute [rw] values
@@ -1152,7 +1152,7 @@ module Aws::AutoScaling
1152
1152
  #
1153
1153
  #
1154
1154
  #
1155
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
1155
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
1156
1156
  # @return [Types::MixedInstancesPolicy]
1157
1157
  #
1158
1158
  # @!attribute [rw] instance_id
@@ -1255,10 +1255,9 @@ module Aws::AutoScaling
1255
1255
  # @!attribute [rw] health_check_grace_period
1256
1256
  # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
1257
1257
  # before checking the health status of an EC2 instance that has come
1258
- # into service. During this time, any health check failures for the
1259
- # instance are ignored. The default value is `0`. For more
1260
- # information, see [Health check grace period][1] in the *Amazon EC2
1261
- # Auto Scaling User Guide*.
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*.
1262
1261
  #
1263
1262
  # Conditional: Required if you are adding an `ELB` health check.
1264
1263
  #
@@ -1307,12 +1306,12 @@ module Aws::AutoScaling
1307
1306
  # Indicates whether newly launched instances are protected from
1308
1307
  # termination by Amazon EC2 Auto Scaling when scaling in. For more
1309
1308
  # information about preventing instances from terminating on scale in,
1310
- # see [Instance scale-in protection][1] in the *Amazon EC2 Auto
1309
+ # see [Using instance scale-in protection][1] in the *Amazon EC2 Auto
1311
1310
  # Scaling User Guide*.
1312
1311
  #
1313
1312
  #
1314
1313
  #
1315
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection
1314
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html
1316
1315
  # @return [Boolean]
1317
1316
  #
1318
1317
  # @!attribute [rw] capacity_rebalance
@@ -1327,7 +1326,7 @@ module Aws::AutoScaling
1327
1326
  #
1328
1327
  #
1329
1328
  #
1330
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html
1329
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html
1331
1330
  # @return [Boolean]
1332
1331
  #
1333
1332
  # @!attribute [rw] lifecycle_hook_specification_list
@@ -1806,7 +1805,7 @@ module Aws::AutoScaling
1806
1805
  # * Add values for each required parameter from CloudWatch. You can use
1807
1806
  # an existing metric, or a new metric that you create. To use your own
1808
1807
  # metric, you must first publish the metric to CloudWatch. For more
1809
- # information, see [Publish Custom Metrics][1] in the *Amazon
1808
+ # information, see [Publish custom metrics][1] in the *Amazon
1810
1809
  # CloudWatch User Guide*.
1811
1810
  #
1812
1811
  # * Choose a metric that changes proportionally with capacity. The value
@@ -1814,13 +1813,21 @@ module Aws::AutoScaling
1814
1813
  # the number of capacity units. That is, the value of the metric
1815
1814
  # should decrease when capacity increases.
1816
1815
  #
1817
- # For more information about CloudWatch, see [Amazon CloudWatch
1818
- # Concepts][2].
1816
+ # For more information about the CloudWatch terminology below, see
1817
+ # [Amazon CloudWatch concepts][2].
1818
+ #
1819
+ # <note markdown="1"> Each individual service provides information about the metrics,
1820
+ # namespace, and dimensions they use. For more information, see [Amazon
1821
+ # Web Services services that publish CloudWatch metrics][3] in the
1822
+ # *Amazon CloudWatch User Guide*.
1823
+ #
1824
+ # </note>
1819
1825
  #
1820
1826
  #
1821
1827
  #
1822
1828
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html
1823
1829
  # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html
1830
+ # [3]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html
1824
1831
  #
1825
1832
  # @note When making an API call, you may pass CustomizedMetricSpecification
1826
1833
  # data as a hash:
@@ -1839,7 +1846,14 @@ module Aws::AutoScaling
1839
1846
  # }
1840
1847
  #
1841
1848
  # @!attribute [rw] metric_name
1842
- # The name of the metric.
1849
+ # The name of the metric. To get the exact metric name, namespace, and
1850
+ # dimensions, inspect the [Metric][1] object that is returned by a
1851
+ # call to [ListMetrics][2].
1852
+ #
1853
+ #
1854
+ #
1855
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html
1856
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html
1843
1857
  # @return [String]
1844
1858
  #
1845
1859
  # @!attribute [rw] namespace
@@ -1858,7 +1872,13 @@ module Aws::AutoScaling
1858
1872
  # @return [String]
1859
1873
  #
1860
1874
  # @!attribute [rw] unit
1861
- # The unit of the metric.
1875
+ # The unit of the metric. For a complete list of the units that
1876
+ # CloudWatch supports, see the [MetricDatum][1] data type in the
1877
+ # *Amazon CloudWatch API Reference*.
1878
+ #
1879
+ #
1880
+ #
1881
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
1862
1882
  # @return [String]
1863
1883
  #
1864
1884
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CustomizedMetricSpecification AWS API Documentation
@@ -1943,8 +1963,7 @@ module Aws::AutoScaling
1943
1963
  # @return [String]
1944
1964
  #
1945
1965
  # @!attribute [rw] topic_arn
1946
- # The Amazon Resource Name (ARN) of the Amazon Simple Notification
1947
- # Service (Amazon SNS) topic.
1966
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic.
1948
1967
  # @return [String]
1949
1968
  #
1950
1969
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DeleteNotificationConfigurationType AWS API Documentation
@@ -2827,7 +2846,7 @@ module Aws::AutoScaling
2827
2846
  #
2828
2847
  #
2829
2848
  #
2830
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
2849
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
2831
2850
  # @return [Types::MixedInstancesPolicy]
2832
2851
  #
2833
2852
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DesiredConfiguration AWS API Documentation
@@ -4790,7 +4809,7 @@ module Aws::AutoScaling
4790
4809
  #
4791
4810
  #
4792
4811
  #
4793
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-override-options.html
4812
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-configuring-overrides.html
4794
4813
  #
4795
4814
  # @note When making an API call, you may pass LaunchTemplateOverrides
4796
4815
  # data as a hash:
@@ -4880,7 +4899,7 @@ module Aws::AutoScaling
4880
4899
  #
4881
4900
  #
4882
4901
  #
4883
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-instance-weighting.html
4902
+ # [1]: https://docs.aws.amazon.com/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html
4884
4903
  # @return [String]
4885
4904
  #
4886
4905
  # @!attribute [rw] launch_template_specification
@@ -4894,7 +4913,7 @@ module Aws::AutoScaling
4894
4913
  #
4895
4914
  #
4896
4915
  #
4897
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-launch-template-overrides.html
4916
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-launch-template-overrides.html
4898
4917
  # @return [Types::LaunchTemplateSpecification]
4899
4918
  #
4900
4919
  # @!attribute [rw] instance_requirements
@@ -4991,9 +5010,9 @@ module Aws::AutoScaling
4991
5010
  include Aws::Structure
4992
5011
  end
4993
5012
 
4994
- # Describes a lifecycle hook, which tells Amazon EC2 Auto Scaling that
4995
- # you want to perform an action whenever it launches instances or
4996
- # terminates instances.
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.
4997
5016
  #
4998
5017
  # @!attribute [rw] lifecycle_hook_name
4999
5018
  # The name of the lifecycle hook.
@@ -5068,31 +5087,6 @@ module Aws::AutoScaling
5068
5087
  # Describes information used to specify a lifecycle hook for an Auto
5069
5088
  # Scaling group.
5070
5089
  #
5071
- # A lifecycle hook tells Amazon EC2 Auto Scaling to perform an action on
5072
- # an instance when the instance launches (before it is put into service)
5073
- # or as the instance terminates (before it is fully terminated).
5074
- #
5075
- # This step is a part of the procedure for creating a lifecycle hook for
5076
- # an Auto Scaling group:
5077
- #
5078
- # 1. (Optional) Create a Lambda function and a rule that allows
5079
- # CloudWatch Events to invoke your Lambda function when Amazon EC2
5080
- # Auto Scaling launches or terminates instances.
5081
- #
5082
- # 2. (Optional) Create a notification target and an IAM role. The
5083
- # target can be either an Amazon SQS queue or an Amazon SNS topic.
5084
- # The role allows Amazon EC2 Auto Scaling to publish lifecycle
5085
- # notifications to the target.
5086
- #
5087
- # 3. **Create the lifecycle hook. Specify whether the hook is used when
5088
- # the instances launch or terminate.**
5089
- #
5090
- # 4. If you need more time, record the lifecycle action heartbeat to
5091
- # keep the instance in a pending state.
5092
- #
5093
- # 5. If you finish before the timeout period ends, complete the
5094
- # lifecycle action.
5095
- #
5096
5090
  # For more information, see [Amazon EC2 Auto Scaling lifecycle hooks][1]
5097
5091
  # in the *Amazon EC2 Auto Scaling User Guide*.
5098
5092
  #
@@ -5273,7 +5267,7 @@ module Aws::AutoScaling
5273
5267
  # the metric specification.
5274
5268
  #
5275
5269
  # @!attribute [rw] timestamps
5276
- # The time stamps for the data points, in UTC format.
5270
+ # The timestamps for the data points, in UTC format.
5277
5271
  # @return [Array<Time>]
5278
5272
  #
5279
5273
  # @!attribute [rw] values
@@ -5350,6 +5344,60 @@ module Aws::AutoScaling
5350
5344
  include Aws::Structure
5351
5345
  end
5352
5346
 
5347
+ # Represents a specific metric.
5348
+ #
5349
+ # @note When making an API call, you may pass Metric
5350
+ # data as a hash:
5351
+ #
5352
+ # {
5353
+ # namespace: "MetricNamespace", # required
5354
+ # metric_name: "MetricName", # required
5355
+ # dimensions: [
5356
+ # {
5357
+ # name: "MetricDimensionName", # required
5358
+ # value: "MetricDimensionValue", # required
5359
+ # },
5360
+ # ],
5361
+ # }
5362
+ #
5363
+ # @!attribute [rw] namespace
5364
+ # The namespace of the metric. For more information, see the table in
5365
+ # [Amazon Web Services services that publish CloudWatch metrics ][1]
5366
+ # in the *Amazon CloudWatch User Guide*.
5367
+ #
5368
+ #
5369
+ #
5370
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html
5371
+ # @return [String]
5372
+ #
5373
+ # @!attribute [rw] metric_name
5374
+ # The name of the metric.
5375
+ # @return [String]
5376
+ #
5377
+ # @!attribute [rw] dimensions
5378
+ # The dimensions for the metric. For the list of available dimensions,
5379
+ # see the Amazon Web Services documentation available from the table
5380
+ # in [Amazon Web Services services that publish CloudWatch metrics
5381
+ # ][1] in the *Amazon CloudWatch User Guide*.
5382
+ #
5383
+ # Conditional: If you published your metric with dimensions, you must
5384
+ # specify the same dimensions in your scaling policy.
5385
+ #
5386
+ #
5387
+ #
5388
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html
5389
+ # @return [Array<Types::MetricDimension>]
5390
+ #
5391
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/Metric AWS API Documentation
5392
+ #
5393
+ class Metric < Struct.new(
5394
+ :namespace,
5395
+ :metric_name,
5396
+ :dimensions)
5397
+ SENSITIVE = []
5398
+ include Aws::Structure
5399
+ end
5400
+
5353
5401
  # Describes a metric.
5354
5402
  #
5355
5403
  # @!attribute [rw] metric
@@ -5404,6 +5452,103 @@ module Aws::AutoScaling
5404
5452
  include Aws::Structure
5405
5453
  end
5406
5454
 
5455
+ # The metric data to return. Also defines whether this call is returning
5456
+ # data for one metric only, or whether it is performing a math
5457
+ # expression on the values of returned metric statistics to create a new
5458
+ # time series. A time series is a series of data points, each of which
5459
+ # is associated with a timestamp.
5460
+ #
5461
+ # For more information and examples, see [Advanced predictive scaling
5462
+ # policy configurations using custom metrics][1] in the *Amazon EC2 Auto
5463
+ # Scaling User Guide*.
5464
+ #
5465
+ #
5466
+ #
5467
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/predictive-scaling-customized-metric-specification.html
5468
+ #
5469
+ # @note When making an API call, you may pass MetricDataQuery
5470
+ # data as a hash:
5471
+ #
5472
+ # {
5473
+ # id: "XmlStringMaxLen255", # required
5474
+ # expression: "XmlStringMaxLen1023",
5475
+ # metric_stat: {
5476
+ # metric: { # required
5477
+ # namespace: "MetricNamespace", # required
5478
+ # metric_name: "MetricName", # required
5479
+ # dimensions: [
5480
+ # {
5481
+ # name: "MetricDimensionName", # required
5482
+ # value: "MetricDimensionValue", # required
5483
+ # },
5484
+ # ],
5485
+ # },
5486
+ # stat: "XmlStringMetricStat", # required
5487
+ # unit: "MetricUnit",
5488
+ # },
5489
+ # label: "XmlStringMetricLabel",
5490
+ # return_data: false,
5491
+ # }
5492
+ #
5493
+ # @!attribute [rw] id
5494
+ # A short name that identifies the object's results in the response.
5495
+ # This name must be unique among all `MetricDataQuery` objects
5496
+ # specified for a single scaling policy. If you are performing math
5497
+ # expressions on this set of data, this name represents that data and
5498
+ # can serve as a variable in the mathematical expression. The valid
5499
+ # characters are letters, numbers, and underscores. The first
5500
+ # character must be a lowercase letter.
5501
+ # @return [String]
5502
+ #
5503
+ # @!attribute [rw] expression
5504
+ # The math expression to perform on the returned data, if this object
5505
+ # is performing a math expression. This expression can use the `Id` of
5506
+ # the other metrics to refer to those metrics, and can also use the
5507
+ # `Id` of other expressions to use the result of those expressions.
5508
+ #
5509
+ # Conditional: Within each `MetricDataQuery` object, you must specify
5510
+ # either `Expression` or `MetricStat`, but not both.
5511
+ # @return [String]
5512
+ #
5513
+ # @!attribute [rw] metric_stat
5514
+ # Information about the metric data to return.
5515
+ #
5516
+ # Conditional: Within each `MetricDataQuery` object, you must specify
5517
+ # either `Expression` or `MetricStat`, but not both.
5518
+ # @return [Types::MetricStat]
5519
+ #
5520
+ # @!attribute [rw] label
5521
+ # A human-readable label for this metric or expression. This is
5522
+ # especially useful if this is a math expression, so that you know
5523
+ # what the value represents.
5524
+ # @return [String]
5525
+ #
5526
+ # @!attribute [rw] return_data
5527
+ # Indicates whether to return the timestamps and raw data values of
5528
+ # this metric.
5529
+ #
5530
+ # If you use any math expressions, specify `true` for this value for
5531
+ # only the final math expression that the metric specification is
5532
+ # based on. You must specify `false` for `ReturnData` for all the
5533
+ # other metrics and expressions used in the metric specification.
5534
+ #
5535
+ # If you are only retrieving metrics and not performing any math
5536
+ # expressions, do not specify anything for `ReturnData`. This sets it
5537
+ # to its default (`true`).
5538
+ # @return [Boolean]
5539
+ #
5540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/MetricDataQuery AWS API Documentation
5541
+ #
5542
+ class MetricDataQuery < Struct.new(
5543
+ :id,
5544
+ :expression,
5545
+ :metric_stat,
5546
+ :label,
5547
+ :return_data)
5548
+ SENSITIVE = []
5549
+ include Aws::Structure
5550
+ end
5551
+
5407
5552
  # Describes the dimension of a metric.
5408
5553
  #
5409
5554
  # @note When making an API call, you may pass MetricDimension
@@ -5445,6 +5590,79 @@ module Aws::AutoScaling
5445
5590
  include Aws::Structure
5446
5591
  end
5447
5592
 
5593
+ # This structure defines the CloudWatch metric to return, along with the
5594
+ # statistic, period, and unit.
5595
+ #
5596
+ # For more information about the CloudWatch terminology below, see
5597
+ # [Amazon CloudWatch concepts][1] in the *Amazon CloudWatch User Guide*.
5598
+ #
5599
+ #
5600
+ #
5601
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html
5602
+ #
5603
+ # @note When making an API call, you may pass MetricStat
5604
+ # data as a hash:
5605
+ #
5606
+ # {
5607
+ # metric: { # required
5608
+ # namespace: "MetricNamespace", # required
5609
+ # metric_name: "MetricName", # required
5610
+ # dimensions: [
5611
+ # {
5612
+ # name: "MetricDimensionName", # required
5613
+ # value: "MetricDimensionValue", # required
5614
+ # },
5615
+ # ],
5616
+ # },
5617
+ # stat: "XmlStringMetricStat", # required
5618
+ # unit: "MetricUnit",
5619
+ # }
5620
+ #
5621
+ # @!attribute [rw] metric
5622
+ # The CloudWatch metric to return, including the metric name,
5623
+ # namespace, and dimensions. To get the exact metric name, namespace,
5624
+ # and dimensions, inspect the [Metric][1] object that is returned by a
5625
+ # call to [ListMetrics][2].
5626
+ #
5627
+ #
5628
+ #
5629
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html
5630
+ # [2]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html
5631
+ # @return [Types::Metric]
5632
+ #
5633
+ # @!attribute [rw] stat
5634
+ # The statistic to return. It can include any CloudWatch statistic or
5635
+ # extended statistic. For a list of valid values, see the table in
5636
+ # [Statistics][1] in the *Amazon CloudWatch User Guide*.
5637
+ #
5638
+ # The most commonly used metrics for predictive scaling are `Average`
5639
+ # and `Sum`.
5640
+ #
5641
+ #
5642
+ #
5643
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Statistic
5644
+ # @return [String]
5645
+ #
5646
+ # @!attribute [rw] unit
5647
+ # The unit to use for the returned data points. For a complete list of
5648
+ # the units that CloudWatch supports, see the [MetricDatum][1] data
5649
+ # type in the *Amazon CloudWatch API Reference*.
5650
+ #
5651
+ #
5652
+ #
5653
+ # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
5654
+ # @return [String]
5655
+ #
5656
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/MetricStat AWS API Documentation
5657
+ #
5658
+ class MetricStat < Struct.new(
5659
+ :metric,
5660
+ :stat,
5661
+ :unit)
5662
+ SENSITIVE = []
5663
+ include Aws::Structure
5664
+ end
5665
+
5448
5666
  # Describes a mixed instances policy. A mixed instances policy contains
5449
5667
  # the instance types that Amazon EC2 Auto Scaling can launch and other
5450
5668
  # information that Amazon EC2 Auto Scaling can use to launch instances
@@ -5454,7 +5672,7 @@ module Aws::AutoScaling
5454
5672
  #
5455
5673
  #
5456
5674
  #
5457
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
5675
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
5458
5676
  #
5459
5677
  # @note When making an API call, you may pass MixedInstancesPolicy
5460
5678
  # data as a hash:
@@ -5591,8 +5809,7 @@ module Aws::AutoScaling
5591
5809
  # @return [String]
5592
5810
  #
5593
5811
  # @!attribute [rw] topic_arn
5594
- # The Amazon Resource Name (ARN) of the Amazon Simple Notification
5595
- # Service (Amazon SNS) topic.
5812
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic.
5596
5813
  # @return [String]
5597
5814
  #
5598
5815
  # @!attribute [rw] notification_type
@@ -5750,6 +5967,78 @@ module Aws::AutoScaling
5750
5967
  # predefined_metric_type: "ASGTotalCPUUtilization", # required, accepts ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, ALBTargetGroupRequestCount
5751
5968
  # resource_label: "XmlStringMaxLen1023",
5752
5969
  # },
5970
+ # customized_scaling_metric_specification: {
5971
+ # metric_data_queries: [ # required
5972
+ # {
5973
+ # id: "XmlStringMaxLen255", # required
5974
+ # expression: "XmlStringMaxLen1023",
5975
+ # metric_stat: {
5976
+ # metric: { # required
5977
+ # namespace: "MetricNamespace", # required
5978
+ # metric_name: "MetricName", # required
5979
+ # dimensions: [
5980
+ # {
5981
+ # name: "MetricDimensionName", # required
5982
+ # value: "MetricDimensionValue", # required
5983
+ # },
5984
+ # ],
5985
+ # },
5986
+ # stat: "XmlStringMetricStat", # required
5987
+ # unit: "MetricUnit",
5988
+ # },
5989
+ # label: "XmlStringMetricLabel",
5990
+ # return_data: false,
5991
+ # },
5992
+ # ],
5993
+ # },
5994
+ # customized_load_metric_specification: {
5995
+ # metric_data_queries: [ # required
5996
+ # {
5997
+ # id: "XmlStringMaxLen255", # required
5998
+ # expression: "XmlStringMaxLen1023",
5999
+ # metric_stat: {
6000
+ # metric: { # required
6001
+ # namespace: "MetricNamespace", # required
6002
+ # metric_name: "MetricName", # required
6003
+ # dimensions: [
6004
+ # {
6005
+ # name: "MetricDimensionName", # required
6006
+ # value: "MetricDimensionValue", # required
6007
+ # },
6008
+ # ],
6009
+ # },
6010
+ # stat: "XmlStringMetricStat", # required
6011
+ # unit: "MetricUnit",
6012
+ # },
6013
+ # label: "XmlStringMetricLabel",
6014
+ # return_data: false,
6015
+ # },
6016
+ # ],
6017
+ # },
6018
+ # customized_capacity_metric_specification: {
6019
+ # metric_data_queries: [ # required
6020
+ # {
6021
+ # id: "XmlStringMaxLen255", # required
6022
+ # expression: "XmlStringMaxLen1023",
6023
+ # metric_stat: {
6024
+ # metric: { # required
6025
+ # namespace: "MetricNamespace", # required
6026
+ # metric_name: "MetricName", # required
6027
+ # dimensions: [
6028
+ # {
6029
+ # name: "MetricDimensionName", # required
6030
+ # value: "MetricDimensionValue", # required
6031
+ # },
6032
+ # ],
6033
+ # },
6034
+ # stat: "XmlStringMetricStat", # required
6035
+ # unit: "MetricUnit",
6036
+ # },
6037
+ # label: "XmlStringMetricLabel",
6038
+ # return_data: false,
6039
+ # },
6040
+ # ],
6041
+ # },
5753
6042
  # },
5754
6043
  # ],
5755
6044
  # mode: "ForecastAndScale", # accepts ForecastAndScale, ForecastOnly
@@ -5832,6 +6121,139 @@ module Aws::AutoScaling
5832
6121
  include Aws::Structure
5833
6122
  end
5834
6123
 
6124
+ # Describes a customized capacity metric for a predictive scaling
6125
+ # policy.
6126
+ #
6127
+ # @note When making an API call, you may pass PredictiveScalingCustomizedCapacityMetric
6128
+ # data as a hash:
6129
+ #
6130
+ # {
6131
+ # metric_data_queries: [ # required
6132
+ # {
6133
+ # id: "XmlStringMaxLen255", # required
6134
+ # expression: "XmlStringMaxLen1023",
6135
+ # metric_stat: {
6136
+ # metric: { # required
6137
+ # namespace: "MetricNamespace", # required
6138
+ # metric_name: "MetricName", # required
6139
+ # dimensions: [
6140
+ # {
6141
+ # name: "MetricDimensionName", # required
6142
+ # value: "MetricDimensionValue", # required
6143
+ # },
6144
+ # ],
6145
+ # },
6146
+ # stat: "XmlStringMetricStat", # required
6147
+ # unit: "MetricUnit",
6148
+ # },
6149
+ # label: "XmlStringMetricLabel",
6150
+ # return_data: false,
6151
+ # },
6152
+ # ],
6153
+ # }
6154
+ #
6155
+ # @!attribute [rw] metric_data_queries
6156
+ # One or more metric data queries to provide the data points for a
6157
+ # capacity metric. Use multiple metric data queries only if you are
6158
+ # performing a math expression on returned data.
6159
+ # @return [Array<Types::MetricDataQuery>]
6160
+ #
6161
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PredictiveScalingCustomizedCapacityMetric AWS API Documentation
6162
+ #
6163
+ class PredictiveScalingCustomizedCapacityMetric < Struct.new(
6164
+ :metric_data_queries)
6165
+ SENSITIVE = []
6166
+ include Aws::Structure
6167
+ end
6168
+
6169
+ # Describes a custom load metric for a predictive scaling policy.
6170
+ #
6171
+ # @note When making an API call, you may pass PredictiveScalingCustomizedLoadMetric
6172
+ # data as a hash:
6173
+ #
6174
+ # {
6175
+ # metric_data_queries: [ # required
6176
+ # {
6177
+ # id: "XmlStringMaxLen255", # required
6178
+ # expression: "XmlStringMaxLen1023",
6179
+ # metric_stat: {
6180
+ # metric: { # required
6181
+ # namespace: "MetricNamespace", # required
6182
+ # metric_name: "MetricName", # required
6183
+ # dimensions: [
6184
+ # {
6185
+ # name: "MetricDimensionName", # required
6186
+ # value: "MetricDimensionValue", # required
6187
+ # },
6188
+ # ],
6189
+ # },
6190
+ # stat: "XmlStringMetricStat", # required
6191
+ # unit: "MetricUnit",
6192
+ # },
6193
+ # label: "XmlStringMetricLabel",
6194
+ # return_data: false,
6195
+ # },
6196
+ # ],
6197
+ # }
6198
+ #
6199
+ # @!attribute [rw] metric_data_queries
6200
+ # One or more metric data queries to provide the data points for a
6201
+ # load metric. Use multiple metric data queries only if you are
6202
+ # performing a math expression on returned data.
6203
+ # @return [Array<Types::MetricDataQuery>]
6204
+ #
6205
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PredictiveScalingCustomizedLoadMetric AWS API Documentation
6206
+ #
6207
+ class PredictiveScalingCustomizedLoadMetric < Struct.new(
6208
+ :metric_data_queries)
6209
+ SENSITIVE = []
6210
+ include Aws::Structure
6211
+ end
6212
+
6213
+ # Describes a custom scaling metric for a predictive scaling policy.
6214
+ #
6215
+ # @note When making an API call, you may pass PredictiveScalingCustomizedScalingMetric
6216
+ # data as a hash:
6217
+ #
6218
+ # {
6219
+ # metric_data_queries: [ # required
6220
+ # {
6221
+ # id: "XmlStringMaxLen255", # required
6222
+ # expression: "XmlStringMaxLen1023",
6223
+ # metric_stat: {
6224
+ # metric: { # required
6225
+ # namespace: "MetricNamespace", # required
6226
+ # metric_name: "MetricName", # required
6227
+ # dimensions: [
6228
+ # {
6229
+ # name: "MetricDimensionName", # required
6230
+ # value: "MetricDimensionValue", # required
6231
+ # },
6232
+ # ],
6233
+ # },
6234
+ # stat: "XmlStringMetricStat", # required
6235
+ # unit: "MetricUnit",
6236
+ # },
6237
+ # label: "XmlStringMetricLabel",
6238
+ # return_data: false,
6239
+ # },
6240
+ # ],
6241
+ # }
6242
+ #
6243
+ # @!attribute [rw] metric_data_queries
6244
+ # One or more metric data queries to provide the data points for a
6245
+ # scaling metric. Use multiple metric data queries only if you are
6246
+ # performing a math expression on returned data.
6247
+ # @return [Array<Types::MetricDataQuery>]
6248
+ #
6249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PredictiveScalingCustomizedScalingMetric AWS API Documentation
6250
+ #
6251
+ class PredictiveScalingCustomizedScalingMetric < Struct.new(
6252
+ :metric_data_queries)
6253
+ SENSITIVE = []
6254
+ include Aws::Structure
6255
+ end
6256
+
5835
6257
  # This structure specifies the metrics and target utilization settings
5836
6258
  # for a predictive scaling policy.
5837
6259
  #
@@ -5872,6 +6294,14 @@ module Aws::AutoScaling
5872
6294
  # requests received by each instance is as close to 1000 requests per
5873
6295
  # minute as possible at all times.
5874
6296
  #
6297
+ # For information about using custom metrics with predictive scaling,
6298
+ # see [Advanced predictive scaling policy configurations using custom
6299
+ # metrics][1] in the *Amazon EC2 Auto Scaling User Guide*.
6300
+ #
6301
+ #
6302
+ #
6303
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/predictive-scaling-customized-metric-specification.html
6304
+ #
5875
6305
  # @note When making an API call, you may pass PredictiveScalingMetricSpecification
5876
6306
  # data as a hash:
5877
6307
  #
@@ -5889,32 +6319,129 @@ module Aws::AutoScaling
5889
6319
  # predefined_metric_type: "ASGTotalCPUUtilization", # required, accepts ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, ALBTargetGroupRequestCount
5890
6320
  # resource_label: "XmlStringMaxLen1023",
5891
6321
  # },
6322
+ # customized_scaling_metric_specification: {
6323
+ # metric_data_queries: [ # required
6324
+ # {
6325
+ # id: "XmlStringMaxLen255", # required
6326
+ # expression: "XmlStringMaxLen1023",
6327
+ # metric_stat: {
6328
+ # metric: { # required
6329
+ # namespace: "MetricNamespace", # required
6330
+ # metric_name: "MetricName", # required
6331
+ # dimensions: [
6332
+ # {
6333
+ # name: "MetricDimensionName", # required
6334
+ # value: "MetricDimensionValue", # required
6335
+ # },
6336
+ # ],
6337
+ # },
6338
+ # stat: "XmlStringMetricStat", # required
6339
+ # unit: "MetricUnit",
6340
+ # },
6341
+ # label: "XmlStringMetricLabel",
6342
+ # return_data: false,
6343
+ # },
6344
+ # ],
6345
+ # },
6346
+ # customized_load_metric_specification: {
6347
+ # metric_data_queries: [ # required
6348
+ # {
6349
+ # id: "XmlStringMaxLen255", # required
6350
+ # expression: "XmlStringMaxLen1023",
6351
+ # metric_stat: {
6352
+ # metric: { # required
6353
+ # namespace: "MetricNamespace", # required
6354
+ # metric_name: "MetricName", # required
6355
+ # dimensions: [
6356
+ # {
6357
+ # name: "MetricDimensionName", # required
6358
+ # value: "MetricDimensionValue", # required
6359
+ # },
6360
+ # ],
6361
+ # },
6362
+ # stat: "XmlStringMetricStat", # required
6363
+ # unit: "MetricUnit",
6364
+ # },
6365
+ # label: "XmlStringMetricLabel",
6366
+ # return_data: false,
6367
+ # },
6368
+ # ],
6369
+ # },
6370
+ # customized_capacity_metric_specification: {
6371
+ # metric_data_queries: [ # required
6372
+ # {
6373
+ # id: "XmlStringMaxLen255", # required
6374
+ # expression: "XmlStringMaxLen1023",
6375
+ # metric_stat: {
6376
+ # metric: { # required
6377
+ # namespace: "MetricNamespace", # required
6378
+ # metric_name: "MetricName", # required
6379
+ # dimensions: [
6380
+ # {
6381
+ # name: "MetricDimensionName", # required
6382
+ # value: "MetricDimensionValue", # required
6383
+ # },
6384
+ # ],
6385
+ # },
6386
+ # stat: "XmlStringMetricStat", # required
6387
+ # unit: "MetricUnit",
6388
+ # },
6389
+ # label: "XmlStringMetricLabel",
6390
+ # return_data: false,
6391
+ # },
6392
+ # ],
6393
+ # },
5892
6394
  # }
5893
6395
  #
5894
6396
  # @!attribute [rw] target_value
5895
6397
  # Specifies the target utilization.
6398
+ #
6399
+ # <note markdown="1"> Some metrics are based on a count instead of a percentage, such as
6400
+ # the request count for an Application Load Balancer or the number of
6401
+ # messages in an SQS queue. If the scaling policy specifies one of
6402
+ # these metrics, specify the target utilization as the optimal average
6403
+ # request or message count per instance during any one-minute
6404
+ # interval.
6405
+ #
6406
+ # </note>
5896
6407
  # @return [Float]
5897
6408
  #
5898
6409
  # @!attribute [rw] predefined_metric_pair_specification
5899
- # The metric pair specification from which Amazon EC2 Auto Scaling
5900
- # determines the appropriate scaling metric and load metric to use.
6410
+ # The predefined metric pair specification from which Amazon EC2 Auto
6411
+ # Scaling determines the appropriate scaling metric and load metric to
6412
+ # use.
5901
6413
  # @return [Types::PredictiveScalingPredefinedMetricPair]
5902
6414
  #
5903
6415
  # @!attribute [rw] predefined_scaling_metric_specification
5904
- # The scaling metric specification.
6416
+ # The predefined scaling metric specification.
5905
6417
  # @return [Types::PredictiveScalingPredefinedScalingMetric]
5906
6418
  #
5907
6419
  # @!attribute [rw] predefined_load_metric_specification
5908
- # The load metric specification.
6420
+ # The predefined load metric specification.
5909
6421
  # @return [Types::PredictiveScalingPredefinedLoadMetric]
5910
6422
  #
6423
+ # @!attribute [rw] customized_scaling_metric_specification
6424
+ # The customized scaling metric specification.
6425
+ # @return [Types::PredictiveScalingCustomizedScalingMetric]
6426
+ #
6427
+ # @!attribute [rw] customized_load_metric_specification
6428
+ # The customized load metric specification.
6429
+ # @return [Types::PredictiveScalingCustomizedLoadMetric]
6430
+ #
6431
+ # @!attribute [rw] customized_capacity_metric_specification
6432
+ # The customized capacity metric specification.
6433
+ # @return [Types::PredictiveScalingCustomizedCapacityMetric]
6434
+ #
5911
6435
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PredictiveScalingMetricSpecification AWS API Documentation
5912
6436
  #
5913
6437
  class PredictiveScalingMetricSpecification < Struct.new(
5914
6438
  :target_value,
5915
6439
  :predefined_metric_pair_specification,
5916
6440
  :predefined_scaling_metric_specification,
5917
- :predefined_load_metric_specification)
6441
+ :predefined_load_metric_specification,
6442
+ :customized_scaling_metric_specification,
6443
+ :customized_load_metric_specification,
6444
+ :customized_capacity_metric_specification)
5918
6445
  SENSITIVE = []
5919
6446
  include Aws::Structure
5920
6447
  end
@@ -6264,8 +6791,7 @@ module Aws::AutoScaling
6264
6791
  # @return [String]
6265
6792
  #
6266
6793
  # @!attribute [rw] topic_arn
6267
- # The Amazon Resource Name (ARN) of the Amazon Simple Notification
6268
- # Service (Amazon SNS) topic.
6794
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic.
6269
6795
  # @return [String]
6270
6796
  #
6271
6797
  # @!attribute [rw] notification_types
@@ -6342,6 +6868,78 @@ module Aws::AutoScaling
6342
6868
  # predefined_metric_type: "ASGTotalCPUUtilization", # required, accepts ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, ALBTargetGroupRequestCount
6343
6869
  # resource_label: "XmlStringMaxLen1023",
6344
6870
  # },
6871
+ # customized_scaling_metric_specification: {
6872
+ # metric_data_queries: [ # required
6873
+ # {
6874
+ # id: "XmlStringMaxLen255", # required
6875
+ # expression: "XmlStringMaxLen1023",
6876
+ # metric_stat: {
6877
+ # metric: { # required
6878
+ # namespace: "MetricNamespace", # required
6879
+ # metric_name: "MetricName", # required
6880
+ # dimensions: [
6881
+ # {
6882
+ # name: "MetricDimensionName", # required
6883
+ # value: "MetricDimensionValue", # required
6884
+ # },
6885
+ # ],
6886
+ # },
6887
+ # stat: "XmlStringMetricStat", # required
6888
+ # unit: "MetricUnit",
6889
+ # },
6890
+ # label: "XmlStringMetricLabel",
6891
+ # return_data: false,
6892
+ # },
6893
+ # ],
6894
+ # },
6895
+ # customized_load_metric_specification: {
6896
+ # metric_data_queries: [ # required
6897
+ # {
6898
+ # id: "XmlStringMaxLen255", # required
6899
+ # expression: "XmlStringMaxLen1023",
6900
+ # metric_stat: {
6901
+ # metric: { # required
6902
+ # namespace: "MetricNamespace", # required
6903
+ # metric_name: "MetricName", # required
6904
+ # dimensions: [
6905
+ # {
6906
+ # name: "MetricDimensionName", # required
6907
+ # value: "MetricDimensionValue", # required
6908
+ # },
6909
+ # ],
6910
+ # },
6911
+ # stat: "XmlStringMetricStat", # required
6912
+ # unit: "MetricUnit",
6913
+ # },
6914
+ # label: "XmlStringMetricLabel",
6915
+ # return_data: false,
6916
+ # },
6917
+ # ],
6918
+ # },
6919
+ # customized_capacity_metric_specification: {
6920
+ # metric_data_queries: [ # required
6921
+ # {
6922
+ # id: "XmlStringMaxLen255", # required
6923
+ # expression: "XmlStringMaxLen1023",
6924
+ # metric_stat: {
6925
+ # metric: { # required
6926
+ # namespace: "MetricNamespace", # required
6927
+ # metric_name: "MetricName", # required
6928
+ # dimensions: [
6929
+ # {
6930
+ # name: "MetricDimensionName", # required
6931
+ # value: "MetricDimensionValue", # required
6932
+ # },
6933
+ # ],
6934
+ # },
6935
+ # stat: "XmlStringMetricStat", # required
6936
+ # unit: "MetricUnit",
6937
+ # },
6938
+ # label: "XmlStringMetricLabel",
6939
+ # return_data: false,
6940
+ # },
6941
+ # ],
6942
+ # },
6345
6943
  # },
6346
6944
  # ],
6347
6945
  # mode: "ForecastAndScale", # accepts ForecastAndScale, ForecastOnly
@@ -6466,7 +7064,7 @@ module Aws::AutoScaling
6466
7064
  #
6467
7065
  # @!attribute [rw] target_tracking_configuration
6468
7066
  # A target tracking scaling policy. Provides support for predefined or
6469
- # customized metrics.
7067
+ # custom metrics.
6470
7068
  #
6471
7069
  # The following predefined metrics are available:
6472
7070
  #
@@ -6504,11 +7102,11 @@ module Aws::AutoScaling
6504
7102
  # @return [Boolean]
6505
7103
  #
6506
7104
  # @!attribute [rw] predictive_scaling_configuration
6507
- # A predictive scaling policy. Provides support for only predefined
6508
- # metrics.
7105
+ # A predictive scaling policy. Provides support for predefined and
7106
+ # custom metrics.
6509
7107
  #
6510
- # Predictive scaling works with CPU utilization, network in/out, and
6511
- # the Application Load Balancer request count.
7108
+ # Predefined metrics include CPU utilization, network in/out, and the
7109
+ # Application Load Balancer request count.
6512
7110
  #
6513
7111
  # For more information, see [PredictiveScalingConfiguration][1] in the
6514
7112
  # *Amazon EC2 Auto Scaling API Reference*.
@@ -7972,7 +8570,7 @@ module Aws::AutoScaling
7972
8570
  #
7973
8571
  #
7974
8572
  #
7975
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
8573
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
7976
8574
  # @return [Types::MixedInstancesPolicy]
7977
8575
  #
7978
8576
  # @!attribute [rw] min_size
@@ -8027,9 +8625,9 @@ module Aws::AutoScaling
8027
8625
  # @!attribute [rw] health_check_grace_period
8028
8626
  # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
8029
8627
  # before checking the health status of an EC2 instance that has come
8030
- # into service. The default value is `0`. For more information, see
8031
- # [Health check grace period][1] in the *Amazon EC2 Auto Scaling User
8032
- # Guide*.
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*.
8033
8631
  #
8034
8632
  # Conditional: Required if you are adding an `ELB` health check.
8035
8633
  #
@@ -8074,12 +8672,12 @@ module Aws::AutoScaling
8074
8672
  # Indicates whether newly launched instances are protected from
8075
8673
  # termination by Amazon EC2 Auto Scaling when scaling in. For more
8076
8674
  # information about preventing instances from terminating on scale in,
8077
- # see [Instance scale-in protection][1] in the *Amazon EC2 Auto
8675
+ # see [Using instance scale-in protection][1] in the *Amazon EC2 Auto
8078
8676
  # Scaling User Guide*.
8079
8677
  #
8080
8678
  #
8081
8679
  #
8082
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection
8680
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html
8083
8681
  # @return [Boolean]
8084
8682
  #
8085
8683
  # @!attribute [rw] service_linked_role_arn
@@ -8113,7 +8711,7 @@ module Aws::AutoScaling
8113
8711
  #
8114
8712
  #
8115
8713
  #
8116
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html
8714
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html
8117
8715
  # @return [Boolean]
8118
8716
  #
8119
8717
  # @!attribute [rw] context