aws-sdk-autoscaling 1.70.0 → 1.74.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.
@@ -275,6 +275,15 @@ module Aws::AutoScaling
275
275
  # ** Please note ** When response stubbing is enabled, no HTTP
276
276
  # requests are made, and retries are disabled.
277
277
  #
278
+ # @option options [Boolean] :use_dualstack_endpoint
279
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
280
+ # will be used if available.
281
+ #
282
+ # @option options [Boolean] :use_fips_endpoint
283
+ # When set to `true`, fips compatible endpoints will be used if available.
284
+ # When a `fips` region is used, the region is normalized and this config
285
+ # is set to `true`.
286
+ #
278
287
  # @option options [Boolean] :validate_params (true)
279
288
  # When `true`, request parameters are validated before
280
289
  # sending the request.
@@ -401,6 +410,9 @@ module Aws::AutoScaling
401
410
  # DescribeLoadBalancerTargetGroups API. To detach the target group from
402
411
  # the Auto Scaling group, call the DetachLoadBalancerTargetGroups API.
403
412
  #
413
+ # This operation is additive and does not detach existing target groups
414
+ # or Classic Load Balancers from the Auto Scaling group.
415
+ #
404
416
  # For more information, see [Elastic Load Balancing and Amazon EC2 Auto
405
417
  # Scaling][1] in the *Amazon EC2 Auto Scaling User Guide*.
406
418
  #
@@ -464,6 +476,9 @@ module Aws::AutoScaling
464
476
  # DescribeLoadBalancers API. To detach the load balancer from the Auto
465
477
  # Scaling group, call the DetachLoadBalancers API.
466
478
  #
479
+ # This operation is additive and does not detach existing Classic Load
480
+ # Balancers or target groups from the Auto Scaling group.
481
+ #
467
482
  # For more information, see [Elastic Load Balancing and Amazon EC2 Auto
468
483
  # Scaling][1] in the *Amazon EC2 Auto Scaling User Guide*.
469
484
  #
@@ -650,9 +665,9 @@ module Aws::AutoScaling
650
665
  # This step is a part of the procedure for adding a lifecycle hook to an
651
666
  # Auto Scaling group:
652
667
  #
653
- # 1. (Optional) Create a Lambda function and a rule that allows
654
- # CloudWatch Events to invoke your Lambda function when Amazon EC2
655
- # Auto Scaling launches or terminates instances.
668
+ # 1. (Optional) Create a Lambda function and a rule that allows Amazon
669
+ # EventBridge to invoke your Lambda function when Amazon EC2 Auto
670
+ # Scaling launches or terminates instances.
656
671
  #
657
672
  # 2. (Optional) Create a notification target and an IAM role. The
658
673
  # target can be either an Amazon SQS queue or an Amazon SNS topic.
@@ -665,8 +680,8 @@ module Aws::AutoScaling
665
680
  # 4. If you need more time, record the lifecycle action heartbeat to
666
681
  # keep the instance in a pending state.
667
682
  #
668
- # 5. **If you finish before the timeout period ends, complete the
669
- # lifecycle action.**
683
+ # 5. **If you finish before the timeout period ends, send a callback by
684
+ # using the CompleteLifecycleAction API call.**
670
685
  #
671
686
  # For more information, see [Amazon EC2 Auto Scaling lifecycle hooks][1]
672
687
  # in the *Amazon EC2 Auto Scaling User Guide*.
@@ -790,24 +805,15 @@ module Aws::AutoScaling
790
805
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html
791
806
  #
792
807
  # @option params [Types::MixedInstancesPolicy] :mixed_instances_policy
793
- # An embedded object that specifies a mixed instances policy. The
794
- # required properties must be specified. If optional properties are
795
- # unspecified, their default values are used.
796
- #
797
- # The policy includes properties that not only define the distribution
798
- # of On-Demand Instances and Spot Instances, the maximum price to pay
799
- # for Spot Instances, and how the Auto Scaling group allocates instance
800
- # types to fulfill On-Demand and Spot capacities, but also the
801
- # properties that specify the instance configuration information—the
802
- # launch template and instance types. The policy can also include a
803
- # weight for each instance type and different launch templates for
804
- # individual instance types. For more information, see [Auto Scaling
805
- # groups with multiple instance types and purchase options][1] in the
806
- # *Amazon EC2 Auto Scaling User Guide*.
808
+ # An embedded object that specifies a mixed instances policy.
807
809
  #
810
+ # For more information, see [Auto Scaling groups with multiple instance
811
+ # types and purchase options][1] in the *Amazon EC2 Auto Scaling User
812
+ # Guide*.
808
813
  #
809
814
  #
810
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
815
+ #
816
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
811
817
  #
812
818
  # @option params [String] :instance_id
813
819
  # The ID of the instance used to base the launch configuration on. If
@@ -898,10 +904,9 @@ module Aws::AutoScaling
898
904
  # @option params [Integer] :health_check_grace_period
899
905
  # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
900
906
  # before checking the health status of an EC2 instance that has come
