aws-sdk-autoscaling 1.126.0 → 1.128.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ddce7db6f2774cf0b8a58b29913254c18ce7c43a9b8f6a8eb171441975017940
4
- data.tar.gz: cd7752bde1c6d9474d58f2930c94a40129038101611abcccdba718990e119b3d
3
+ metadata.gz: 4f436c612b27245c4e4935dde2e4e1f4817196c94e7a60f5865f233a5004bbf6
4
+ data.tar.gz: 0aa8fb022848f19d0eb0194db2f7128cc905928721c9ba5215fc1153eafd004c
5
5
  SHA512:
6
- metadata.gz: 5eb292a0e4af4c88aed93dcb2aea4b6dbd4914090ba056a1b4a19e6333658174e799995d24be94647464327b1933583560085e980929573b5601fcc50bd18103
7
- data.tar.gz: b7ebe231b269b51a2867dec7c03c1d9a1b6b56706b16780b0cc05c5d2722ff7f1ba6201a46202b5a1d534fe5baa89b5b8f3dd630ee0097b1986313123e19c449
6
+ metadata.gz: a4685b69e194e5a1ab56b52ad61a0570a199aaa4fb9876541448ad69f35bab660d81e15ae77e2ee51afed1f3ddb5c5d11dfe02e72f08c141eaca440c823e1b76
7
+ data.tar.gz: 8792ab4413766419d6a94bd2590a76c69a8afc1a9aab669a6009f9e323ba1ab918ff4a79217df08e2b788ec1dd026ced3058284216d888defc7f35b9e71d228a
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.128.0 (2024-11-22)
5
+ ------------------
6
+
7
+ * Feature - Now, Amazon EC2 Auto Scaling customers can enable target tracking policies to take quicker scaling decisions, enhancing their application performance and EC2 utilization. To get started, specify target tracking to monitor a metric that is available on Amazon CloudWatch at seconds-level interval.
8
+
9
+ 1.127.0 (2024-11-20)
10
+ ------------------
11
+
12
+ * Feature - With this release, customers can prioritize launching instances into ODCRs using targets from ASGs or Launch Templates. Customers can express their baseline instances' CPU-performance in attribute-based Instance Requirements configuration by referencing an instance family that meets their needs.
13
+
4
14
  1.126.0 (2024-11-18)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.126.0
1
+ 1.128.0
@@ -255,6 +255,12 @@ module Aws::AutoScaling
255
255
  data[:availability_zone_impairment_policy]
256
256
  end
257
257
 
258
+ # The capacity reservation specification.
259
+ # @return [Types::CapacityReservationSpecification]
260
+ def capacity_reservation_specification
261
+ data[:capacity_reservation_specification]
262
+ end
263
+
258
264
  # @!endgroup
259
265
 
260
266
  # @return [Client]
@@ -706,6 +712,7 @@ module Aws::AutoScaling
706
712
  # ],
707
713
  # statistic: "Average", # accepts Average, Minimum, Maximum, SampleCount, Sum
708
714
  # unit: "MetricUnit",
715
+ # period: 1,
709
716
  # metrics: [
710
717
  # {
711
718
  # id: "XmlStringMaxLen64", # required
@@ -723,8 +730,10 @@ module Aws::AutoScaling
723
730
  # },
724
731
  # stat: "XmlStringMetricStat", # required
725
732
  # unit: "MetricUnit",
733
+ # period: 1,
726
734
  # },
727
735
  # label: "XmlStringMetricLabel",
736
+ # period: 1,
728
737
  # return_data: false,
729
738
  # },
730
739
  # ],
@@ -1251,6 +1260,15 @@ module Aws::AutoScaling
1251
1260
  # max: 1.0,
1252
1261
  # },
1253
1262
  # allowed_instance_types: ["AllowedInstanceType"],
1263
+ # baseline_performance_factors: {
1264
+ # cpu: {
1265
+ # references: [
1266
+ # {
1267
+ # instance_family: "String",
1268
+ # },
1269
+ # ],
1270
+ # },
1271
+ # },
1254
1272
  # },
1255
1273
  # },
1256
1274
  # ],
@@ -1293,6 +1311,13 @@ module Aws::AutoScaling
1293
1311
  # impaired_zone_health_check_behavior: "ReplaceUnhealthy", # accepts ReplaceUnhealthy, IgnoreUnhealthy
1294
1312
  # },
1295
1313
  # skip_zonal_shift_validation: false,
1314
+ # capacity_reservation_specification: {
1315
+ # capacity_reservation_preference: "capacity-reservations-only", # accepts capacity-reservations-only, capacity-reservations-first, none, default
1316
+ # capacity_reservation_target: {
1317
+ # capacity_reservation_ids: ["AsciiStringMaxLen255"],
1318
+ # capacity_reservation_resource_group_arns: ["ResourceName"],
1319
+ # },
1320
+ # },
1296
1321
  # })
1297
1322
  # @param [Hash] options ({})
1298
1323
  # @option options [String] :launch_configuration_name
@@ -1504,6 +1529,8 @@ module Aws::AutoScaling
1504
1529
  #
1505
1530
  #
1506
1531
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html
1532
+ # @option options [Types::CapacityReservationSpecification] :capacity_reservation_specification
1533
+ # The capacity reservation specification for the Auto Scaling group.
1507
1534
  # @return [AutoScalingGroup]
1508
1535
  def update(options = {})
1509
1536
  options = options.merge(auto_scaling_group_name: @name)
@@ -1338,6 +1338,9 @@ module Aws::AutoScaling
1338
1338
  #
1339
1339
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html
1340
1340
  #
1341
+ # @option params [Types::CapacityReservationSpecification] :capacity_reservation_specification
1342
+ # The capacity reservation specification for the Auto Scaling group.
1343
+ #
1341
1344
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1342
1345
  #
1343
1346
  #
@@ -1540,6 +1543,15 @@ module Aws::AutoScaling
1540
1543
  # max: 1.0,
1541
1544
  # },
1542
1545
  # allowed_instance_types: ["AllowedInstanceType"],
1546
+ # baseline_performance_factors: {
1547
+ # cpu: {
1548
+ # references: [
1549
+ # {
1550
+ # instance_family: "String",
1551
+ # },
1552
+ # ],
1553
+ # },
1554
+ # },
1543
1555
  # },
1544
1556
  # },
1545
1557
  # ],
@@ -1611,6 +1623,13 @@ module Aws::AutoScaling
1611
1623
  # impaired_zone_health_check_behavior: "ReplaceUnhealthy", # accepts ReplaceUnhealthy, IgnoreUnhealthy
1612
1624
  # },
1613
1625
  # skip_zonal_shift_validation: false,
1626
+ # capacity_reservation_specification: {
1627
+ # capacity_reservation_preference: "capacity-reservations-only", # accepts capacity-reservations-only, capacity-reservations-first, none, default
1628
+ # capacity_reservation_target: {
1629
+ # capacity_reservation_ids: ["AsciiStringMaxLen255"],
1630
+ # capacity_reservation_resource_group_arns: ["ResourceName"],
1631
+ # },
1632
+ # },
1614
1633
  # })
1615
1634
  #
1616
1635
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroup AWS API Documentation
@@ -2651,6 +2670,8 @@ module Aws::AutoScaling
2651
2670
  # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.network_bandwidth_gbps.max #=> Float
2652
2671
  # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.allowed_instance_types #=> Array
2653
2672
  # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.allowed_instance_types[0] #=> String
2673
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.baseline_performance_factors.cpu.references #=> Array
2674
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.baseline_performance_factors.cpu.references[0].instance_family #=> String
2654
2675
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.on_demand_allocation_strategy #=> String
2655
2676
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.on_demand_base_capacity #=> Integer
2656
2677
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.on_demand_percentage_above_base_capacity #=> Integer
@@ -2721,6 +2742,11 @@ module Aws::AutoScaling
2721
2742
  # resp.auto_scaling_groups[0].availability_zone_distribution.capacity_distribution_strategy #=> String, one of "balanced-only", "balanced-best-effort"
2722
2743
  # resp.auto_scaling_groups[0].availability_zone_impairment_policy.zonal_shift_enabled #=> Boolean
