aws-sdk-autoscaling 1.165.0 → 1.166.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: 45954173752d04e01a0fcf7a4eb89ee79d22ffff23a5df13316db834f91ac644
4
- data.tar.gz: efd8195df24f22eb337ff32965066e98967fc2f05ef63650722371319a55ef23
3
+ metadata.gz: 41537cd85257380f1208a66d2282149e3753d762e4b5f29871f942c9ae2dee7e
4
+ data.tar.gz: 0aed58135d1bbe0fc6fffbf26986a302139c6af956a3fee07e73d8e93086127a
5
5
  SHA512:
6
- metadata.gz: bf76465d98e07a4b0f757861735f0ea89c752550f71f70a2f92e94bf500f9a3fedd5aa4df6698e89ffb146f71adea4d595d4c692523590eaf69f26b32d2a4f22
7
- data.tar.gz: 4282235553b70c3b9ed7716407a48e6ac066a7610bc473d16f810691e669eb98261dc512fafd6ed1406fbf77974cef988c7e7d1f519a3cd083881808c46505b7
6
+ metadata.gz: 35a6a1866bac4a144787468716fc10a36435702b385d5ffd2e9f7d257493973b098131878b1372810fb6949f650e4b624502116528d3351589c9ff84cda9aa77
7
+ data.tar.gz: 7087459cfe8c9adf64f902702d312f37806a60daa707888e990db993b621657d7523498b5906aa92529a06f8b3b09a95799b613d6f620fb5c07e9a4a64b996ff
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.166.0 (2026-08-25)
5
+ ------------------
6
+
7
+ * Feature - Adds support for Distribution Segments in mixed instances policies, providing ordered prioritization across On-Demand Capacity Reservations, Capacity Blocks, interruptible Capacity Reservations, and On-Demand capacity.
8
+
4
9
  1.165.0 (2026-08-13)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.165.0
1
+ 1.166.0
@@ -1320,6 +1320,11 @@ module Aws::AutoScaling
1320
1320
  # spot_allocation_strategy: "XmlString",
1321
1321
  # spot_instance_pools: 1,
1322
1322
  # spot_max_price: "MixedInstanceSpotPrice",
1323
+ # distribution_segments: [
1324
+ # {
1325
+ # target_capacity_types: ["on-demand-capacity-reservation"], # accepts on-demand-capacity-reservation, capacity-block, interruptible-capacity-reservation, on-demand
1326
+ # },
1327
+ # ],
1323
1328
  # },
1324
1329
  # },
1325
1330
  # min_size: 1,
@@ -1380,6 +1385,11 @@ module Aws::AutoScaling
1380
1385
  # groups with multiple instance types and purchase options][1] in the
1381
1386
  # *Amazon EC2 Auto Scaling User Guide*.
1382
1387
  #
1388
+ # You can remove the Distribution Segments configuration by specifying
1389
+ # `OnDemandBaseCapacity` or `OnDemandPercentageAboveBaseCapacity`. You
1390
+ # can also remove it explicitly by specifying an empty list for
1391
+ # `DistributionSegments`.
1392
+ #
1383
1393
  #
1384
1394
  #
1385
1395
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
@@ -1079,11 +1079,15 @@ module Aws::AutoScaling
1079
1079
  # @option params [Types::MixedInstancesPolicy] :mixed_instances_policy
1080
1080
  # The mixed instances policy. For more information, see [Auto Scaling
1081
1081
  # groups with multiple instance types and purchase options][1] in the
1082
- # *Amazon EC2 Auto Scaling User Guide*.
1082
+ # *Amazon EC2 Auto Scaling User Guide*. To learn how to prioritize
1083
+ # multiple capacity types, see [Use Distribution Segments to target
1084
+ # multiple capacity types][2] in the *Amazon EC2 Auto Scaling User
1085
+ # Guide*.
1083
1086
  #
1084
1087
  #
1085
1088
  #
1086
1089
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
1090
+ # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/use-distribution-segments.html
1087
1091
  #
1088
1092
  # @option params [String] :instance_id
1089
1093
  # The ID of the instance used to base the launch configuration on. If