901
- # into service. During this time, any health check failures for the
902
- # instance are ignored. The default value is `0`. For more information,
903
- # see [Health check grace period][1] in the *Amazon EC2 Auto Scaling
904
- # User Guide*.
907
+ # into service and marking it unhealthy due to a failed health check.
908
+ # The default value is `0`. For more information, see [Health check
909
+ # grace period][1] in the *Amazon EC2 Auto Scaling User Guide*.
905
910
  #
906
911
  # Conditional: Required if you are adding an `ELB` health check.
907
912
  #
@@ -946,12 +951,12 @@ module Aws::AutoScaling
946
951
  # Indicates whether newly launched instances are protected from
947
952
  # termination by Amazon EC2 Auto Scaling when scaling in. For more
948
953
  # information about preventing instances from terminating on scale in,
949
- # see [Instance scale-in protection][1] in the *Amazon EC2 Auto Scaling
950
- # User Guide*.
954
+ # see [Using instance scale-in protection][1] in the *Amazon EC2 Auto
955
+ # Scaling User Guide*.
951
956
  #
952
957
  #
953
958
  #
954
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection
959
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html
955
960
  #
956
961
  # @option params [Boolean] :capacity_rebalance
957
962
  # Indicates whether Capacity Rebalancing is enabled. Otherwise, Capacity
@@ -964,7 +969,7 @@ module Aws::AutoScaling
964
969
  #
965
970
  #
966
971
  #
967
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html
972
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html
968
973
  #
969
974
  # @option params [Array<Types::LifecycleHookSpecification>] :lifecycle_hook_specification_list
970
975
  # One or more lifecycle hooks for the group, which specify actions to
@@ -1011,6 +1016,22 @@ module Aws::AutoScaling
1011
1016
  # @option params [String] :context
1012
1017
  # Reserved.
1013
1018
  #
1019
+ # @option params [String] :desired_capacity_type
1020
+ # The unit of measurement for the value specified for desired capacity.
1021
+ # Amazon EC2 Auto Scaling supports `DesiredCapacityType` for
1022
+ # attribute-based instance type selection only. For more information,
1023
+ # see [Creating an Auto Scaling group using attribute-based instance
1024
+ # type selection][1] in the *Amazon EC2 Auto Scaling User Guide*.
1025
+ #
1026
+ # By default, Amazon EC2 Auto Scaling specifies `units`, which
1027
+ # translates into number of instances.
1028
+ #
1029
+ # Valid values: `units` \| `vcpu` \| `memory-mib`
1030
+ #
1031
+ #
1032
+ #
1033
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
1034
+ #
1014
1035
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1015
1036
  #
1016
1037
  #
@@ -1117,6 +1138,53 @@ module Aws::AutoScaling
1117
1138
  # launch_template_name: "LaunchTemplateName",
1118
1139
  # version: "XmlStringMaxLen255",
1119
1140
  # },
1141
+ # instance_requirements: {
1142
+ # v_cpu_count: { # required
1143
+ # min: 1, # required
1144
+ # max: 1,
1145
+ # },
1146
+ # memory_mi_b: { # required
1147
+ # min: 1, # required
1148
+ # max: 1,
1149
+ # },
1150
+ # cpu_manufacturers: ["intel"], # accepts intel, amd, amazon-web-services
1151
+ # memory_gi_b_per_v_cpu: {
1152
+ # min: 1.0,
1153
+ # max: 1.0,
1154
+ # },
1155
+ # excluded_instance_types: ["ExcludedInstance"],
1156
+ # instance_generations: ["current"], # accepts current, previous
1157
+ # spot_max_price_percentage_over_lowest_price: 1,
1158
+ # on_demand_max_price_percentage_over_lowest_price: 1,
1159
+ # bare_metal: "included", # accepts included, excluded, required
1160
+ # burstable_performance: "included", # accepts included, excluded, required
1161
+ # require_hibernate_support: false,
1162
+ # network_interface_count: {
1163
+ # min: 1,
1164
+ # max: 1,
1165
+ # },
1166
+ # local_storage: "included", # accepts included, excluded, required
1167
+ # local_storage_types: ["hdd"], # accepts hdd, ssd
1168
+ # total_local_storage_gb: {
1169
+ # min: 1.0,
1170
+ # max: 1.0,
1171
+ # },
1172
+ # baseline_ebs_bandwidth_mbps: {
1173
+ # min: 1,
1174
+ # max: 1,
1175
+ # },
1176
+ # accelerator_types: ["gpu"], # accepts gpu, fpga, inference
1177
+ # accelerator_count: {
1178
+ # min: 1,
1179
+ # max: 1,
1180
+ # },
1181
+ # accelerator_manufacturers: ["nvidia"], # accepts nvidia, amd, amazon-web-services, xilinx
1182
+ # accelerator_names: ["a100"], # accepts a100, v100, k80, t4, m60, radeon-pro-v520, vu9p
1183
+ # accelerator_total_memory_mi_b: {
1184
+ # min: 1,
1185
+ # max: 1,
1186
+ # },
1187
+ # },
1120
1188
  # },
1121
1189
  # ],
1122
1190
  # },
@@ -1167,6 +1235,7 @@ module Aws::AutoScaling
1167
1235
  # service_linked_role_arn: "ResourceName",