2723
2744
  # resp.auto_scaling_groups[0].availability_zone_impairment_policy.impaired_zone_health_check_behavior #=> String, one of "ReplaceUnhealthy", "IgnoreUnhealthy"
2745
+ # resp.auto_scaling_groups[0].capacity_reservation_specification.capacity_reservation_preference #=> String, one of "capacity-reservations-only", "capacity-reservations-first", "none", "default"
2746
+ # resp.auto_scaling_groups[0].capacity_reservation_specification.capacity_reservation_target.capacity_reservation_ids #=> Array
2747
+ # resp.auto_scaling_groups[0].capacity_reservation_specification.capacity_reservation_target.capacity_reservation_ids[0] #=> String
2748
+ # resp.auto_scaling_groups[0].capacity_reservation_specification.capacity_reservation_target.capacity_reservation_resource_group_arns #=> Array
2749
+ # resp.auto_scaling_groups[0].capacity_reservation_specification.capacity_reservation_target.capacity_reservation_resource_group_arns[0] #=> String
2724
2750
  # resp.next_token #=> String
2725
2751
  #
2726
2752
  #
@@ -3057,6 +3083,8 @@ module Aws::AutoScaling
3057
3083
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.network_bandwidth_gbps.max #=> Float
3058
3084
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.allowed_instance_types #=> Array
3059
3085
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.allowed_instance_types[0] #=> String
3086
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.baseline_performance_factors.cpu.references #=> Array
3087
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.baseline_performance_factors.cpu.references[0].instance_family #=> String
3060
3088
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_allocation_strategy #=> String
3061
3089
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_base_capacity #=> Integer
3062
3090
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_percentage_above_base_capacity #=> Integer
@@ -3776,6 +3804,7 @@ module Aws::AutoScaling
3776
3804
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.dimensions[0].value #=> String
3777
3805
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.statistic #=> String, one of "Average", "Minimum", "Maximum", "SampleCount", "Sum"
3778
3806
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.unit #=> String
3807
+ # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.period #=> Integer
3779
3808
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics #=> Array
3780
3809
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].id #=> String
3781
3810
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].expression #=> String
@@ -3786,7 +3815,9 @@ module Aws::AutoScaling
3786
3815
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].metric_stat.metric.dimensions[0].value #=> String
3787
3816
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].metric_stat.stat #=> String
3788
3817
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].metric_stat.unit #=> String
3818
+ # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].metric_stat.period #=> Integer
3789
3819
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].label #=> String
3820
+ # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].period #=> Integer
3790
3821
  # resp.scaling_policies[0].target_tracking_configuration.customized_metric_specification.metrics[0].return_data #=> Boolean
3791
3822
  # resp.scaling_policies[0].target_tracking_configuration.target_value #=> Float
3792
3823
  # resp.scaling_policies[0].target_tracking_configuration.disable_scale_in #=> Boolean
@@ -5769,6 +5800,7 @@ module Aws::AutoScaling
5769
5800
  # ],
5770
5801
  # statistic: "Average", # accepts Average, Minimum, Maximum, SampleCount, Sum
5771
5802
  # unit: "MetricUnit",
5803
+ # period: 1,
5772
5804
  # metrics: [
5773
5805
  # {
5774
5806
  # id: "XmlStringMaxLen64", # required
@@ -5786,8 +5818,10 @@ module Aws::AutoScaling
5786
5818
  # },
5787
5819
  # stat: "XmlStringMetricStat", # required
5788
5820
  # unit: "MetricUnit",
5821
+ # period: 1,
5789
5822
  # },
5790
5823
  # label: "XmlStringMetricLabel",
5824
+ # period: 1,
5791
5825
  # return_data: false,
5792
5826
  # },
5793
5827
  # ],
@@ -6729,6 +6763,15 @@ module Aws::AutoScaling
6729
6763
  # max: 1.0,
6730
6764
  # },
6731
6765
  # allowed_instance_types: ["AllowedInstanceType"],
6766
+ # baseline_performance_factors: {
6767
+ # cpu: {
6768
+ # references: [
6769
+ # {
6770
+ # instance_family: "String",
6771
+ # },
6772
+ # ],
6773
+ # },
6774
+ # },
6732
6775
  # },
6733
6776
  # },
6734
6777
  # ],
@@ -7213,6 +7256,9 @@ module Aws::AutoScaling
7213
7256
  #
7214
7257
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html
7215
7258
  #
7259
+ # @option params [Types::CapacityReservationSpecification] :capacity_reservation_specification
7260
+ # The capacity reservation specification for the Auto Scaling group.
7261
+ #
7216
7262
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
7217
7263
  #
7218
7264
  #
@@ -7309,6 +7355,15 @@ module Aws::AutoScaling
7309
7355
  # max: 1.0,
7310
7356
  # },
7311
7357
  # allowed_instance_types: ["AllowedInstanceType"],
7358
+ # baseline_performance_factors: {
7359
+ # cpu: {
7360
+ # references: [
7361
+ # {
7362
+ # instance_family: "String",
7363
+ # },
7364
+ # ],
7365
+ # },
7366
+ # },
7312
7367
  # },
7313
7368
  # },
7314
7369
  # ],
@@ -7351,6 +7406,13 @@ module Aws::AutoScaling
7351
7406
  # impaired_zone_health_check_behavior: "ReplaceUnhealthy", # accepts ReplaceUnhealthy, IgnoreUnhealthy
7352
7407
  # },
7353
7408
  # skip_zonal_shift_validation: false,
7409
+ # capacity_reservation_specification: {
7410
+ # capacity_reservation_preference: "capacity-reservations-only", # accepts capacity-reservations-only, capacity-reservations-first, none, default
7411
+ # capacity_reservation_target: {
7412
+ # capacity_reservation_ids: ["AsciiStringMaxLen255"],
7413
+ # capacity_reservation_resource_group_arns: ["ResourceName"],
7414
+ # },
7415
+ # },
7354
7416
  # })
7355
7417
  #
7356
7418
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroup AWS API Documentation
@@ -7380,7 +7442,7 @@ module Aws::AutoScaling
7380
7442
  tracer: tracer
7381
7443
  )
7382
7444
  context[:gem_name] = 'aws-sdk-autoscaling'
7383
- context[:gem_version] = '1.126.0'
7445
+ context[:gem_version] = '1.128.0'
7384
7446
  Seahorse::Client::Request.new(handlers, context)
7385
7447
  end
7386
7448
 
@@ -68,6 +68,7 @@ module Aws::AutoScaling
68
68
  BakeTime = Shapes::IntegerShape.new(name: 'BakeTime')
69
69
  BareMetal = Shapes::StringShape.new(name: 'BareMetal')
70
70
  BaselineEbsBandwidthMbpsRequest = Shapes::StructureShape.new(name: 'BaselineEbsBandwidthMbpsRequest')
71
+ BaselinePerformanceFactorsRequest = Shapes::StructureShape.new(name: 'BaselinePerformanceFactorsRequest')
71
72
  BatchDeleteScheduledActionAnswer = Shapes::StructureShape.new(name: 'BatchDeleteScheduledActionAnswer')
72
73
  BatchDeleteScheduledActionType = Shapes::StructureShape.new(name: 'BatchDeleteScheduledActionType')
73
74
  BatchPutScheduledUpdateGroupActionAnswer = Shapes::StructureShape.new(name: 'BatchPutScheduledUpdateGroupActionAnswer')
@@ -86,6 +87,11 @@ module Aws::AutoScaling
86
87
  CapacityDistributionStrategy = Shapes::StringShape.new(name: 'CapacityDistributionStrategy')
87
88
  CapacityForecast = Shapes::StructureShape.new(name: 'CapacityForecast')
88
89
  CapacityRebalanceEnabled = Shapes::BooleanShape.new(name: 'CapacityRebalanceEnabled')