@@ -1553,6 +1557,55 @@ module Aws::AutoScaling
1553
1557
  # vpc_zone_identifier: "subnet-057fa0918fEXAMPLE, subnet-610acd08EXAMPLE",
1554
1558
  # })
1555
1559
  #
1560
+ # @example Example: To create an Auto Scaling group using Distribution Segments
1561
+ #
1562
+ # # This example creates an Auto Scaling group that uses Distribution Segments to prioritize On-Demand Capacity
1563
+ # # Reservations, Capacity Blocks, interruptible Capacity Reservations, and then On-Demand capacity.
1564
+ #
1565
+ # resp = client.create_auto_scaling_group({
1566
+ # auto_scaling_group_name: "my-asg",
1567
+ # capacity_reservation_specification: {
1568
+ # capacity_reservation_target: {
1569
+ # capacity_reservation_resource_group_arns: [
1570
+ # "arn:aws:resource-groups:us-east-1:123456789012:group/my-capacity-reservation-group",
1571
+ # ],
1572
+ # },
1573
+ # },
1574
+ # desired_capacity: 5,
1575
+ # max_size: 10,
1576
+ # min_size: 0,
1577
+ # mixed_instances_policy: {
1578
+ # instances_distribution: {
1579
+ # distribution_segments: [
1580
+ # {
1581
+ # target_capacity_types: [
1582
+ # "on-demand-capacity-reservation",
1583
+ # "capacity-block",
1584
+ # "interruptible-capacity-reservation",
1585
+ # "on-demand",
1586
+ # ],
1587
+ # },
1588
+ # ],
1589
+ # on_demand_allocation_strategy: "prioritized",
1590
+ # },
1591
+ # launch_template: {
1592
+ # launch_template_specification: {
1593
+ # launch_template_name: "my-template-for-auto-scaling",
1594
+ # version: "$Default",
1595
+ # },
1596
+ # overrides: [
1597
+ # {
1598
+ # instance_type: "m5.24xlarge",
1599
+ # },
1600
+ # {
1601
+ # instance_type: "p5.48xlarge",
1602
+ # },
1603
+ # ],
1604
+ # },
1605
+ # },
1606
+ # vpc_zone_identifier: "subnet-057fa0918fEXAMPLE",
1607
+ # })
1608
+ #
1556
1609
  # @example Request syntax with placeholder values
1557
1610
  #
1558
1611
  # resp = client.create_auto_scaling_group({
@@ -1652,6 +1705,11 @@ module Aws::AutoScaling
1652
1705
  # spot_allocation_strategy: "XmlString",
1653
1706
  # spot_instance_pools: 1,
1654
1707
  # spot_max_price: "MixedInstanceSpotPrice",
1708
+ # distribution_segments: [
1709
+ # {
1710
+ # target_capacity_types: ["on-demand-capacity-reservation"], # accepts on-demand-capacity-reservation, capacity-block, interruptible-capacity-reservation, on-demand
1711
+ # },
1712
+ # ],
1655
1713
  # },
1656
1714
  # },
1657
1715
  # instance_id: "XmlStringMaxLen19",
@@ -2790,6 +2848,9 @@ module Aws::AutoScaling
2790
2848
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.spot_allocation_strategy #=> String
2791
2849
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.spot_instance_pools #=> Integer
2792
2850
  # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.spot_max_price #=> String
2851
+ # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.distribution_segments #=> Array
2852
+ # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.distribution_segments[0].target_capacity_types #=> Array
2853
+ # resp.auto_scaling_groups[0].mixed_instances_policy.instances_distribution.distribution_segments[0].target_capacity_types[0] #=> String, one of "on-demand-capacity-reservation", "capacity-block", "interruptible-capacity-reservation", "on-demand"
2793
2854
  # resp.auto_scaling_groups[0].min_size #=> Integer
2794
2855
  # resp.auto_scaling_groups[0].max_size #=> Integer
2795
2856
  # resp.auto_scaling_groups[0].desired_capacity #=> Integer
@@ -3214,6 +3275,9 @@ module Aws::AutoScaling
3214
3275
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_allocation_strategy #=> String
3215
3276
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_instance_pools #=> Integer
3216
3277
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_max_price #=> String
3278
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.distribution_segments #=> Array
3279
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.distribution_segments[0].target_capacity_types #=> Array
3280
+ # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.distribution_segments[0].target_capacity_types[0] #=> String, one of "on-demand-capacity-reservation", "capacity-block", "interruptible-capacity-reservation", "on-demand"
3217
3281
  # resp.instance_refreshes[0].rollback_details.rollback_reason #=> String