1168
1236
  # max_instance_lifetime: 1,
1169
1237
  # context: "Context",
1238
+ # desired_capacity_type: "XmlStringMaxLen255",
1170
1239
  # })
1171
1240
  #
1172
1241
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/CreateAutoScalingGroup AWS API Documentation
@@ -1718,8 +1787,7 @@ module Aws::AutoScaling
1718
1787
  # The name of the Auto Scaling group.
1719
1788
  #
1720
1789
  # @option params [required, String] :topic_arn
1721
- # The Amazon Resource Name (ARN) of the Amazon Simple Notification
1722
- # Service (Amazon SNS) topic.
1790
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic.
1723
1791
  #
1724
1792
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1725
1793
  #
@@ -2144,6 +2212,42 @@ module Aws::AutoScaling
2144
2212
  # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].launch_template_specification.launch_template_id #=> String
2145
2213
  # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].launch_template_specification.launch_template_name #=> String
2146
2214
  # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].launch_template_specification.version #=> String
2215
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.v_cpu_count.min #=> Integer
2216
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.v_cpu_count.max #=> Integer
2217
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.memory_mi_b.min #=> Integer
2218
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.memory_mi_b.max #=> Integer
2219
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.cpu_manufacturers #=> Array
2220
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.cpu_manufacturers[0] #=> String, one of "intel", "amd", "amazon-web-services"
2221
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.memory_gi_b_per_v_cpu.min #=> Float
2222
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.memory_gi_b_per_v_cpu.max #=> Float
2223
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.excluded_instance_types #=> Array
2224
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.excluded_instance_types[0] #=> String
2225
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.instance_generations #=> Array
2226
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.instance_generations[0] #=> String, one of "current", "previous"
2227
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.spot_max_price_percentage_over_lowest_price #=> Integer
2228
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.on_demand_max_price_percentage_over_lowest_price #=> Integer
2229
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.bare_metal #=> String, one of "included", "excluded", "required"
2230
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.burstable_performance #=> String, one of "included", "excluded", "required"
2231
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.require_hibernate_support #=> Boolean
2232
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.network_interface_count.min #=> Integer
2233
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.network_interface_count.max #=> Integer
2234
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.local_storage #=> String, one of "included", "excluded", "required"
2235
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.local_storage_types #=> Array
2236
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.local_storage_types[0] #=> String, one of "hdd", "ssd"
2237
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.total_local_storage_gb.min #=> Float
2238
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.total_local_storage_gb.max #=> Float
2239
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.baseline_ebs_bandwidth_mbps.min #=> Integer
2240
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.baseline_ebs_bandwidth_mbps.max #=> Integer
2241
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_types #=> Array
2242
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_types[0] #=> String, one of "gpu", "fpga", "inference"
2243
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_count.min #=> Integer
2244
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_count.max #=> Integer
2245
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_manufacturers #=> Array
2246
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_manufacturers[0] #=> String, one of "nvidia", "amd", "amazon-web-services", "xilinx"
2247
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_names #=> Array
2248
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_names[0] #=> String, one of "a100", "v100", "k80", "t4", "m60", "radeon-pro-v520", "vu9p"
2249
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_total_memory_mi_b.min #=> Integer
2250
+ # resp.auto_scaling_groups[0].mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_total_memory_mi_b.max #=> Integer
2147
2251
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.on_demand_allocation_strategy #=> String
2148
2252
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.on_demand_base_capacity #=> Integer
2149
2253
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.on_demand_percentage_above_base_capacity #=> Integer
@@ -2203,6 +2307,7 @@ module Aws::AutoScaling
2203
2307
  # resp.auto_scaling_groups[0].warm_pool_configuration.status #=> String, one of "PendingDelete"
2204
2308
  # resp.auto_scaling_groups[0].warm_pool_size #=> Integer
2205
2309
  # resp.auto_scaling_groups[0].context #=> String
2310
+ # resp.auto_scaling_groups[0].desired_capacity_type #=> String
2206
2311
  # resp.next_token #=> String
2207
2312
  #
2208
2313
  #