90
+ CapacityReservationIds = Shapes::ListShape.new(name: 'CapacityReservationIds')
91
+ CapacityReservationPreference = Shapes::StringShape.new(name: 'CapacityReservationPreference')
92
+ CapacityReservationResourceGroupArns = Shapes::ListShape.new(name: 'CapacityReservationResourceGroupArns')
93
+ CapacityReservationSpecification = Shapes::StructureShape.new(name: 'CapacityReservationSpecification')
94
+ CapacityReservationTarget = Shapes::StructureShape.new(name: 'CapacityReservationTarget')
89
95
  CheckpointDelay = Shapes::IntegerShape.new(name: 'CheckpointDelay')
90
96
  CheckpointPercentages = Shapes::ListShape.new(name: 'CheckpointPercentages')
91
97
  ClassicLinkVPCSecurityGroups = Shapes::ListShape.new(name: 'ClassicLinkVPCSecurityGroups')
@@ -95,6 +101,7 @@ module Aws::AutoScaling
95
101
  Cooldown = Shapes::IntegerShape.new(name: 'Cooldown')
96
102
  CpuManufacturer = Shapes::StringShape.new(name: 'CpuManufacturer')
97
103
  CpuManufacturers = Shapes::ListShape.new(name: 'CpuManufacturers')
104
+ CpuPerformanceFactorRequest = Shapes::StructureShape.new(name: 'CpuPerformanceFactorRequest')
98
105
  CreateAutoScalingGroupType = Shapes::StructureShape.new(name: 'CreateAutoScalingGroupType')
99
106
  CreateLaunchConfigurationType = Shapes::StructureShape.new(name: 'CreateLaunchConfigurationType')
100
107
  CreateOrUpdateTagsType = Shapes::StructureShape.new(name: 'CreateOrUpdateTagsType')
@@ -247,6 +254,7 @@ module Aws::AutoScaling
247
254
  MetricDimensionName = Shapes::StringShape.new(name: 'MetricDimensionName')
248
255
  MetricDimensionValue = Shapes::StringShape.new(name: 'MetricDimensionValue')
249
256
  MetricDimensions = Shapes::ListShape.new(name: 'MetricDimensions')
257
+ MetricGranularityInSeconds = Shapes::IntegerShape.new(name: 'MetricGranularityInSeconds')
250
258
  MetricGranularityType = Shapes::StructureShape.new(name: 'MetricGranularityType')
251
259
  MetricGranularityTypes = Shapes::ListShape.new(name: 'MetricGranularityTypes')
252
260
  MetricName = Shapes::StringShape.new(name: 'MetricName')
@@ -277,6 +285,8 @@ module Aws::AutoScaling
277
285
  OnDemandBaseCapacity = Shapes::IntegerShape.new(name: 'OnDemandBaseCapacity')
278
286
  OnDemandPercentageAboveBaseCapacity = Shapes::IntegerShape.new(name: 'OnDemandPercentageAboveBaseCapacity')
279
287
  Overrides = Shapes::ListShape.new(name: 'Overrides')
288
+ PerformanceFactorReferenceRequest = Shapes::StructureShape.new(name: 'PerformanceFactorReferenceRequest')
289
+ PerformanceFactorReferenceSetRequest = Shapes::ListShape.new(name: 'PerformanceFactorReferenceSetRequest')
280
290
  PoliciesType = Shapes::StructureShape.new(name: 'PoliciesType')
281
291
  PolicyARNType = Shapes::StructureShape.new(name: 'PolicyARNType')
282
292
  PolicyIncrement = Shapes::IntegerShape.new(name: 'PolicyIncrement')
@@ -358,6 +368,7 @@ module Aws::AutoScaling
358
368
  StartInstanceRefreshType = Shapes::StructureShape.new(name: 'StartInstanceRefreshType')
359
369
  StepAdjustment = Shapes::StructureShape.new(name: 'StepAdjustment')
360
370
  StepAdjustments = Shapes::ListShape.new(name: 'StepAdjustments')
371
+ String = Shapes::StringShape.new(name: 'String')
361
372
  SuspendedProcess = Shapes::StructureShape.new(name: 'SuspendedProcess')
362
373
  SuspendedProcesses = Shapes::ListShape.new(name: 'SuspendedProcesses')
363
374
  Tag = Shapes::StructureShape.new(name: 'Tag')
@@ -527,6 +538,7 @@ module Aws::AutoScaling
527
538
  AutoScalingGroup.add_member(:instance_maintenance_policy, Shapes::ShapeRef.new(shape: InstanceMaintenancePolicy, location_name: "InstanceMaintenancePolicy"))
528
539
  AutoScalingGroup.add_member(:availability_zone_distribution, Shapes::ShapeRef.new(shape: AvailabilityZoneDistribution, location_name: "AvailabilityZoneDistribution"))
529
540
  AutoScalingGroup.add_member(:availability_zone_impairment_policy, Shapes::ShapeRef.new(shape: AvailabilityZoneImpairmentPolicy, location_name: "AvailabilityZoneImpairmentPolicy"))
541
+ AutoScalingGroup.add_member(:capacity_reservation_specification, Shapes::ShapeRef.new(shape: CapacityReservationSpecification, location_name: "CapacityReservationSpecification"))
530
542
  AutoScalingGroup.struct_class = Types::AutoScalingGroup
531
543
 
532
544
  AutoScalingGroupNames.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
@@ -576,6 +588,9 @@ module Aws::AutoScaling
576
588
  BaselineEbsBandwidthMbpsRequest.add_member(:max, Shapes::ShapeRef.new(shape: NullablePositiveInteger, location_name: "Max"))
577
589
  BaselineEbsBandwidthMbpsRequest.struct_class = Types::BaselineEbsBandwidthMbpsRequest
578
590
 
591
+ BaselinePerformanceFactorsRequest.add_member(:cpu, Shapes::ShapeRef.new(shape: CpuPerformanceFactorRequest, location_name: "Cpu"))
592
+ BaselinePerformanceFactorsRequest.struct_class = Types::BaselinePerformanceFactorsRequest
593
+
579
594
  BatchDeleteScheduledActionAnswer.add_member(:failed_scheduled_actions, Shapes::ShapeRef.new(shape: FailedScheduledUpdateGroupActionRequests, location_name: "FailedScheduledActions"))
580
595
  BatchDeleteScheduledActionAnswer.struct_class = Types::BatchDeleteScheduledActionAnswer
581
596
 
@@ -608,6 +623,18 @@ module Aws::AutoScaling
608
623
  CapacityForecast.add_member(:values, Shapes::ShapeRef.new(shape: PredictiveScalingForecastValues, required: true, location_name: "Values"))
609
624
  CapacityForecast.struct_class = Types::CapacityForecast
610
625
 
626
+ CapacityReservationIds.member = Shapes::ShapeRef.new(shape: AsciiStringMaxLen255)
627
+
628
+ CapacityReservationResourceGroupArns.member = Shapes::ShapeRef.new(shape: ResourceName)
629
+
630
+ CapacityReservationSpecification.add_member(:capacity_reservation_preference, Shapes::ShapeRef.new(shape: CapacityReservationPreference, location_name: "CapacityReservationPreference"))
631
+ CapacityReservationSpecification.add_member(:capacity_reservation_target, Shapes::ShapeRef.new(shape: CapacityReservationTarget, location_name: "CapacityReservationTarget"))
632
+ CapacityReservationSpecification.struct_class = Types::CapacityReservationSpecification
633
+
634
+ CapacityReservationTarget.add_member(:capacity_reservation_ids, Shapes::ShapeRef.new(shape: CapacityReservationIds, location_name: "CapacityReservationIds"))
635
+ CapacityReservationTarget.add_member(:capacity_reservation_resource_group_arns, Shapes::ShapeRef.new(shape: CapacityReservationResourceGroupArns, location_name: "CapacityReservationResourceGroupArns"))
636
+ CapacityReservationTarget.struct_class = Types::CapacityReservationTarget
637
+
611
638
  CheckpointPercentages.member = Shapes::ShapeRef.new(shape: NonZeroIntPercent)
612
639
 
613
640
  ClassicLinkVPCSecurityGroups.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen255)
@@ -623,6 +650,9 @@ module Aws::AutoScaling
623
650
 
624
651
  CpuManufacturers.member = Shapes::ShapeRef.new(shape: CpuManufacturer)
625
652
 