3218
3282
  # resp.instance_refreshes[0].rollback_details.rollback_start_time #=> Time
3219
3283
  # resp.instance_refreshes[0].rollback_details.percentage_complete_on_rollback #=> Integer
@@ -7044,6 +7108,11 @@ module Aws::AutoScaling
7044
7108
  # spot_allocation_strategy: "XmlString",
7045
7109
  # spot_instance_pools: 1,
7046
7110
  # spot_max_price: "MixedInstanceSpotPrice",
7111
+ # distribution_segments: [
7112
+ # {
7113
+ # target_capacity_types: ["on-demand-capacity-reservation"], # accepts on-demand-capacity-reservation, capacity-block, interruptible-capacity-reservation, on-demand
7114
+ # },
7115
+ # ],
7047
7116
  # },
7048
7117
  # },
7049
7118
  # },
@@ -7366,6 +7435,11 @@ module Aws::AutoScaling
7366
7435
  # groups with multiple instance types and purchase options][1] in the
7367
7436
  # *Amazon EC2 Auto Scaling User Guide*.
7368
7437
  #
7438
+ # You can remove the Distribution Segments configuration by specifying
7439
+ # `OnDemandBaseCapacity` or `OnDemandPercentageAboveBaseCapacity`. You
7440
+ # can also remove it explicitly by specifying an empty list for
7441
+ # `DistributionSegments`.
7442
+ #
7369
7443
  #
7370
7444
  #
7371
7445
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
@@ -7751,6 +7825,11 @@ module Aws::AutoScaling
7751
7825
  # spot_allocation_strategy: "XmlString",
7752
7826
  # spot_instance_pools: 1,
7753
7827
  # spot_max_price: "MixedInstanceSpotPrice",
7828
+ # distribution_segments: [
7829
+ # {
7830
+ # target_capacity_types: ["on-demand-capacity-reservation"], # accepts on-demand-capacity-reservation, capacity-block, interruptible-capacity-reservation, on-demand
7831
+ # },
7832
+ # ],
7754
7833
  # },
7755
7834
  # },
7756
7835
  # min_size: 1,
@@ -7825,7 +7904,7 @@ module Aws::AutoScaling
7825
7904
  tracer: tracer
7826
7905
  )
7827
7906
  context[:gem_name] = 'aws-sdk-autoscaling'
7828
- context[:gem_version] = '1.165.0'
7907
+ context[:gem_version] = '1.166.0'
7829
7908
  Seahorse::Client::Request.new(handlers, context)
7830
7909
  end
7831
7910
 
@@ -158,6 +158,8 @@ module Aws::AutoScaling
158
158
  DetachTrafficSourcesType = Shapes::StructureShape.new(name: 'DetachTrafficSourcesType')
159
159
  DisableMetricsCollectionQuery = Shapes::StructureShape.new(name: 'DisableMetricsCollectionQuery')
160
160
  DisableScaleIn = Shapes::BooleanShape.new(name: 'DisableScaleIn')
161
+ DistributionSegment = Shapes::StructureShape.new(name: 'DistributionSegment')
162
+ DistributionSegments = Shapes::ListShape.new(name: 'DistributionSegments')
161
163
  Ebs = Shapes::StructureShape.new(name: 'Ebs')
162
164
  EbsOptimized = Shapes::BooleanShape.new(name: 'EbsOptimized')
163
165
  EnableMetricsCollectionQuery = Shapes::StructureShape.new(name: 'EnableMetricsCollectionQuery')
@@ -402,6 +404,8 @@ module Aws::AutoScaling
402
404
  TagValue = Shapes::StringShape.new(name: 'TagValue')
403
405
  Tags = Shapes::ListShape.new(name: 'Tags')
404
406
  TagsType = Shapes::StructureShape.new(name: 'TagsType')