@@ -2474,6 +2579,42 @@ module Aws::AutoScaling
2474
2579
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].launch_template_specification.launch_template_id #=> String
2475
2580
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].launch_template_specification.launch_template_name #=> String
2476
2581
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].launch_template_specification.version #=> String
2582
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.v_cpu_count.min #=> Integer
2583
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.v_cpu_count.max #=> Integer
2584
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.memory_mi_b.min #=> Integer
2585
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.memory_mi_b.max #=> Integer
2586
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.cpu_manufacturers #=> Array
2587
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.cpu_manufacturers[0] #=> String, one of "intel", "amd", "amazon-web-services"
2588
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.memory_gi_b_per_v_cpu.min #=> Float
2589
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.memory_gi_b_per_v_cpu.max #=> Float
2590
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.excluded_instance_types #=> Array
2591
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.excluded_instance_types[0] #=> String
2592
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.instance_generations #=> Array
2593
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.instance_generations[0] #=> String, one of "current", "previous"
2594
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.spot_max_price_percentage_over_lowest_price #=> Integer
2595
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.on_demand_max_price_percentage_over_lowest_price #=> Integer
2596
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.bare_metal #=> String, one of "included", "excluded", "required"
2597
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.burstable_performance #=> String, one of "included", "excluded", "required"
2598
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.require_hibernate_support #=> Boolean
2599
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.network_interface_count.min #=> Integer
2600
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.network_interface_count.max #=> Integer
2601
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.local_storage #=> String, one of "included", "excluded", "required"
2602
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.local_storage_types #=> Array
2603
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.local_storage_types[0] #=> String, one of "hdd", "ssd"
2604
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.total_local_storage_gb.min #=> Float
2605
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.total_local_storage_gb.max #=> Float
2606
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.baseline_ebs_bandwidth_mbps.min #=> Integer
2607
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.baseline_ebs_bandwidth_mbps.max #=> Integer
2608
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_types #=> Array
2609
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_types[0] #=> String, one of "gpu", "fpga", "inference"
2610
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_count.min #=> Integer
2611
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_count.max #=> Integer
2612
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_manufacturers #=> Array
2613
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_manufacturers[0] #=> String, one of "nvidia", "amd", "amazon-web-services", "xilinx"
2614
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_names #=> Array
2615
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_names[0] #=> String, one of "a100", "v100", "k80", "t4", "m60", "radeon-pro-v520", "vu9p"
2616
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_total_memory_mi_b.min #=> Integer
2617
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.launch_template.overrides[0].instance_requirements.accelerator_total_memory_mi_b.max #=> Integer
2477
2618
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_allocation_strategy #=> String
2478
2619
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_base_capacity #=> Integer
2479
2620
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.on_demand_percentage_above_base_capacity #=> Integer
@@ -3161,6 +3302,42 @@ module Aws::AutoScaling
3161
3302
  # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].predefined_scaling_metric_specification.resource_label #=> String
3162
3303
  # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].predefined_load_metric_specification.predefined_metric_type #=> String, one of "ASGTotalCPUUtilization", "ASGTotalNetworkIn", "ASGTotalNetworkOut", "ALBTargetGroupRequestCount"
3163
3304
  # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].predefined_load_metric_specification.resource_label #=> String
3305
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries #=> Array
3306
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].id #=> String
3307
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].expression #=> String
3308
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.namespace #=> String
3309
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.metric_name #=> String
3310
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions #=> Array
3311
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].name #=> String
3312
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].value #=> String
3313
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].metric_stat.stat #=> String
3314
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].metric_stat.unit #=> String
3315
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].label #=> String
3316
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_scaling_metric_specification.metric_data_queries[0].return_data #=> Boolean
3317
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries #=> Array
3318
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].id #=> String
3319
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].expression #=> String
3320
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.namespace #=> String
3321
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.metric_name #=> String
3322
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions #=> Array
3323
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].name #=> String
3324
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].value #=> String
3325
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].metric_stat.stat #=> String
3326
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].metric_stat.unit #=> String
3327
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].label #=> String
3328
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_load_metric_specification.metric_data_queries[0].return_data #=> Boolean
3329
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries #=> Array
3330
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].id #=> String
3331
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].expression #=> String
3332
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.namespace #=> String
3333
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.metric_name #=> String
3334
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions #=> Array
3335
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].name #=> String
3336
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].value #=> String
3337
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].metric_stat.stat #=> String
3338
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].metric_stat.unit #=> String
3339
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].label #=> String
3340
+ # resp.scaling_policies[0].predictive_scaling_configuration.metric_specifications[0].customized_capacity_metric_specification.metric_data_queries[0].return_data #=> Boolean
3164
3341
  # resp.scaling_policies[0].predictive_scaling_configuration.mode #=> String, one of "ForecastAndScale", "ForecastOnly"
3165
3342
  # resp.scaling_policies[0].predictive_scaling_configuration.scheduling_buffer_time #=> Integer
3166
3343
  # resp.scaling_policies[0].predictive_scaling_configuration.max_capacity_breach_behavior #=> String, one of "HonorMaxCapacity", "IncreaseMaxCapacity"
@@ -4344,6 +4521,42 @@ module Aws::AutoScaling
4344
4521
  # resp.load_forecast[0].metric_specification.predefined_scaling_metric_specification.resource_label #=> String
4345
4522
  # resp.load_forecast[0].metric_specification.predefined_load_metric_specification.predefined_metric_type #=> String, one of "ASGTotalCPUUtilization", "ASGTotalNetworkIn", "ASGTotalNetworkOut", "ALBTargetGroupRequestCount"
4346
4523
  # resp.load_forecast[0].metric_specification.predefined_load_metric_specification.resource_label #=> String