653
+ CpuPerformanceFactorRequest.add_member(:references, Shapes::ShapeRef.new(shape: PerformanceFactorReferenceSetRequest, location_name: "Reference"))
654
+ CpuPerformanceFactorRequest.struct_class = Types::CpuPerformanceFactorRequest
655
+
626
656
  CreateAutoScalingGroupType.add_member(:auto_scaling_group_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "AutoScalingGroupName"))
627
657
  CreateAutoScalingGroupType.add_member(:launch_configuration_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "LaunchConfigurationName"))
628
658
  CreateAutoScalingGroupType.add_member(:launch_template, Shapes::ShapeRef.new(shape: LaunchTemplateSpecification, location_name: "LaunchTemplate"))
@@ -654,6 +684,7 @@ module Aws::AutoScaling
654
684
  CreateAutoScalingGroupType.add_member(:availability_zone_distribution, Shapes::ShapeRef.new(shape: AvailabilityZoneDistribution, location_name: "AvailabilityZoneDistribution"))
655
685
  CreateAutoScalingGroupType.add_member(:availability_zone_impairment_policy, Shapes::ShapeRef.new(shape: AvailabilityZoneImpairmentPolicy, location_name: "AvailabilityZoneImpairmentPolicy"))
656
686
  CreateAutoScalingGroupType.add_member(:skip_zonal_shift_validation, Shapes::ShapeRef.new(shape: SkipZonalShiftValidation, location_name: "SkipZonalShiftValidation"))
687
+ CreateAutoScalingGroupType.add_member(:capacity_reservation_specification, Shapes::ShapeRef.new(shape: CapacityReservationSpecification, location_name: "CapacityReservationSpecification"))
657
688
  CreateAutoScalingGroupType.struct_class = Types::CreateAutoScalingGroupType
658
689
 
659
690
  CreateLaunchConfigurationType.add_member(:launch_configuration_name, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, required: true, location_name: "LaunchConfigurationName"))
@@ -685,6 +716,7 @@ module Aws::AutoScaling
685
716
  CustomizedMetricSpecification.add_member(:dimensions, Shapes::ShapeRef.new(shape: MetricDimensions, location_name: "Dimensions"))
686
717
  CustomizedMetricSpecification.add_member(:statistic, Shapes::ShapeRef.new(shape: MetricStatistic, location_name: "Statistic"))
687
718
  CustomizedMetricSpecification.add_member(:unit, Shapes::ShapeRef.new(shape: MetricUnit, location_name: "Unit"))
719
+ CustomizedMetricSpecification.add_member(:period, Shapes::ShapeRef.new(shape: MetricGranularityInSeconds, location_name: "Period"))
688
720
  CustomizedMetricSpecification.add_member(:metrics, Shapes::ShapeRef.new(shape: TargetTrackingMetricDataQueries, location_name: "Metrics"))
689
721
  CustomizedMetricSpecification.struct_class = Types::CustomizedMetricSpecification
690
722
 
@@ -1023,6 +1055,7 @@ module Aws::AutoScaling
1023
1055
  InstanceRequirements.add_member(:accelerator_total_memory_mi_b, Shapes::ShapeRef.new(shape: AcceleratorTotalMemoryMiBRequest, location_name: "AcceleratorTotalMemoryMiB"))
1024
1056
  InstanceRequirements.add_member(:network_bandwidth_gbps, Shapes::ShapeRef.new(shape: NetworkBandwidthGbpsRequest, location_name: "NetworkBandwidthGbps"))
1025
1057
  InstanceRequirements.add_member(:allowed_instance_types, Shapes::ShapeRef.new(shape: AllowedInstanceTypes, location_name: "AllowedInstanceTypes"))
1058
+ InstanceRequirements.add_member(:baseline_performance_factors, Shapes::ShapeRef.new(shape: BaselinePerformanceFactorsRequest, location_name: "BaselinePerformanceFactors"))
1026
1059
  InstanceRequirements.struct_class = Types::InstanceRequirements
1027
1060
 
1028
1061
  InstanceReusePolicy.add_member(:reuse_on_scale_in, Shapes::ShapeRef.new(shape: ReuseOnScaleIn, location_name: "ReuseOnScaleIn"))
@@ -1215,6 +1248,11 @@ module Aws::AutoScaling
1215
1248
 
1216
1249
  Overrides.member = Shapes::ShapeRef.new(shape: LaunchTemplateOverrides)
1217
1250
 
1251
+ PerformanceFactorReferenceRequest.add_member(:instance_family, Shapes::ShapeRef.new(shape: String, location_name: "InstanceFamily"))
1252
+ PerformanceFactorReferenceRequest.struct_class = Types::PerformanceFactorReferenceRequest
1253
+
1254
+ PerformanceFactorReferenceSetRequest.member = Shapes::ShapeRef.new(shape: PerformanceFactorReferenceRequest, location_name: "item")
1255
+
1218
1256
  PoliciesType.add_member(:scaling_policies, Shapes::ShapeRef.new(shape: ScalingPolicies, location_name: "ScalingPolicies"))
1219
1257
  PoliciesType.add_member(:next_token, Shapes::ShapeRef.new(shape: XmlString, location_name: "NextToken"))
1220
1258
  PoliciesType.struct_class = Types::PoliciesType
@@ -1518,12 +1556,14 @@ module Aws::AutoScaling
1518
1556
  TargetTrackingMetricDataQuery.add_member(:expression, Shapes::ShapeRef.new(shape: XmlStringMaxLen2047, location_name: "Expression"))
1519
1557
  TargetTrackingMetricDataQuery.add_member(:metric_stat, Shapes::ShapeRef.new(shape: TargetTrackingMetricStat, location_name: "MetricStat"))
1520
1558
  TargetTrackingMetricDataQuery.add_member(:label, Shapes::ShapeRef.new(shape: XmlStringMetricLabel, location_name: "Label"))
1559
+ TargetTrackingMetricDataQuery.add_member(:period, Shapes::ShapeRef.new(shape: MetricGranularityInSeconds, location_name: "Period"))
1521
1560
  TargetTrackingMetricDataQuery.add_member(:return_data, Shapes::ShapeRef.new(shape: ReturnData, location_name: "ReturnData"))
1522
1561
  TargetTrackingMetricDataQuery.struct_class = Types::TargetTrackingMetricDataQuery
1523
1562
 
1524
1563
  TargetTrackingMetricStat.add_member(:metric, Shapes::ShapeRef.new(shape: Metric, required: true, location_name: "Metric"))
1525
1564
  TargetTrackingMetricStat.add_member(:stat, Shapes::ShapeRef.new(shape: XmlStringMetricStat, required: true, location_name: "Stat"))
1526
1565
  TargetTrackingMetricStat.add_member(:unit, Shapes::ShapeRef.new(shape: MetricUnit, location_name: "Unit"))
1566
+ TargetTrackingMetricStat.add_member(:period, Shapes::ShapeRef.new(shape: MetricGranularityInSeconds, location_name: "Period"))
1527
1567
  TargetTrackingMetricStat.struct_class = Types::TargetTrackingMetricStat
1528
1568
 
1529
1569
  TerminateInstanceInAutoScalingGroupType.add_member(:instance_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen19, required: true, location_name: "InstanceId"))
@@ -1575,6 +1615,7 @@ module Aws::AutoScaling
1575
1615
  UpdateAutoScalingGroupType.add_member(:availability_zone_distribution, Shapes::ShapeRef.new(shape: AvailabilityZoneDistribution, location_name: "AvailabilityZoneDistribution"))
1576
1616
  UpdateAutoScalingGroupType.add_member(:availability_zone_impairment_policy, Shapes::ShapeRef.new(shape: AvailabilityZoneImpairmentPolicy, location_name: "AvailabilityZoneImpairmentPolicy"))
1577
1617
  UpdateAutoScalingGroupType.add_member(:skip_zonal_shift_validation, Shapes::ShapeRef.new(shape: SkipZonalShiftValidation, location_name: "SkipZonalShiftValidation"))
1618
+ UpdateAutoScalingGroupType.add_member(:capacity_reservation_specification, Shapes::ShapeRef.new(shape: CapacityReservationSpecification, location_name: "CapacityReservationSpecification"))
1578
1619
  UpdateAutoScalingGroupType.struct_class = Types::UpdateAutoScalingGroupType