407
+ TargetCapacityType = Shapes::StringShape.new(name: 'TargetCapacityType')
408
+ TargetCapacityTypes = Shapes::ListShape.new(name: 'TargetCapacityTypes')
405
409
  TargetGroupARNs = Shapes::ListShape.new(name: 'TargetGroupARNs')
406
410
  TargetTrackingConfiguration = Shapes::StructureShape.new(name: 'TargetTrackingConfiguration')
407
411
  TargetTrackingMetricDataQueries = Shapes::ListShape.new(name: 'TargetTrackingMetricDataQueries')
@@ -948,6 +952,11 @@ module Aws::AutoScaling
948
952
  DisableMetricsCollectionQuery.add_member(:metrics, Shapes::ShapeRef.new(shape: Metrics, location_name: "Metrics"))
949
953
  DisableMetricsCollectionQuery.struct_class = Types::DisableMetricsCollectionQuery
950
954
 
955
+ DistributionSegment.add_member(:target_capacity_types, Shapes::ShapeRef.new(shape: TargetCapacityTypes, location_name: "TargetCapacityTypes"))
956
+ DistributionSegment.struct_class = Types::DistributionSegment
957
+
958
+ DistributionSegments.member = Shapes::ShapeRef.new(shape: DistributionSegment)
959
+
951
960
  Ebs.add_member(:snapshot_id, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "SnapshotId"))
952
961
  Ebs.add_member(:volume_size, Shapes::ShapeRef.new(shape: BlockDeviceEbsVolumeSize, location_name: "VolumeSize"))
953
962
  Ebs.add_member(:volume_type, Shapes::ShapeRef.new(shape: BlockDeviceEbsVolumeType, location_name: "VolumeType"))
@@ -1136,6 +1145,7 @@ module Aws::AutoScaling
1136
1145
  InstancesDistribution.add_member(:spot_allocation_strategy, Shapes::ShapeRef.new(shape: XmlString, location_name: "SpotAllocationStrategy"))
1137
1146
  InstancesDistribution.add_member(:spot_instance_pools, Shapes::ShapeRef.new(shape: SpotInstancePools, location_name: "SpotInstancePools"))
1138
1147
  InstancesDistribution.add_member(:spot_max_price, Shapes::ShapeRef.new(shape: MixedInstanceSpotPrice, location_name: "SpotMaxPrice"))
1148
+ InstancesDistribution.add_member(:distribution_segments, Shapes::ShapeRef.new(shape: DistributionSegments, location_name: "DistributionSegments"))
1139
1149
  InstancesDistribution.struct_class = Types::InstancesDistribution
1140
1150
 
1141
1151
  InvalidNextToken.add_member(:message, Shapes::ShapeRef.new(shape: XmlStringMaxLen255, location_name: "message"))
@@ -1644,6 +1654,8 @@ module Aws::AutoScaling
1644
1654
  TagsType.add_member(:next_token, Shapes::ShapeRef.new(shape: XmlString, location_name: "NextToken"))
1645
1655
  TagsType.struct_class = Types::TagsType
1646
1656
 
1657
+ TargetCapacityTypes.member = Shapes::ShapeRef.new(shape: TargetCapacityType)
1658
+
1647
1659
  TargetGroupARNs.member = Shapes::ShapeRef.new(shape: XmlStringMaxLen511)
1648
1660
 
1649
1661
  TargetTrackingConfiguration.add_member(:predefined_metric_specification, Shapes::ShapeRef.new(shape: PredefinedMetricSpecification, location_name: "PredefinedMetricSpecification"))
@@ -134,6 +134,11 @@ module Aws::AutoScaling
134
134
  # spot_allocation_strategy: "XmlString",
135
135
  # spot_instance_pools: 1,
136
136
  # spot_max_price: "MixedInstanceSpotPrice",
137
+ # distribution_segments: [
138
+ # {
139
+ # target_capacity_types: ["on-demand-capacity-reservation"], # accepts on-demand-capacity-reservation, capacity-block, interruptible-capacity-reservation, on-demand
140
+ # },
141
+ # ],
137
142
  # },
138
143
  # },
139
144
  # instance_id: "XmlStringMaxLen19",
@@ -250,11 +255,15 @@ module Aws::AutoScaling
250
255
  # @option options [Types::MixedInstancesPolicy] :mixed_instances_policy