4524
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries #=> Array
4525
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].id #=> String
4526
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].expression #=> String
4527
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.namespace #=> String
4528
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.metric_name #=> String
4529
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions #=> Array
4530
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].name #=> String
4531
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].value #=> String
4532
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].metric_stat.stat #=> String
4533
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].metric_stat.unit #=> String
4534
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].label #=> String
4535
+ # resp.load_forecast[0].metric_specification.customized_scaling_metric_specification.metric_data_queries[0].return_data #=> Boolean
4536
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries #=> Array
4537
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].id #=> String
4538
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].expression #=> String
4539
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.namespace #=> String
4540
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.metric_name #=> String
4541
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions #=> Array
4542
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].name #=> String
4543
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].value #=> String
4544
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].metric_stat.stat #=> String
4545
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].metric_stat.unit #=> String
4546
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].label #=> String
4547
+ # resp.load_forecast[0].metric_specification.customized_load_metric_specification.metric_data_queries[0].return_data #=> Boolean
4548
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries #=> Array
4549
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].id #=> String
4550
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].expression #=> String
4551
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.namespace #=> String
4552
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.metric_name #=> String
4553
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions #=> Array
4554
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].name #=> String
4555
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].metric_stat.metric.dimensions[0].value #=> String
4556
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].metric_stat.stat #=> String
4557
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].metric_stat.unit #=> String
4558
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].label #=> String
4559
+ # resp.load_forecast[0].metric_specification.customized_capacity_metric_specification.metric_data_queries[0].return_data #=> Boolean
4347
4560
  # resp.capacity_forecast.timestamps #=> Array
4348
4561
  # resp.capacity_forecast.timestamps[0] #=> Time
4349
4562
  # resp.capacity_forecast.values #=> Array
@@ -4362,16 +4575,16 @@ module Aws::AutoScaling
4362
4575
  # Creates or updates a lifecycle hook for the specified Auto Scaling
4363
4576
  # group.
4364
4577
  #
4365
- # A lifecycle hook tells Amazon EC2 Auto Scaling to perform an action on
4366
- # an instance when the instance launches (before it is put into service)
4367
- # or as the instance terminates (before it is fully terminated).
4578
+ # A lifecycle hook enables an Auto Scaling group to be aware of events
4579
+ # in the Auto Scaling instance lifecycle, and then perform a custom
4580
+ # action when the corresponding lifecycle event occurs.
4368
4581
  #
4369
4582
  # This step is a part of the procedure for adding a lifecycle hook to an
4370
4583
  # Auto Scaling group:
4371
4584
  #
4372
- # 1. (Optional) Create a Lambda function and a rule that allows
4373
- # CloudWatch Events to invoke your Lambda function when Amazon EC2
4374
- # Auto Scaling launches or terminates instances.
4585
+ # 1. (Optional) Create a Lambda function and a rule that allows Amazon
4586
+ # EventBridge to invoke your Lambda function when Amazon EC2 Auto
4587
+ # Scaling launches or terminates instances.
4375
4588
  #
4376
4589
  # 2. (Optional) Create a notification target and an IAM role. The
4377
4590
  # target can be either an Amazon SQS queue or an Amazon SNS topic.
@@ -4385,8 +4598,8 @@ module Aws::AutoScaling
4385
4598
  # keep the instance in a pending state using the
4386
4599
  # RecordLifecycleActionHeartbeat API call.
4387
4600
  #
4388
- # 5. If you finish before the timeout period ends, complete the
4389
- # lifecycle action using the CompleteLifecycleAction API call.
4601
+ # 5. If you finish before the timeout period ends, send a callback by
4602
+ # using the CompleteLifecycleAction API call.
4390
4603
  #
4391
4604
  # For more information, see [Amazon EC2 Auto Scaling lifecycle hooks][1]
4392
4605
  # in the *Amazon EC2 Auto Scaling User Guide*.
@@ -4523,8 +4736,7 @@ module Aws::AutoScaling
4523
4736
  # The name of the Auto Scaling group.
4524
4737
  #
4525
4738
  # @option params [required, String] :topic_arn
4526
- # The Amazon Resource Name (ARN) of the Amazon Simple Notification
4527
- # Service (Amazon SNS) topic.
4739
+ # The Amazon Resource Name (ARN) of the Amazon SNS topic.
4528
4740
  #
4529
4741
  # @option params [required, Array<String>] :notification_types
4530
4742
  # The type of event that causes the notification to be sent. To query
@@ -4690,7 +4902,7 @@ module Aws::AutoScaling
4690
4902
  #
4691
4903
  # @option params [Types::TargetTrackingConfiguration] :target_tracking_configuration
4692
4904
  # A target tracking scaling policy. Provides support for predefined or
4693
- # customized metrics.
4905
+ # custom metrics.
4694
4906
  #
4695
4907
  # The following predefined metrics are available:
4696
4908
  #
@@ -4726,10 +4938,10 @@ module Aws::AutoScaling
4726
4938
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-enable-disable-scaling-policy.html
4727
4939
  #
4728
4940
  # @option params [Types::PredictiveScalingConfiguration] :predictive_scaling_configuration
4729
- # A predictive scaling policy. Provides support for only predefined
4730
- # metrics.
4941
+ # A predictive scaling policy. Provides support for predefined and
4942
+ # custom metrics.
4731
4943
  #
4732
- # Predictive scaling works with CPU utilization, network in/out, and the
4944
+ # Predefined metrics include CPU utilization, network in/out, and the
4733
4945
  # Application Load Balancer request count.
4734
4946
  #