1579
1620
 
1580
1621
  VCpuCountRequest.add_member(:min, Shapes::ShapeRef.new(shape: NullablePositiveInteger, required: true, location_name: "Min"))
@@ -113,6 +113,15 @@ module Aws::AutoScaling
113
113
  # max: 1.0,
114
114
  # },
115
115
  # allowed_instance_types: ["AllowedInstanceType"],
116
+ # baseline_performance_factors: {
117
+ # cpu: {
118
+ # references: [
119
+ # {
120
+ # instance_family: "String",
121
+ # },
122
+ # ],
123
+ # },
124
+ # },
116
125
  # },
117
126
  # },
118
127
  # ],
@@ -184,6 +193,13 @@ module Aws::AutoScaling
184
193
  # impaired_zone_health_check_behavior: "ReplaceUnhealthy", # accepts ReplaceUnhealthy, IgnoreUnhealthy
185
194
  # },
186
195
  # skip_zonal_shift_validation: false,
196
+ # capacity_reservation_specification: {
197
+ # capacity_reservation_preference: "capacity-reservations-only", # accepts capacity-reservations-only, capacity-reservations-first, none, default
198
+ # capacity_reservation_target: {
199
+ # capacity_reservation_ids: ["AsciiStringMaxLen255"],
200
+ # capacity_reservation_resource_group_arns: ["ResourceName"],
201
+ # },
202
+ # },
187
203
  # })
188
204
  # @param [Hash] options ({})
189
205
  # @option options [required, String] :auto_scaling_group_name
@@ -490,6 +506,8 @@ module Aws::AutoScaling
490
506
  #
491
507
  #
492
508
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html
509
+ # @option options [Types::CapacityReservationSpecification] :capacity_reservation_specification
510
+ # The capacity reservation specification for the Auto Scaling group.
493
511
  # @return [AutoScalingGroup]
494
512
  def create_group(options = {})
495
513
  Aws::Plugins::UserAgent.metric('RESOURCE_MODEL') do
@@ -512,6 +512,10 @@ module Aws::AutoScaling
512
512
  # The Availability Zone impairment policy.
513
513
  # @return [Types::AvailabilityZoneImpairmentPolicy]
514
514
  #
515
+ # @!attribute [rw] capacity_reservation_specification
516
+ # The capacity reservation specification.
517
+ # @return [Types::CapacityReservationSpecification]
518
+ #
515
519
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/AutoScalingGroup AWS API Documentation
516
520
  #
517
521
  class AutoScalingGroup < Struct.new(
@@ -551,7 +555,8 @@ module Aws::AutoScaling
551
555
  :traffic_sources,
552
556
  :instance_maintenance_policy,
553
557
  :availability_zone_distribution,
554
- :availability_zone_impairment_policy)
558
+ :availability_zone_impairment_policy,
559
+ :capacity_reservation_specification)
555
560
  SENSITIVE = []
556
561
  include Aws::Structure
557
562
  end
@@ -791,6 +796,30 @@ module Aws::AutoScaling
791
796
  include Aws::Structure
792
797
  end
793
798
 
799
+ # The baseline performance to consider, using an instance family as a
800
+ # baseline reference. The instance family establishes the lowest
801
+ # acceptable level of performance. Auto Scaling uses this baseline to
802
+ # guide instance type selection, but there is no guarantee that the
803
+ # selected instance types will always exceed the baseline for every
804
+ # application.
805
+ #
806
+ # Currently, this parameter only supports CPU performance as a baseline
807
+ # performance factor. For example, specifying `c6i` uses the CPU
808
+ # performance of the `c6i` family as the baseline reference.
809
+ #
810
+ # @!attribute [rw] cpu
811
+ # The CPU performance to consider, using an instance family as the
812
+ # baseline reference.
813
+ # @return [Types::CpuPerformanceFactorRequest]
814
+ #
815
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/BaselinePerformanceFactorsRequest AWS API Documentation
816
+ #
817
+ class BaselinePerformanceFactorsRequest < Struct.new(
818
+ :cpu)
819
+ SENSITIVE = []
820
+ include Aws::Structure
821
+ end
822
+
794
823
  # @!attribute [rw] failed_scheduled_actions
795
824
  # The names of the scheduled actions that could not be deleted,
796
825
  # including an error message.
@@ -949,6 +978,66 @@ module Aws::AutoScaling
949
978
  include Aws::Structure
950
979
  end
951
980
 
981
+ # Describes the Capacity Reservation preference and targeting options.
982
+ # If you specify `open` or `none` for `CapacityReservationPreference`,
983
+ # do not specify a `CapacityReservationTarget`.
984
+ #
985
+ # @!attribute [rw] capacity_reservation_preference
986
+ # The capacity reservation preference. The following options are
987
+ # available:
988
+ #
989
+ # * `capacity-reservations-only` - Auto Scaling will only launch
990
+ # instances into a Capacity Reservation or Capacity Reservation
991
+ # resource group. If capacity isn't available, instances will fail
992
+ # to launch.
993
+ #
994
+ # * `capacity-reservations-first` - Auto Scaling will try to launch
995
+ # instances into a Capacity Reservation or Capacity Reservation
996
+ # resource group first. If capacity isn't available, instances will
997
+ # run in On-Demand capacity.
998
+ #
999
+ # * `none` - Auto Scaling will not launch instances into a Capacity
1000
+ # Reservation. Instances will run in On-Demand capacity.
1001
+ #
1002
+ # * `default` - Auto Scaling uses the Capacity Reservation preference
1003
+ # from your launch template or an open Capacity Reservation.
1004
+ # @return [String]
1005
+ #
1006
+ # @!attribute [rw] capacity_reservation_target
1007
+ # Describes a target Capacity Reservation or Capacity Reservation
1008
+ # resource group.
1009
+ # @return [Types::CapacityReservationTarget]
1010
+ #
1011
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CapacityReservationSpecification AWS API Documentation
1012
+ #
1013
+ class CapacityReservationSpecification < Struct.new(
1014
+ :capacity_reservation_preference,
1015
+ :capacity_reservation_target)
1016
+ SENSITIVE = []
1017
+ include Aws::Structure
1018
+ end
1019
+
1020
+ # The target for the Capacity Reservation. Specify Capacity Reservations
1021
+ # IDs or Capacity Reservation resource group ARNs.
1022
+ #
1023
+ # @!attribute [rw] capacity_reservation_ids
1024
+ # The Capacity Reservation IDs to launch instances into.
1025
+ # @return [Array<String>]
1026
+ #
1027
+ # @!attribute [rw] capacity_reservation_resource_group_arns
1028
+ # The resource group ARNs of the Capacity Reservation to launch
1029
+ # instances into.
1030
+ # @return [Array<String>]
1031
+ #
1032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CapacityReservationTarget AWS API Documentation
1033
+ #
1034
+ class CapacityReservationTarget < Struct.new(
1035
+ :capacity_reservation_ids,
1036
+ :capacity_reservation_resource_group_arns)
1037
+ SENSITIVE = []
1038
+ include Aws::Structure
1039
+ end
1040
+
952
1041
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CompleteLifecycleActionAnswer AWS API Documentation
953
1042
  #
954
1043
  class CompleteLifecycleActionAnswer < Aws::EmptyStructure; end
@@ -989,6 +1078,29 @@ module Aws::AutoScaling
989
1078
  include Aws::Structure
990
1079
  end
991
1080
 
1081
+ # The CPU performance to consider, using an instance family as the
1082
+ # baseline reference.
1083
+ #
1084
+ # @!attribute [rw] references
1085
+ # Specify an instance family to use as the baseline reference for CPU
1086
+ # performance. All instance types that match your specified attributes
1087
+ # will be compared against the CPU performance of the referenced
1088
+ # instance family, regardless of CPU manufacturer or architecture
1089
+ # differences.
1090
+ #
1091
+ # <note markdown="1"> Currently only one instance family can be specified in the list.
1092
+ #
1093
+ # </note>
1094
+ # @return [Array<Types::PerformanceFactorReferenceRequest>]
1095
+ #
1096
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CpuPerformanceFactorRequest AWS API Documentation
1097
+ #
1098
+ class CpuPerformanceFactorRequest < Struct.new(
1099
+ :references)
1100
+ SENSITIVE = []
1101
+ include Aws::Structure
1102
+ end
1103
+
992
1104
  # @!attribute [rw] auto_scaling_group_name