251
256
  # The mixed instances policy. For more information, see [Auto Scaling
252
257
  # groups with multiple instance types and purchase options][1] in the
253
- # *Amazon EC2 Auto Scaling User Guide*.
258
+ # *Amazon EC2 Auto Scaling User Guide*. To learn how to prioritize
259
+ # multiple capacity types, see [Use Distribution Segments to target
260
+ # multiple capacity types][2] in the *Amazon EC2 Auto Scaling User
261
+ # Guide*.
254
262
  #
255
263
  #
256
264
  #
257
265
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
266
+ # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/use-distribution-segments.html
258
267
  # @option options [String] :instance_id
259
268
  # The ID of the instance used to base the launch configuration on. If
260
269
  # specified, Amazon EC2 Auto Scaling uses the configuration values from
@@ -1238,11 +1238,15 @@ module Aws::AutoScaling
1238
1238
  # @!attribute [rw] mixed_instances_policy
1239
1239
  # The mixed instances policy. For more information, see [Auto Scaling
1240
1240
  # groups with multiple instance types and purchase options][1] in the
1241
- # *Amazon EC2 Auto Scaling User Guide*.
1241
+ # *Amazon EC2 Auto Scaling User Guide*. To learn how to prioritize
1242
+ # multiple capacity types, see [Use Distribution Segments to target
1243
+ # multiple capacity types][2] in the *Amazon EC2 Auto Scaling User
1244
+ # Guide*.
1242
1245
  #
1243
1246
  #
1244
1247
  #
1245
1248
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
1249
+ # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/use-distribution-segments.html
1246
1250
  # @return [Types::MixedInstancesPolicy]
1247
1251
  #
1248
1252
  # @!attribute [rw] instance_id
@@ -2833,14 +2837,15 @@ module Aws::AutoScaling
2833
2837
  # @return [Types::LaunchTemplateSpecification]
2834
2838
  #
2835
2839
  # @!attribute [rw] mixed_instances_policy
2836
- # Use this structure to launch multiple instance types and On-Demand
2837
- # Instances and Spot Instances within a single Auto Scaling group.
2840
+ # Use this structure to launch multiple instance types and configure
2841
+ # how capacity is distributed across On-Demand, Spot, and supported
2842
+ # Capacity Reservation types within a single Auto Scaling group.
2838
2843
  #
2839
2844
  # A mixed instances policy contains information that Amazon EC2 Auto
2840
- # Scaling can use to launch instances and help optimize your costs.
2841
- # For more information, see [Auto Scaling groups with multiple
2842
- # instance types and purchase options][1] in the *Amazon EC2 Auto
2843
- # Scaling User Guide*.
2845
+ # Scaling can use to launch instances, prioritize capacity types, and
2846
+ # help optimize your costs. For more information, see [Auto Scaling
2847
+ # groups with multiple instance types and purchase options][1] in the
2848
+ # *Amazon EC2 Auto Scaling User Guide*.
2844
2849
  #
2845
2850
  #
2846
2851
  #
@@ -3026,6 +3031,44 @@ module Aws::AutoScaling
3026
3031
  include Aws::Structure
3027
3032
  end
3028
3033
 
3034
+ # Use this structure to specify the capacity types that Amazon EC2 Auto
3035
+ # Scaling prioritizes when it launches instances.
3036
+ #
3037
+ # @!attribute [rw] target_capacity_types
3038
+ # The capacity types to prioritize, in order. Amazon EC2 Auto Scaling
3039
+ # attempts to launch instances in the priority order of the capacity
3040
+ # types, and within each capacity type, in the order of instance types
3041
+ # listed in your launch template `Overrides`.
3042
+ #
3043
+ # The following lists the valid values:
3044
+ #
3045
+ # on-demand-capacity-reservation
3046
+ #
3047
+ # : On-Demand Capacity Reservations.
3048
+ #
3049
+ # capacity-block
3050
+ #
3051
+ # : Capacity Blocks.
3052
+ #
3053
+ # interruptible-capacity-reservation
3054
+ #
3055
+ # : Interruptible Capacity Reservations.
3056
+ #
3057
+ # on-demand
3058
+ #
3059
+ # : On-Demand capacity. Include this value to allow the group to fall
3060
+ # back to On-Demand capacity when the preceding capacity types are
3061
+ # unavailable.
3062
+ # @return [Array<String>]
3063
+ #
3064
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DistributionSegment AWS API Documentation
3065
+ #
3066
+ class DistributionSegment < Struct.new(
3067
+ :target_capacity_types)
3068
+ SENSITIVE = []
3069
+ include Aws::Structure
3070
+ end
3071
+
3029
3072
  # Describes information used to set up an Amazon EBS volume specified in