4735
4947
  # For more information, see [PredictiveScalingConfiguration][1] in the
@@ -4836,6 +5048,78 @@ module Aws::AutoScaling
4836
5048
  # predefined_metric_type: "ASGTotalCPUUtilization", # required, accepts ASGTotalCPUUtilization, ASGTotalNetworkIn, ASGTotalNetworkOut, ALBTargetGroupRequestCount
4837
5049
  # resource_label: "XmlStringMaxLen1023",
4838
5050
  # },
5051
+ # customized_scaling_metric_specification: {
5052
+ # metric_data_queries: [ # required
5053
+ # {
5054
+ # id: "XmlStringMaxLen255", # required
5055
+ # expression: "XmlStringMaxLen1023",
5056
+ # metric_stat: {
5057
+ # metric: { # required
5058
+ # namespace: "MetricNamespace", # required
5059
+ # metric_name: "MetricName", # required
5060
+ # dimensions: [
5061
+ # {
5062
+ # name: "MetricDimensionName", # required
5063
+ # value: "MetricDimensionValue", # required
5064
+ # },
5065
+ # ],
5066
+ # },
5067
+ # stat: "XmlStringMetricStat", # required
5068
+ # unit: "MetricUnit",
5069
+ # },
5070
+ # label: "XmlStringMetricLabel",
5071
+ # return_data: false,
5072
+ # },
5073
+ # ],
5074
+ # },
5075
+ # customized_load_metric_specification: {
5076
+ # metric_data_queries: [ # required
5077
+ # {
5078
+ # id: "XmlStringMaxLen255", # required
5079
+ # expression: "XmlStringMaxLen1023",
5080
+ # metric_stat: {
5081
+ # metric: { # required
5082
+ # namespace: "MetricNamespace", # required
5083
+ # metric_name: "MetricName", # required
5084
+ # dimensions: [
5085
+ # {
5086
+ # name: "MetricDimensionName", # required
5087
+ # value: "MetricDimensionValue", # required
5088
+ # },
5089
+ # ],
5090
+ # },
5091
+ # stat: "XmlStringMetricStat", # required
5092
+ # unit: "MetricUnit",
5093
+ # },
5094
+ # label: "XmlStringMetricLabel",
5095
+ # return_data: false,
5096
+ # },
5097
+ # ],
5098
+ # },
5099
+ # customized_capacity_metric_specification: {
5100
+ # metric_data_queries: [ # required
5101
+ # {
5102
+ # id: "XmlStringMaxLen255", # required
5103
+ # expression: "XmlStringMaxLen1023",
5104
+ # metric_stat: {
5105
+ # metric: { # required
5106
+ # namespace: "MetricNamespace", # required
5107
+ # metric_name: "MetricName", # required
5108
+ # dimensions: [
5109
+ # {
5110
+ # name: "MetricDimensionName", # required
5111
+ # value: "MetricDimensionValue", # required
5112
+ # },
5113
+ # ],
5114
+ # },
5115
+ # stat: "XmlStringMetricStat", # required
5116
+ # unit: "MetricUnit",
5117
+ # },
5118
+ # label: "XmlStringMetricLabel",
5119
+ # return_data: false,
5120
+ # },
5121
+ # ],
5122
+ # },
4839
5123
  # },
4840
5124
  # ],
4841
5125
  # mode: "ForecastAndScale", # accepts ForecastAndScale, ForecastOnly
@@ -5077,9 +5361,9 @@ module Aws::AutoScaling
5077
5361
  # This step is a part of the procedure for adding a lifecycle hook to an
5078
5362
  # Auto Scaling group:
5079
5363
  #
5080
- # 1. (Optional) Create a Lambda function and a rule that allows
5081
- # CloudWatch Events to invoke your Lambda function when Amazon EC2
5082
- # Auto Scaling launches or terminates instances.
5364
+ # 1. (Optional) Create a Lambda function and a rule that allows Amazon
5365
+ # EventBridge to invoke your Lambda function when Amazon EC2 Auto
5366
+ # Scaling launches or terminates instances.
5083
5367
  #
5084
5368
  # 2. (Optional) Create a notification target and an IAM role. The
5085
5369
  # target can be either an Amazon SQS queue or an Amazon SNS topic.
@@ -5092,8 +5376,8 @@ module Aws::AutoScaling
5092
5376
  # 4. **If you need more time, record the lifecycle action heartbeat to
5093
5377
  # keep the instance in a pending state.**
5094
5378
  #
5095
- # 5. If you finish before the timeout period ends, complete the
5096
- # lifecycle action.
5379
+ # 5. If you finish before the timeout period ends, send a callback by
5380
+ # using the CompleteLifecycleAction API call.
5097
5381
  #
5098
5382
  # For more information, see [Amazon EC2 Auto Scaling lifecycle hooks][1]
5099
5383
  # in the *Amazon EC2 Auto Scaling User Guide*.
@@ -5338,7 +5622,7 @@ module Aws::AutoScaling
5338
5622
  # This operation cannot be called on instances in a warm pool.
5339
5623
  #
5340
5624
  # For more information about preventing instances that are part of an