993
1105
  # The name of the Auto Scaling group. This name must be unique per
994
1106
  # Region per account.
@@ -1358,6 +1470,10 @@ module Aws::AutoScaling
1358
1470
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html
1359
1471
  # @return [Boolean]
1360
1472
  #
1473
+ # @!attribute [rw] capacity_reservation_specification
1474
+ # The capacity reservation specification for the Auto Scaling group.
1475
+ # @return [Types::CapacityReservationSpecification]
1476
+ #
1361
1477
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroupType AWS API Documentation
1362
1478
  #
1363
1479
  class CreateAutoScalingGroupType < Struct.new(
@@ -1391,7 +1507,8 @@ module Aws::AutoScaling
1391
1507
  :instance_maintenance_policy,
1392
1508
  :availability_zone_distribution,
1393
1509
  :availability_zone_impairment_policy,
1394
- :skip_zonal_shift_validation)
1510
+ :skip_zonal_shift_validation,
1511
+ :capacity_reservation_specification)
1395
1512
  SENSITIVE = []
1396
1513
  include Aws::Structure
1397
1514
  end
@@ -1746,6 +1863,18 @@ module Aws::AutoScaling
1746
1863
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
1747
1864
  # @return [String]
1748
1865
  #
1866
+ # @!attribute [rw] period
1867
+ # The period of the metric in seconds. The default value is 60.
1868
+ # Accepted values are 10, 30, and 60. For high resolution metric, set
1869
+ # the value to less than 60. For more information, see [Create a
1870
+ # target tracking policy using high-resolution metrics for faster
1871
+ # response][1].
1872
+ #
1873
+ #
1874
+ #
1875
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/policy-creating-high-resolution-metrics.html
1876
+ # @return [Integer]
1877
+ #
1749
1878
  # @!attribute [rw] metrics
1750
1879
  # The metrics to include in the target tracking scaling policy, as a
1751
1880
  # metric data query. This can include both raw metric and metric math
@@ -1760,6 +1889,7 @@ module Aws::AutoScaling
1760
1889
  :dimensions,
1761
1890
  :statistic,
1762
1891
  :unit,
1892
+ :period,
1763
1893
  :metrics)
1764
1894
  SENSITIVE = []
1765
1895
  include Aws::Structure
@@ -4002,6 +4132,10 @@ module Aws::AutoScaling
4002
4132
  # Default: All instance types
4003
4133
  # @return [Array<String>]
4004
4134
  #
4135
+ # @!attribute [rw] baseline_performance_factors
4136
+ # The baseline performance factors for the instance requirements.
4137
+ # @return [Types::BaselinePerformanceFactorsRequest]
4138
+ #
4005
4139
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/InstanceRequirements AWS API Documentation
4006
4140
  #
4007
4141
  class InstanceRequirements < Struct.new(
@@ -4028,7 +4162,8 @@ module Aws::AutoScaling
4028
4162
  :accelerator_names,
4029
4163
  :accelerator_total_memory_mi_b,
4030
4164
  :network_bandwidth_gbps,
4031
- :allowed_instance_types)
4165
+ :allowed_instance_types,
4166
+ :baseline_performance_factors)
4032
4167
  SENSITIVE = []
4033
4168
  include Aws::Structure
4034
4169
  end
@@ -5394,6 +5529,68 @@ module Aws::AutoScaling
5394
5529
  include Aws::Structure
5395
5530
  end
5396
5531
 
5532
+ # Specify an instance family to use as the baseline reference for CPU
5533
+ # performance. All instance types that All instance types that match
5534
+ # your specified attributes will be compared against the CPU performance
5535
+ # of the referenced instance family, regardless of CPU manufacturer or
5536
+ # architecture differences.
5537
+ #
5538
+ # <note markdown="1"> Currently only one instance family can be specified in the list.
5539
+ #
5540
+ # </note>
5541
+ #
5542
+ # @!attribute [rw] instance_family
5543
+ # The instance family to use as a baseline reference.
5544
+ #
5545
+ # <note markdown="1"> Make sure that you specify the correct value for the instance
5546
+ # family. The instance family is everything before the period (.) in
5547
+ # the instance type name. For example, in the instance `c6i.large`,
5548
+ # the instance family is `c6i`, not `c6`. For more information, see
5549
+ # [Amazon EC2 instance type naming conventions][1] in *Amazon EC2
5550
+ # Instance Types*.
5551
+ #
5552
+ # </note>
5553
+ #
5554
+ # The following instance types are *not supported* for performance
5555
+ # protection.
5556
+ #
5557
+ # * `c1`
5558
+ #
5559
+ # * `g3| g3s`
5560
+ #
5561
+ # * `hpc7g`
5562
+ #
5563
+ # * `m1| m2`
5564
+ #
5565
+ # * `mac1 | mac2 | mac2-m1ultra | mac2-m2 | mac2-m2pro`
5566
+ #
5567
+ # * `p3dn | p4d | p5`
5568
+ #
5569
+ # * `t1`
5570
+ #
5571
+ # * `u-12tb1 | u-18tb1 | u-24tb1 | u-3tb1 | u-6tb1 | u-9tb1 | u7i-12tb
5572
+ # | u7in-16tb | u7in-24tb | u7in-32tb`
5573
+ #
5574
+ # If you performance protection by specifying a supported instance
5575
+ # family, the returned instance types will exclude the preceding
5576
+ # unsupported instance families.
5577
+ #
5578
+ # If you specify an unsupported instance family as a value for
5579
+ # baseline performance, the API returns an empty response.
5580
+ #
5581
+ #
5582
+ #
5583
+ # [1]: https://docs.aws.amazon.com/ec2/latest/instancetypes/instance-type-names.html
5584
+ # @return [String]
5585
+ #
5586
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/PerformanceFactorReferenceRequest AWS API Documentation
5587
+ #
5588
+ class PerformanceFactorReferenceRequest < Struct.new(
5589
+ :instance_family)
5590
+ SENSITIVE = []
5591
+ include Aws::Structure
5592
+ end
5593
+
5397
5594
  # @!attribute [rw] scaling_policies
5398
5595
  # The scaling policies.
5399
5596
  # @return [Array<Types::ScalingPolicy>]
@@ -7519,6 +7716,18 @@ module Aws::AutoScaling
7519
7716
  # what the value represents.
7520
7717
  # @return [String]
7521
7718
  #
7719
+ # @!attribute [rw] period
7720
+ # The period of the metric in seconds. The default value is 60.
7721
+ # Accepted values are 10, 30, and 60. For high resolution metric, set
7722
+ # the value to less than 60. For more information, see [Create a
7723
+ # target tracking policy using high-resolution metrics for faster
7724
+ # response][1].
7725
+ #
7726
+ #
7727
+ #
7728
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/policy-creating-high-resolution-metrics.html
7729
+ # @return [Integer]
7730
+ #
7522
7731
  # @!attribute [rw] return_data
7523
7732
  # Indicates whether to return the timestamps and raw data values of
7524
7733
  # this metric.
@@ -7540,6 +7749,7 @@ module Aws::AutoScaling
7540
7749
  :expression,
7541
7750
  :metric_stat,
7542
7751
  :label,
7752
+ :period,
7543
7753
  :return_data)
7544
7754
  SENSITIVE = []
7545
7755
  include Aws::Structure
@@ -7581,12 +7791,25 @@ module Aws::AutoScaling
7581
7791
  # [1]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html
7582
7792
  # @return [String]
7583
7793
  #
7794
+ # @!attribute [rw] period
7795
+ # The period of the metric in seconds. The default value is 60.
7796
+ # Accepted values are 10, 30, and 60. For high resolution metric, set
7797
+ # the value to less than 60. For more information, see [Create a
7798
+ # target tracking policy using high-resolution metrics for faster
7799
+ # response][1].
7800
+ #
7801
+ #
7802
+ #
7803
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/policy-creating-high-resolution-metrics.html
7804
+ # @return [Integer]
7805
+ #
7584
7806
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/TargetTrackingMetricStat AWS API Documentation
7585
7807
  #