3030
3073
  # a block device mapping.
3031
3074
  #
@@ -4557,9 +4600,10 @@ module Aws::AutoScaling
4557
4600
  include Aws::Structure
4558
4601
  end
4559
4602
 
4560
- # Use this structure to specify the distribution of On-Demand Instances
4561
- # and Spot Instances and the allocation strategies used to fulfill
4562
- # On-Demand and Spot capacities for a mixed instances policy.
4603
+ # Use this structure to specify how a mixed instances policy distributes
4604
+ # capacity across On-Demand, Spot, and supported Capacity Reservation
4605
+ # types, and to specify the allocation strategies that are used to
4606
+ # fulfill the capacity.
4563
4607
  #
4564
4608
  # @!attribute [rw] on_demand_allocation_strategy
4565
4609
  # The allocation strategy to apply to your On-Demand Instances when
@@ -4688,6 +4732,19 @@ module Aws::AutoScaling
4688
4732
  # Valid Range: Minimum value of 0.001
4689
4733
  # @return [String]
4690
4734
  #
4735
+ # @!attribute [rw] distribution_segments
4736
+ # The Distribution Segments configuration. Each segment contains an
4737
+ # ordered list of capacity types to prioritize.
4738
+ #
4739
+ # For more information, see [Use Distribution Segments to target
4740
+ # multiple capacity types][1] in the *Amazon EC2 Auto Scaling User
4741
+ # Guide*.
4742
+ #
4743
+ #
4744
+ #
4745
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/use-distribution-segments.html
4746
+ # @return [Array<Types::DistributionSegment>]
4747
+ #
4691
4748
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/InstancesDistribution AWS API Documentation
4692
4749
  #
4693
4750
  class InstancesDistribution < Struct.new(
@@ -4696,7 +4753,8 @@ module Aws::AutoScaling
4696
4753
  :on_demand_percentage_above_base_capacity,
4697
4754
  :spot_allocation_strategy,
4698
4755
  :spot_instance_pools,
4699
- :spot_max_price)
4756
+ :spot_max_price,
4757
+ :distribution_segments)
4700
4758
  SENSITIVE = []
4701
4759
  include Aws::Structure
4702
4760
  end
@@ -5923,22 +5981,27 @@ module Aws::AutoScaling
5923
5981
  include Aws::Structure
5924
5982
  end
5925
5983
 
5926
- # Use this structure to launch multiple instance types and On-Demand
5927
- # Instances and Spot Instances within a single Auto Scaling group.
5984
+ # Use this structure to launch multiple instance types and configure how
5985
+ # capacity is distributed across On-Demand, Spot, and supported Capacity
5986
+ # Reservation types within a single Auto Scaling group.
5928
5987
  #
5929
5988
  # A mixed instances policy contains information that Amazon EC2 Auto
5930
- # Scaling can use to launch instances and help optimize your costs. For
5931
- # more information, see [Auto Scaling groups with multiple instance
5932
- # types and purchase options][1] in the *Amazon EC2 Auto Scaling User
5989
+ # Scaling can use to launch instances, prioritize capacity types, and
5990
+ # help optimize your costs. For more information, see [Auto Scaling
5991
+ # groups with multiple instance types and purchase options][1] in the
5992
+ # *Amazon EC2 Auto Scaling User Guide*. To learn how to prioritize
5993
+ # multiple capacity types, see [Use Distribution Segments to target
5994
+ # multiple capacity types][2] in the *Amazon EC2 Auto Scaling User
5933
5995
  # Guide*.
5934
5996
  #
5935
5997
  #
5936
5998
  #
5937
5999
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
6000
+ # [2]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/use-distribution-segments.html
5938
6001
  #