5341
- # Auto Scaling group from terminating on scale in, see [Instance
5625
+ # Auto Scaling group from terminating on scale in, see [Using instance
5342
5626
  # scale-in protection][1] in the *Amazon EC2 Auto Scaling User Guide*.
5343
5627
  #
5344
5628
  # If you exceed your maximum limit of instance IDs, which is 50 per Auto
@@ -5346,7 +5630,7 @@ module Aws::AutoScaling
5346
5630
  #
5347
5631
  #
5348
5632
  #
5349
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection
5633
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html
5350
5634
  #
5351
5635
  # @option params [required, Array<String>] :instance_ids
5352
5636
  # One or more instance IDs. You can specify up to 50 instances.
@@ -5511,6 +5795,53 @@ module Aws::AutoScaling
5511
5795
  # launch_template_name: "LaunchTemplateName",
5512
5796
  # version: "XmlStringMaxLen255",
5513
5797
  # },
5798
+ # instance_requirements: {
5799
+ # v_cpu_count: { # required
5800
+ # min: 1, # required
5801
+ # max: 1,
5802
+ # },
5803
+ # memory_mi_b: { # required
5804
+ # min: 1, # required
5805
+ # max: 1,
5806
+ # },
5807
+ # cpu_manufacturers: ["intel"], # accepts intel, amd, amazon-web-services
5808
+ # memory_gi_b_per_v_cpu: {
5809
+ # min: 1.0,
5810
+ # max: 1.0,
5811
+ # },
5812
+ # excluded_instance_types: ["ExcludedInstance"],
5813
+ # instance_generations: ["current"], # accepts current, previous
5814
+ # spot_max_price_percentage_over_lowest_price: 1,
5815
+ # on_demand_max_price_percentage_over_lowest_price: 1,
5816
+ # bare_metal: "included", # accepts included, excluded, required
5817
+ # burstable_performance: "included", # accepts included, excluded, required
5818
+ # require_hibernate_support: false,
5819
+ # network_interface_count: {
5820
+ # min: 1,
5821
+ # max: 1,
5822
+ # },
5823
+ # local_storage: "included", # accepts included, excluded, required
5824
+ # local_storage_types: ["hdd"], # accepts hdd, ssd
5825
+ # total_local_storage_gb: {
5826
+ # min: 1.0,
5827
+ # max: 1.0,
5828
+ # },
5829
+ # baseline_ebs_bandwidth_mbps: {
5830
+ # min: 1,
5831
+ # max: 1,
5832
+ # },
5833
+ # accelerator_types: ["gpu"], # accepts gpu, fpga, inference
5834
+ # accelerator_count: {
5835
+ # min: 1,
5836
+ # max: 1,
5837
+ # },
5838
+ # accelerator_manufacturers: ["nvidia"], # accepts nvidia, amd, amazon-web-services, xilinx
5839
+ # accelerator_names: ["a100"], # accepts a100, v100, k80, t4, m60, radeon-pro-v520, vu9p
5840
+ # accelerator_total_memory_mi_b: {
5841
+ # min: 1,
5842
+ # max: 1,
5843
+ # },
5844
+ # },
5514
5845
  # },
5515
5846
  # ],
5516
5847
  # },
@@ -5758,15 +6089,13 @@ module Aws::AutoScaling
5758
6089
  # `LaunchConfigurationName` or `MixedInstancesPolicy`.
5759
6090
  #
5760
6091
  # @option params [Types::MixedInstancesPolicy] :mixed_instances_policy
5761
- # An embedded object that specifies a mixed instances policy. When you
5762
- # make changes to an existing policy, all optional properties are left
5763
- # unchanged if not specified. For more information, see [Auto Scaling
5764
- # groups with multiple instance types and purchase options][1] in the
5765
- # *Amazon EC2 Auto Scaling User Guide*.
6092
+ # An embedded object that specifies a mixed instances policy. For more
6093
+ # information, see [Auto Scaling groups with multiple instance types and
6094
+ # purchase options][1] in the *Amazon EC2 Auto Scaling User Guide*.
5766
6095
  #
5767
6096
  #
5768
6097
  #
5769
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html
6098
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
5770
6099
  #
5771
6100
  # @option params [Integer] :min_size
5772
6101
  # The minimum size of the Auto Scaling group.
@@ -5814,9 +6143,9 @@ module Aws::AutoScaling
5814
6143
  # @option params [Integer] :health_check_grace_period
5815
6144
  # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
5816
6145
  # before checking the health status of an EC2 instance that has come
5817
- # into service. The default value is `0`. For more information, see
5818
- # [Health check grace period][1] in the *Amazon EC2 Auto Scaling User
5819
- # Guide*.
6146
+ # into service and marking it unhealthy due to a failed health check.
6147
+ # The default value is `0`. For more information, see [Health check
6148
+ # grace period][1] in the *Amazon EC2 Auto Scaling User Guide*.
5820
6149
  #
5821
6150
  # Conditional: Required if you are adding an `ELB` health check.
5822
6151
  #
@@ -5857,12 +6186,12 @@ module Aws::AutoScaling
5857
6186
  # Indicates whether newly launched instances are protected from