7586
7808
  class TargetTrackingMetricStat < Struct.new(
7587
7809
  :metric,
7588
7810
  :stat,
7589
- :unit)
7811
+ :unit,
7812
+ :period)
7590
7813
  SENSITIVE = []
7591
7814
  include Aws::Structure
7592
7815
  end
@@ -8023,6 +8246,10 @@ module Aws::AutoScaling
8023
8246
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-zonal-shift.html
8024
8247
  # @return [Boolean]
8025
8248
  #
8249
+ # @!attribute [rw] capacity_reservation_specification
8250
+ # The capacity reservation specification for the Auto Scaling group.
8251
+ # @return [Types::CapacityReservationSpecification]
8252
+ #
8026
8253
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroupType AWS API Documentation
8027
8254
  #
8028
8255
  class UpdateAutoScalingGroupType < Struct.new(
@@ -8050,7 +8277,8 @@ module Aws::AutoScaling
8050
8277
  :instance_maintenance_policy,
8051
8278
  :availability_zone_distribution,
8052
8279
  :availability_zone_impairment_policy,
8053
- :skip_zonal_shift_validation)
8280
+ :skip_zonal_shift_validation,
8281
+ :capacity_reservation_specification)
8054
8282
  SENSITIVE = []
8055
8283
  include Aws::Structure
8056
8284
  end
@@ -65,7 +65,7 @@ module Aws::AutoScaling
65
65
  autoload :ScheduledAction, 'aws-sdk-autoscaling/scheduled_action'
66
66
  autoload :Tag, 'aws-sdk-autoscaling/tag'
67
67
 
68
- GEM_VERSION = '1.126.0'
68
+ GEM_VERSION = '1.128.0'
69
69
 
70
70
  end
71
71
 
@@ -120,6 +120,9 @@ module Aws
120
120
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AutoScaling/AutoScalingGroup.html#availability_zone_impairment_policy-instance_method
121
121
  def availability_zone_impairment_policy: () -> Types::AvailabilityZoneImpairmentPolicy
122
122
 
123
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AutoScaling/AutoScalingGroup.html#capacity_reservation_specification-instance_method
124
+ def capacity_reservation_specification: () -> Types::CapacityReservationSpecification
125
+
123
126
  def client: () -> Client
124
127
 
125
128
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AutoScaling/AutoScalingGroup.html#load-instance_method
@@ -214,6 +217,7 @@ module Aws
214
217
  ]?,
215
218
  statistic: ("Average" | "Minimum" | "Maximum" | "SampleCount" | "Sum")?,
216
219
  unit: ::String?,
220
+ period: ::Integer?,
217
221
  metrics: Array[
218
222
  {
219
223
  id: ::String,
@@ -230,9 +234,11 @@ module Aws
230
234
  ]?
231
235
  },
232
236
  stat: ::String,
233
- unit: ::String?
237
+ unit: ::String?,
238
+ period: ::Integer?
234
239
  }?,
235
240
  label: ::String?,
241
+ period: ::Integer?,
236
242
  return_data: bool?
237
243
  },
238
244
  ]?
@@ -447,7 +453,16 @@ module Aws
447
453
  min: ::Float?,
448
454
  max: ::Float?
449
455
  }?,
450
- allowed_instance_types: Array[::String]?
456
+ allowed_instance_types: Array[::String]?,
457
+ baseline_performance_factors: {
458
+ cpu: {
459
+ references: Array[
460
+ {
461
+ instance_family: ::String?
462
+ },
463
+ ]?
464
+ }?
465
+ }?
451
466
  }?
452
467
  },
453
468
  ]?
@@ -489,7 +504,14 @@ module Aws
489
504
  zonal_shift_enabled: bool?,
490
505
  impaired_zone_health_check_behavior: ("ReplaceUnhealthy" | "IgnoreUnhealthy")?
491
506
  },
492
- ?skip_zonal_shift_validation: bool
507
+ ?skip_zonal_shift_validation: bool,
508
+ ?capacity_reservation_specification: {
509
+ capacity_reservation_preference: ("capacity-reservations-only" | "capacity-reservations-first" | "none" | "default")?,
510
+ capacity_reservation_target: {
511
+ capacity_reservation_ids: Array[::String]?,
512
+ capacity_reservation_resource_group_arns: Array[::String]?
513
+ }?
514
+ }
493
515
  ) -> AutoScalingGroup
494
516
  | (?Hash[Symbol, untyped]) -> AutoScalingGroup
495
517
 
data/sig/client.rbs CHANGED
@@ -250,7 +250,16 @@ module Aws
250
250
  min: ::Float?,
251
251
  max: ::Float?
252
252
  }?,
253
- allowed_instance_types: Array[::String]?
253
+ allowed_instance_types: Array[::String]?,
254
+ baseline_performance_factors: {
255
+ cpu: {
256
+ references: Array[
257
+ {
258
+ instance_family: ::String?
259
+ },
260
+ ]?
261
+ }?
262
+ }?
254
263
  }?
255
264
  },
256
265
  ]?
@@ -321,7 +330,14 @@ module Aws
321
330
  zonal_shift_enabled: bool?,
322
331
  impaired_zone_health_check_behavior: ("ReplaceUnhealthy" | "IgnoreUnhealthy")?
323
332
  },
324
- ?skip_zonal_shift_validation: bool
333
+ ?skip_zonal_shift_validation: bool,
334
+ ?capacity_reservation_specification: {
335
+ capacity_reservation_preference: ("capacity-reservations-only" | "capacity-reservations-first" | "none" | "default")?,
336
+ capacity_reservation_target: {
337
+ capacity_reservation_ids: Array[::String]?,
338
+ capacity_reservation_resource_group_arns: Array[::String]?
339
+ }?
340
+ }
325
341
  ) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
326
342
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
327
343
 
@@ -887,6 +903,7 @@ module Aws
887
903
  ]?,
888
904
  statistic: ("Average" | "Minimum" | "Maximum" | "SampleCount" | "Sum")?,
889
905
  unit: ::String?,
906
+ period: ::Integer?,
890
907
  metrics: Array[
891
908
  {
892
909
  id: ::String,
@@ -903,9 +920,11 @@ module Aws
903
920
  ]?
904
921
  },
905
922
  stat: ::String,
906
- unit: ::String?
923
+ unit: ::String?,
924
+ period: ::Integer?
907
925
  }?,
908
926
  label: ::String?,
927
+ period: ::Integer?,
909
928
  return_data: bool?
910
929
  },
911
930
  ]?
@@ -1179,7 +1198,16 @@ module Aws
1179
1198
  min: ::Float?,
1180
1199
  max: ::Float?
1181
1200
  }?,
1182
- allowed_instance_types: Array[::String]?
1201
+ allowed_instance_types: Array[::String]?,
1202
+ baseline_performance_factors: {
1203
+ cpu: {
1204
+ references: Array[
1205
+ {
1206
+ instance_family: ::String?
1207
+ },
1208
+ ]?
1209
+ }?
1210
+ }?
1183
1211
  }?
1184
1212
  },
1185
1213
  ]?
@@ -1306,7 +1334,16 @@ module Aws
1306
1334
  min: ::Float?,
1307
1335
  max: ::Float?
1308
1336
  }?,
1309
- allowed_instance_types: Array[::String]?
1337
+ allowed_instance_types: Array[::String]?,
1338
+ baseline_performance_factors: {
1339
+ cpu: {
1340
+ references: Array[
1341
+ {
1342
+ instance_family: ::String?
1343
+ },
1344
+ ]?
1345
+ }?
1346
+ }?
1310
1347
  }?
1311
1348
  },
1312
1349
  ]?
@@ -1348,7 +1385,14 @@ module Aws
1348
1385
  zonal_shift_enabled: bool?,
1349
1386
  impaired_zone_health_check_behavior: ("ReplaceUnhealthy" | "IgnoreUnhealthy")?