5939
6002
  # @!attribute [rw] launch_template
5940
6003
  # One or more launch templates and the instance types (overrides) that
5941
- # are used to launch EC2 instances to fulfill On-Demand and Spot
6004
+ # are used to launch EC2 instances to fulfill the configured
5942
6005
  # capacities.
5943
6006
  # @return [Types::LaunchTemplate]
5944
6007
  #
@@ -8594,6 +8657,11 @@ module Aws::AutoScaling
8594
8657
  # groups with multiple instance types and purchase options][1] in the
8595
8658
  # *Amazon EC2 Auto Scaling User Guide*.
8596
8659
  #
8660
+ # You can remove the Distribution Segments configuration by specifying
8661
+ # `OnDemandBaseCapacity` or `OnDemandPercentageAboveBaseCapacity`. You
8662
+ # can also remove it explicitly by specifying an empty list for
8663
+ # `DistributionSegments`.
8664
+ #
8597
8665
  #
8598
8666
  #
8599
8667
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html
@@ -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.165.0'
68
+ GEM_VERSION = '1.166.0'
69
69
 
70
70
  end
71
71
 
@@ -486,7 +486,12 @@ module Aws
486
486
  on_demand_percentage_above_base_capacity: ::Integer?,
487
487
  spot_allocation_strategy: ::String?,
488
488
  spot_instance_pools: ::Integer?,
489
- spot_max_price: ::String?
489
+ spot_max_price: ::String?,
490
+ distribution_segments: Array[
491
+ {
492
+ target_capacity_types: Array[("on-demand-capacity-reservation" | "capacity-block" | "interruptible-capacity-reservation" | "on-demand")]?
493
+ }
494
+ ]?
490
495
  }?
491
496
  },
492
497
  ?min_size: ::Integer,
data/sig/params.rbs CHANGED
@@ -25,7 +25,12 @@ module Aws
25
25
  on_demand_percentage_above_base_capacity: ::Integer?,
26
26
  spot_allocation_strategy: ::String?,
27
27
  spot_instance_pools: ::Integer?,
28
- spot_max_price: ::String?
28
+ spot_max_price: ::String?,
29
+ distribution_segments: Array[
30
+ {
31
+ target_capacity_types: Array[("on-demand-capacity-reservation" | "capacity-block" | "interruptible-capacity-reservation" | "on-demand")]?
32
+ }
33
+ ]?
29
34
  }
30
35
 
31
36
  type mixed_instances_policy = {
data/sig/resource.rbs CHANGED
@@ -177,7 +177,12 @@ module Aws
177
177
  on_demand_percentage_above_base_capacity: ::Integer?,
178
178
  spot_allocation_strategy: ::String?,
179
179
  spot_instance_pools: ::Integer?,
180
- spot_max_price: ::String?
180
+ spot_max_price: ::String?,
181
+ distribution_segments: Array[
182
+ {
183
+ target_capacity_types: Array[("on-demand-capacity-reservation" | "capacity-block" | "interruptible-capacity-reservation" | "on-demand")]?
184
+ }
185
+ ]?
181
186
  }?
182
187
  },
183
188
  ?instance_id: ::String,
data/sig/types.rbs CHANGED
@@ -635,6 +635,11 @@ module Aws::AutoScaling
635
635
  SENSITIVE: []
636
636
  end
637
637
 
638
+ class DistributionSegment
639
+ attr_accessor target_capacity_types: ::Array[("on-demand-capacity-reservation" | "capacity-block" | "interruptible-capacity-reservation" | "on-demand")]
640
+ SENSITIVE: []
641
+ end
642
+
638
643
  class Ebs
639
644
  attr_accessor snapshot_id: ::String
640
645
  attr_accessor volume_size: ::Integer
@@ -858,6 +863,7 @@ module Aws::AutoScaling
858
863
  attr_accessor spot_allocation_strategy: ::String
859
864
  attr_accessor spot_instance_pools: ::Integer
860
865
  attr_accessor spot_max_price: ::String
866
+ attr_accessor distribution_segments: ::Array[Types::DistributionSegment]
861
867
  SENSITIVE: []
862
868
  end
863
869
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-autoscaling
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.165.0
4
+ version: 1.166.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services