5858
6187
  # termination by Amazon EC2 Auto Scaling when scaling in. For more
5859
6188
  # information about preventing instances from terminating on scale in,
5860
- # see [Instance scale-in protection][1] in the *Amazon EC2 Auto Scaling
5861
- # User Guide*.
6189
+ # see [Using instance scale-in protection][1] in the *Amazon EC2 Auto
6190
+ # Scaling User Guide*.
5862
6191
  #
5863
6192
  #
5864
6193
  #
5865
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection
6194
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html
5866
6195
  #
5867
6196
  # @option params [String] :service_linked_role_arn
5868
6197
  # The Amazon Resource Name (ARN) of the service-linked role that the
@@ -5893,11 +6222,27 @@ module Aws::AutoScaling
5893
6222
  #
5894
6223
  #
5895
6224
  #
5896
- # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html
6225
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html
5897
6226
  #
5898
6227
  # @option params [String] :context
5899
6228
  # Reserved.
5900
6229
  #
6230
+ # @option params [String] :desired_capacity_type
6231
+ # The unit of measurement for the value specified for desired capacity.
6232
+ # Amazon EC2 Auto Scaling supports `DesiredCapacityType` for
6233
+ # attribute-based instance type selection only. For more information,
6234
+ # see [Creating an Auto Scaling group using attribute-based instance
6235
+ # type selection][1] in the *Amazon EC2 Auto Scaling User Guide*.
6236
+ #
6237
+ # By default, Amazon EC2 Auto Scaling specifies `units`, which
6238
+ # translates into number of instances.
6239
+ #
6240
+ # Valid values: `units` \| `vcpu` \| `memory-mib`
6241
+ #
6242
+ #
6243
+ #
6244
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
6245
+ #
5901
6246
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5902
6247
  #
5903
6248
  #
@@ -5955,6 +6300,53 @@ module Aws::AutoScaling
5955
6300
  # launch_template_name: "LaunchTemplateName",
5956
6301
  # version: "XmlStringMaxLen255",
5957
6302
  # },
6303
+ # instance_requirements: {
6304
+ # v_cpu_count: { # required
6305
+ # min: 1, # required
6306
+ # max: 1,
6307
+ # },
6308
+ # memory_mi_b: { # required
6309
+ # min: 1, # required
6310
+ # max: 1,
6311
+ # },
6312
+ # cpu_manufacturers: ["intel"], # accepts intel, amd, amazon-web-services
6313
+ # memory_gi_b_per_v_cpu: {
6314
+ # min: 1.0,
6315
+ # max: 1.0,
6316
+ # },
6317
+ # excluded_instance_types: ["ExcludedInstance"],
6318
+ # instance_generations: ["current"], # accepts current, previous
6319
+ # spot_max_price_percentage_over_lowest_price: 1,
6320
+ # on_demand_max_price_percentage_over_lowest_price: 1,
6321
+ # bare_metal: "included", # accepts included, excluded, required
6322
+ # burstable_performance: "included", # accepts included, excluded, required
6323
+ # require_hibernate_support: false,
6324
+ # network_interface_count: {
6325
+ # min: 1,
6326
+ # max: 1,
6327
+ # },
6328
+ # local_storage: "included", # accepts included, excluded, required
6329
+ # local_storage_types: ["hdd"], # accepts hdd, ssd
6330
+ # total_local_storage_gb: {
6331
+ # min: 1.0,
6332
+ # max: 1.0,
6333
+ # },
6334
+ # baseline_ebs_bandwidth_mbps: {
6335
+ # min: 1,
6336
+ # max: 1,
6337
+ # },
6338
+ # accelerator_types: ["gpu"], # accepts gpu, fpga, inference
6339
+ # accelerator_count: {
6340
+ # min: 1,
6341
+ # max: 1,
6342
+ # },
6343
+ # accelerator_manufacturers: ["nvidia"], # accepts nvidia, amd, amazon-web-services, xilinx
6344
+ # accelerator_names: ["a100"], # accepts a100, v100, k80, t4, m60, radeon-pro-v520, vu9p
6345
+ # accelerator_total_memory_mi_b: {
6346
+ # min: 1,
6347
+ # max: 1,
6348
+ # },
6349
+ # },
5958
6350
  # },
5959
6351
  # ],
5960
6352
  # },
@@ -5982,6 +6374,7 @@ module Aws::AutoScaling
5982
6374
  # max_instance_lifetime: 1,
5983
6375
  # capacity_rebalance: false,
5984
6376
  # context: "Context",
6377
+ # desired_capacity_type: "XmlStringMaxLen255",
5985
6378
  # })
5986
6379
  #
5987
6380
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/UpdateAutoScalingGroup AWS API Documentation
@@ -6006,7 +6399,7 @@ module Aws::AutoScaling
6006
6399
  params: params,
6007
6400
  config: config)
6008
6401
  context[:gem_name] = 'aws-sdk-autoscaling'
6009
- context[:gem_version] = '1.70.0'
6402
+ context[:gem_version] = '1.74.0'
6010
6403
  Seahorse::Client::Request.new(handlers, context)
6011
6404
  end
6012
6405