1350
1387
  },
1351
- ?skip_zonal_shift_validation: bool
1388
+ ?skip_zonal_shift_validation: bool,
1389
+ ?capacity_reservation_specification: {
1390
+ capacity_reservation_preference: ("capacity-reservations-only" | "capacity-reservations-first" | "none" | "default")?,
1391
+ capacity_reservation_target: {
1392
+ capacity_reservation_ids: Array[::String]?,
1393
+ capacity_reservation_resource_group_arns: Array[::String]?
1394
+ }?
1395
+ }
1352
1396
  ) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
1353
1397
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> ::Seahorse::Client::_ResponseSuccess[::Aws::EmptyStructure]
1354
1398
 
data/sig/resource.rbs CHANGED
@@ -153,7 +153,16 @@ module Aws
153
153
  min: ::Float?,
154
154
  max: ::Float?
155
155
  }?,
156
- allowed_instance_types: Array[::String]?
156
+ allowed_instance_types: Array[::String]?,
157
+ baseline_performance_factors: {
158
+ cpu: {
159
+ references: Array[
160
+ {
161
+ instance_family: ::String?
162
+ },
163
+ ]?
164
+ }?
165
+ }?
157
166
  }?
158
167
  },
159
168
  ]?
@@ -224,7 +233,14 @@ module Aws
224
233
  zonal_shift_enabled: bool?,
225
234
  impaired_zone_health_check_behavior: ("ReplaceUnhealthy" | "IgnoreUnhealthy")?
226
235
  },
227
- ?skip_zonal_shift_validation: bool
236
+ ?skip_zonal_shift_validation: bool,
237
+ ?capacity_reservation_specification: {
238
+ capacity_reservation_preference: ("capacity-reservations-only" | "capacity-reservations-first" | "none" | "default")?,
239
+ capacity_reservation_target: {
240
+ capacity_reservation_ids: Array[::String]?,
241
+ capacity_reservation_resource_group_arns: Array[::String]?
242
+ }?
243
+ }
228
244
  ) -> AutoScalingGroup
229
245
  | (?Hash[Symbol, untyped]) -> AutoScalingGroup
230
246
 
data/sig/types.rbs CHANGED
@@ -145,6 +145,7 @@ module Aws::AutoScaling
145
145
  attr_accessor instance_maintenance_policy: Types::InstanceMaintenancePolicy
146
146
  attr_accessor availability_zone_distribution: Types::AvailabilityZoneDistribution
147
147
  attr_accessor availability_zone_impairment_policy: Types::AvailabilityZoneImpairmentPolicy
148
+ attr_accessor capacity_reservation_specification: Types::CapacityReservationSpecification
148
149
  SENSITIVE: []
149
150
  end
150
151
 
@@ -199,6 +200,11 @@ module Aws::AutoScaling
199
200
  SENSITIVE: []
200
201
  end
201
202
 
203
+ class BaselinePerformanceFactorsRequest
204
+ attr_accessor cpu: Types::CpuPerformanceFactorRequest
205
+ SENSITIVE: []
206
+ end
207
+
202
208
  class BatchDeleteScheduledActionAnswer
203
209
  attr_accessor failed_scheduled_actions: ::Array[Types::FailedScheduledUpdateGroupActionRequest]
204
210
  SENSITIVE: []
@@ -245,6 +251,18 @@ module Aws::AutoScaling
245
251
  SENSITIVE: []
246
252
  end
247
253
 
254
+ class CapacityReservationSpecification
255
+ attr_accessor capacity_reservation_preference: ("capacity-reservations-only" | "capacity-reservations-first" | "none" | "default")
256
+ attr_accessor capacity_reservation_target: Types::CapacityReservationTarget
257
+ SENSITIVE: []
258
+ end
259
+
260
+ class CapacityReservationTarget
261
+ attr_accessor capacity_reservation_ids: ::Array[::String]
262
+ attr_accessor capacity_reservation_resource_group_arns: ::Array[::String]
263
+ SENSITIVE: []
264
+ end
265
+
248
266
  class CompleteLifecycleActionAnswer < Aws::EmptyStructure
249
267
  end
250
268
 
@@ -257,6 +275,11 @@ module Aws::AutoScaling
257
275
  SENSITIVE: []
258
276
  end
259
277
 
278
+ class CpuPerformanceFactorRequest
279
+ attr_accessor references: ::Array[Types::PerformanceFactorReferenceRequest]
280
+ SENSITIVE: []
281
+ end
282
+
260
283
  class CreateAutoScalingGroupType
261
284
  attr_accessor auto_scaling_group_name: ::String
262
285
  attr_accessor launch_configuration_name: ::String
@@ -289,6 +312,7 @@ module Aws::AutoScaling
289
312
  attr_accessor availability_zone_distribution: Types::AvailabilityZoneDistribution
290
313
  attr_accessor availability_zone_impairment_policy: Types::AvailabilityZoneImpairmentPolicy
291
314
  attr_accessor skip_zonal_shift_validation: bool
315
+ attr_accessor capacity_reservation_specification: Types::CapacityReservationSpecification
292
316
  SENSITIVE: []
293
317
  end
294
318
 
@@ -326,6 +350,7 @@ module Aws::AutoScaling
326
350
  attr_accessor dimensions: ::Array[Types::MetricDimension]
327
351
  attr_accessor statistic: ("Average" | "Minimum" | "Maximum" | "SampleCount" | "Sum")
328
352
  attr_accessor unit: ::String
353
+ attr_accessor period: ::Integer
329
354
  attr_accessor metrics: ::Array[Types::TargetTrackingMetricDataQuery]
330
355
  SENSITIVE: []
331
356
  end
@@ -775,6 +800,7 @@ module Aws::AutoScaling
775
800
  attr_accessor accelerator_total_memory_mi_b: Types::AcceleratorTotalMemoryMiBRequest
776
801
  attr_accessor network_bandwidth_gbps: Types::NetworkBandwidthGbpsRequest
777
802
  attr_accessor allowed_instance_types: ::Array[::String]
803
+ attr_accessor baseline_performance_factors: Types::BaselinePerformanceFactorsRequest
778
804
  SENSITIVE: []
779
805
  end
780
806
 
@@ -990,6 +1016,11 @@ module Aws::AutoScaling
990
1016
  SENSITIVE: []
991
1017
  end
992
1018
 
1019
+ class PerformanceFactorReferenceRequest
1020
+ attr_accessor instance_family: ::String
1021
+ SENSITIVE: []
1022
+ end
1023
+
993
1024
  class PoliciesType
994
1025
  attr_accessor scaling_policies: ::Array[Types::ScalingPolicy]
995
1026
  attr_accessor next_token: ::String
@@ -1348,6 +1379,7 @@ module Aws::AutoScaling
1348
1379
  attr_accessor expression: ::String
1349
1380
  attr_accessor metric_stat: Types::TargetTrackingMetricStat
1350
1381
  attr_accessor label: ::String
1382
+ attr_accessor period: ::Integer
1351
1383
  attr_accessor return_data: bool
1352
1384
  SENSITIVE: []
1353
1385
  end
@@ -1356,6 +1388,7 @@ module Aws::AutoScaling
1356
1388
  attr_accessor metric: Types::Metric
1357
1389
  attr_accessor stat: ::String
1358
1390
  attr_accessor unit: ::String
1391
+ attr_accessor period: ::Integer
1359
1392
  SENSITIVE: []
1360
1393
  end
1361
1394
 
@@ -1411,6 +1444,7 @@ module Aws::AutoScaling
1411
1444
  attr_accessor availability_zone_distribution: Types::AvailabilityZoneDistribution
1412
1445
  attr_accessor availability_zone_impairment_policy: Types::AvailabilityZoneImpairmentPolicy
1413
1446
  attr_accessor skip_zonal_shift_validation: bool
1447
+ attr_accessor capacity_reservation_specification: Types::CapacityReservationSpecification
1414
1448
  SENSITIVE: []
1415
1449
  end
1416
1450
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-autoscaling
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.126.0
4
+ version: 1.128.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-11-18 00:00:00.000000000 Z
11
+ date: 2024-11-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core