aws-sdk-autoscaling 1.85.0 → 1.87.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -425,6 +425,16 @@ module Aws::AutoScaling
425
425
  req.send_request(options)
426
426
  end
427
427
 
428
+ # <note markdown="1"> This API call has been replaced with a new "traffic sources" API
429
+ # call (`AttachTrafficSources`) that can attach multiple traffic sources
430
+ # types. While we continue to support `AttachLoadBalancerTargetGroups`,
431
+ # and you can use both the original `AttachLoadBalancerTargetGroups` API
432
+ # call and the new `AttachTrafficSources` API call on the same Auto
433
+ # Scaling group, we recommend using the new "traffic sources" API call
434
+ # to simplify how you manage traffic sources.
435
+ #
436
+ # </note>
437
+ #
428
438
  # Attaches one or more target groups to the specified Auto Scaling
429
439
  # group.
430
440
  #
@@ -495,9 +505,13 @@ module Aws::AutoScaling
495
505
  req.send_request(options)
496
506
  end
497
507
 
498
- # <note markdown="1"> To attach an Application Load Balancer, Network Load Balancer, or
499
- # Gateway Load Balancer, use the AttachLoadBalancerTargetGroups API
500
- # operation instead.
508
+ # <note markdown="1"> This API call has been replaced with a new "traffic sources" API
509
+ # call (`AttachTrafficSources`) that can attach multiple traffic sources
510
+ # types. While we continue to support `AttachLoadBalancers`, and you can
511
+ # use both the original `AttachLoadBalancers` API call and the new
512
+ # `AttachTrafficSources` API call on the same Auto Scaling group, we
513
+ # recommend using the new "traffic sources" API call to simplify how
514
+ # you manage traffic sources.
501
515
  #
502
516
  # </note>
503
517
  #
@@ -557,20 +571,30 @@ module Aws::AutoScaling
557
571
  req.send_request(options)
558
572
  end
559
573
 
560
- # **Reserved for use with Amazon VPC Lattice, which is in preview and
561
- # subject to change. Do not use this API for production workloads. This
562
- # API is also subject to change.**
563
- #
564
574
  # Attaches one or more traffic sources to the specified Auto Scaling
565
575
  # group.
566
576
  #
567
- # To describe the traffic sources for an Auto Scaling group, call the
568
- # DescribeTrafficSources API. To detach a traffic source from the Auto
569
- # Scaling group, call the DetachTrafficSources API.
577
+ # You can use any of the following as traffic sources for an Auto
578
+ # Scaling group:
579
+ #
580
+ # * Application Load Balancer
581
+ #
582
+ # * Classic Load Balancer
583
+ #
584
+ # * Network Load Balancer
585
+ #
586
+ # * Gateway Load Balancer
587
+ #
588
+ # * VPC Lattice
570
589
  #
571
590
  # This operation is additive and does not detach existing traffic
572
591
  # sources from the Auto Scaling group.
573
592
  #
593
+ # After the operation completes, use the DescribeTrafficSources API to
594
+ # return details about the state of the attachments between traffic
595
+ # sources and your Auto Scaling group. To detach a traffic source from
596
+ # the Auto Scaling group, call the DetachTrafficSources API.
597
+ #
574
598
  # @option params [required, String] :auto_scaling_group_name
575
599
  # The name of the Auto Scaling group.
576
600
  #
@@ -578,21 +602,34 @@ module Aws::AutoScaling
578
602
  # The unique identifiers of one or more traffic sources. You can specify
579
603
  # up to 10 traffic sources.
580
604
  #
581
- # Currently, you must specify an Amazon Resource Name (ARN) for an
582
- # existing VPC Lattice target group. Amazon EC2 Auto Scaling registers
583
- # the running instances with the attached target groups. The target
584
- # groups receive incoming traffic and route requests to one or more
585
- # registered targets.
586
- #
587
605
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
588
606
  #
607
+ #
608
+ # @example Example: To attach a target group to an Auto Scaling group
609
+ #
610
+ # # This example attaches the specified target group to the specified Auto Scaling group.
611
+ #
612
+ # resp = client.attach_traffic_sources({
613
+ # auto_scaling_group_name: "my-auto-scaling-group",
614
+ # traffic_sources: [
615
+ # {
616
+ # identifier: "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
617
+ # },
618
+ # ],
619
+ # })
620
+ #
621
+ # resp.to_h outputs the following:
622
+ # {
623
+ # }
624
+ #
589
625
  # @example Request syntax with placeholder values
590
626
  #
591
627
  # resp = client.attach_traffic_sources({
592
628
  # auto_scaling_group_name: "XmlStringMaxLen255", # required
593
629
  # traffic_sources: [ # required
594
630
  # {
595
- # identifier: "XmlStringMaxLen511",
631
+ # identifier: "XmlStringMaxLen511", # required
632
+ # type: "XmlStringMaxLen511",
596
633
  # },
597
634
  # ],
598
635
  # })
@@ -690,14 +727,18 @@ module Aws::AutoScaling
690
727
  req.send_request(options)
691
728
  end
692
729
 
693
- # Cancels an instance refresh operation in progress. Cancellation does
694
- # not roll back any replacements that have already been completed, but
695
- # it prevents new replacements from being started.
730
+ # Cancels an instance refresh or rollback that is in progress. If an
731
+ # instance refresh or rollback is not in progress, an
732
+ # `ActiveInstanceRefreshNotFound` error occurs.
696
733
  #
697
734
  # This operation is part of the [instance refresh feature][1] in Amazon
698
735
  # EC2 Auto Scaling, which helps you update instances in your Auto
699
736
  # Scaling group after you make configuration changes.
700
737
  #
738
+ # When you cancel an instance refresh, this does not roll back any
739
+ # changes that it made. Use the RollbackInstanceRefresh API to roll back
740
+ # instead.
741
+ #
701
742
  #
702
743
  #
703
744
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-instance-refresh.html
@@ -968,7 +1009,8 @@ module Aws::AutoScaling
968
1009
  # @option params [Array<String>] :load_balancer_names
969
1010
  # A list of Classic Load Balancers associated with this Auto Scaling
970
1011
  # group. For Application Load Balancers, Network Load Balancers, and
971
- # Gateway Load Balancer, specify the `TargetGroupARNs` property instead.
1012
+ # Gateway Load Balancers, specify the `TargetGroupARNs` property
1013
+ # instead.
972
1014
  #
973
1015
  # @option params [Array<String>] :target_group_arns
974
1016
  # The Amazon Resource Names (ARN) of the Elastic Load Balancing target
@@ -984,14 +1026,12 @@ module Aws::AutoScaling
984
1026
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html
985
1027
  #
986
1028
  # @option params [String] :health_check_type
987
- # Determines whether any additional health checks are performed on the
988
- # instances in this group. Amazon EC2 health checks are always on. For
989
- # more information, see [Health checks for Auto Scaling instances][1] in
990
- # the *Amazon EC2 Auto Scaling User Guide*.
1029
+ # A comma-separated list of one or more health check types.
991
1030
  #
992
- # The valid values are `EC2` (default), `ELB`, and `VPC_LATTICE`. The
993
- # `VPC_LATTICE` health check type is reserved for use with VPC Lattice,
994
- # which is in preview release and is subject to change.
1031
+ # The valid values are `EC2`, `ELB`, and `VPC_LATTICE`. `EC2` is the
1032
+ # default health check and cannot be disabled. For more information, see
1033
+ # [Health checks for Auto Scaling instances][1] in the *Amazon EC2 Auto
1034
+ # Scaling User Guide*.
995
1035
  #
996
1036
  #
997
1037
  #
@@ -1135,24 +1175,25 @@ module Aws::AutoScaling
1135
1175
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
1136
1176
  #
1137
1177
  # @option params [Integer] :default_instance_warmup
1138
- # The amount of time, in seconds, until a newly launched instance can
1139
- # contribute to the Amazon CloudWatch metrics. This delay lets an
1140
- # instance finish initializing before Amazon EC2 Auto Scaling aggregates
1141
- # instance metrics, resulting in more reliable usage data. Set this
1142
- # value equal to the amount of time that it takes for resource
1143
- # consumption to become stable after an instance reaches the `InService`
1144
- # state. For more information, see [Set the default instance warmup for
1145
- # an Auto Scaling group][1] in the *Amazon EC2 Auto Scaling User Guide*.
1146
- #
1147
- # To manage your warm-up settings at the group level, we recommend that
1148
- # you set the default instance warmup, *even if its value is set to 0
1149
- # seconds*. This also optimizes the performance of scaling policies that
1150
- # scale continuously, such as target tracking and step scaling policies.
1151
- #
1152
- # If you need to remove a value that you previously set, include the
1178
+ # The amount of time, in seconds, until a new instance is considered to
1179
+ # have finished initializing and resource consumption to become stable
1180
+ # after it enters the `InService` state.
1181
+ #
1182
+ # During an instance refresh, Amazon EC2 Auto Scaling waits for the
1183
+ # warm-up period after it replaces an instance before it moves on to
1184
+ # replacing the next instance. Amazon EC2 Auto Scaling also waits for
1185
+ # the warm-up period before aggregating the metrics for new instances
1186
+ # with existing instances in the Amazon CloudWatch metrics that are used
1187
+ # for scaling, resulting in more reliable usage data. For more
1188
+ # information, see [Set the default instance warmup for an Auto Scaling
1189
+ # group][1] in the *Amazon EC2 Auto Scaling User Guide*.
1190
+ #
1191
+ # To manage various warm-up settings at the group level, we recommend
1192
+ # that you set the default instance warmup, *even if it is set to 0
1193
+ # seconds*. To remove a value that you previously set, include the
1153
1194
  # property but specify `-1` for the value. However, we strongly
1154
1195
  # recommend keeping the default instance warmup enabled by specifying a
1155
- # minimum value of `0`.
1196
+ # value of `0` or other nominal value.
1156
1197
  #
1157
1198
  # Default: None
1158
1199
  #
@@ -1161,17 +1202,10 @@ module Aws::AutoScaling
1161
1202
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html
1162
1203
  #
1163
1204
  # @option params [Array<Types::TrafficSourceIdentifier>] :traffic_sources
1164
- # **Reserved for use with Amazon VPC Lattice, which is in preview
1165
- # release and is subject to change. Do not use this parameter for
1166
- # production workloads. It is also subject to change.**
1167
- #
1168
- # The unique identifiers of one or more traffic sources.
1169
- #
1170
- # Currently, you must specify an Amazon Resource Name (ARN) for an
1171
- # existing VPC Lattice target group. Amazon EC2 Auto Scaling registers
1172
- # the running instances with the attached target groups. The target
1173
- # groups receive incoming traffic and route requests to one or more
1174
- # registered targets.
1205
+ # The list of traffic sources to attach to this Auto Scaling group. You
1206
+ # can use any of the following as traffic sources for an Auto Scaling
1207
+ # group: Classic Load Balancer, Application Load Balancer, Gateway Load
1208
+ # Balancer, Network Load Balancer, and VPC Lattice.
1175
1209
  #
1176
1210
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1177
1211
  #
@@ -1385,7 +1419,8 @@ module Aws::AutoScaling
1385
1419
  # default_instance_warmup: 1,
1386
1420
  # traffic_sources: [
1387
1421
  # {
1388
- # identifier: "XmlStringMaxLen511",
1422
+ # identifier: "XmlStringMaxLen511", # required
1423
+ # type: "XmlStringMaxLen511",
1389
1424
  # },
1390
1425
  # ],
1391
1426
  # })
@@ -2473,6 +2508,7 @@ module Aws::AutoScaling
2473
2508
  # resp.auto_scaling_groups[0].default_instance_warmup #=> Integer
2474
2509
  # resp.auto_scaling_groups[0].traffic_sources #=> Array
2475
2510
  # resp.auto_scaling_groups[0].traffic_sources[0].identifier #=> String
2511
+ # resp.auto_scaling_groups[0].traffic_sources[0].type #=> String
2476
2512
  # resp.next_token #=> String
2477
2513
  #
2478
2514
  #
@@ -2623,29 +2659,14 @@ module Aws::AutoScaling
2623
2659
  # EC2 Auto Scaling, which helps you update instances in your Auto
2624
2660
  # Scaling group after you make configuration changes.
2625
2661
  #
2626
- # To help you determine the status of an instance refresh, this
2627
- # operation returns information about the instance refreshes you
2628
- # previously initiated, including their status, end time, the percentage
2629
- # of the instance refresh that is complete, and the number of instances
2630
- # remaining to update before the instance refresh is complete.
2631
- #
2632
- # The following are the possible statuses:
2633
- #
2634
- # * `Pending` - The request was created, but the operation has not
2635
- # started.
2636
- #
2637
- # * `InProgress` - The operation is in progress.
2638
- #
2639
- # * `Successful` - The operation completed successfully.
2640
- #
2641
- # * `Failed` - The operation failed to complete. You can troubleshoot
2642
- # using the status reason and the scaling activities.
2643
- #
2644
- # * `Cancelling` - An ongoing operation is being cancelled. Cancellation
2645
- # does not roll back any replacements that have already been
2646
- # completed, but it prevents new replacements from being started.
2647
- #
2648
- # * `Cancelled` - The operation is cancelled.
2662
+ # To help you determine the status of an instance refresh, Amazon EC2
2663
+ # Auto Scaling returns information about the instance refreshes you
2664
+ # previously initiated, including their status, start time, end time,
2665
+ # the percentage of the instance refresh that is complete, and the
2666
+ # number of instances remaining to update before the instance refresh is
2667
+ # complete. If a rollback is initiated while an instance refresh is in
2668
+ # progress, Amazon EC2 Auto Scaling also returns information about the
2669
+ # rollback of the instance refresh.
2649
2670
  #
2650
2671
  #
2651
2672
  #
@@ -2716,7 +2737,7 @@ module Aws::AutoScaling
2716
2737
  # resp.instance_refreshes #=> Array
2717
2738
  # resp.instance_refreshes[0].instance_refresh_id #=> String
2718
2739
  # resp.instance_refreshes[0].auto_scaling_group_name #=> String
2719
- # resp.instance_refreshes[0].status #=> String, one of "Pending", "InProgress", "Successful", "Failed", "Cancelling", "Cancelled"
2740
+ # resp.instance_refreshes[0].status #=> String, one of "Pending", "InProgress", "Successful", "Failed", "Cancelling", "Cancelled", "RollbackInProgress", "RollbackFailed", "RollbackSuccessful"
2720
2741
  # resp.instance_refreshes[0].status_reason #=> String
2721
2742
  # resp.instance_refreshes[0].start_time #=> Time
2722
2743
  # resp.instance_refreshes[0].end_time #=> Time
@@ -2732,6 +2753,9 @@ module Aws::AutoScaling
2732
2753
  # resp.instance_refreshes[0].preferences.checkpoint_percentages[0] #=> Integer
2733
2754
  # resp.instance_refreshes[0].preferences.checkpoint_delay #=> Integer
2734
2755
  # resp.instance_refreshes[0].preferences.skip_matching #=> Boolean
2756
+ # resp.instance_refreshes[0].preferences.auto_rollback #=> Boolean
2757
+ # resp.instance_refreshes[0].preferences.scale_in_protected_instances #=> String, one of "Refresh", "Ignore", "Wait"
2758
+ # resp.instance_refreshes[0].preferences.standby_instances #=> String, one of "Terminate", "Ignore", "Wait"
2735
2759
  # resp.instance_refreshes[0].desired_configuration.launch_template.launch_template_id #=> String
2736
2760
  # resp.instance_refreshes[0].desired_configuration.launch_template.launch_template_name #=> String
2737
2761
  # resp.instance_refreshes[0].desired_configuration.launch_template.version #=> String
@@ -2790,6 +2814,14 @@ module Aws::AutoScaling
2790
2814
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_allocation_strategy #=> String
2791
2815
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_instance_pools #=> Integer
2792
2816
  # resp.instance_refreshes[0].desired_configuration.mixed_instances_policy.instances_distribution.spot_max_price #=> String
2817
+ # resp.instance_refreshes[0].rollback_details.rollback_reason #=> String
2818
+ # resp.instance_refreshes[0].rollback_details.rollback_start_time #=> Time
2819
+ # resp.instance_refreshes[0].rollback_details.percentage_complete_on_rollback #=> Integer
2820
+ # resp.instance_refreshes[0].rollback_details.instances_to_update_on_rollback #=> Integer
2821
+ # resp.instance_refreshes[0].rollback_details.progress_details_on_rollback.live_pool_progress.percentage_complete #=> Integer
2822
+ # resp.instance_refreshes[0].rollback_details.progress_details_on_rollback.live_pool_progress.instances_to_update #=> Integer
2823
+ # resp.instance_refreshes[0].rollback_details.progress_details_on_rollback.warm_pool_progress.percentage_complete #=> Integer
2824
+ # resp.instance_refreshes[0].rollback_details.progress_details_on_rollback.warm_pool_progress.instances_to_update #=> Integer
2793
2825
  # resp.next_token #=> String
2794
2826
  #
2795
2827
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeInstanceRefreshes AWS API Documentation
@@ -3025,6 +3057,17 @@ module Aws::AutoScaling
3025
3057
  req.send_request(options)
3026
3058
  end
3027
3059
 
3060
+ # <note markdown="1"> This API call has been replaced with a new "traffic sources" API
3061
+ # call (`DescribeTrafficSources`) that can describe multiple traffic
3062
+ # sources types. While we continue to support
3063
+ # `DescribeLoadBalancerTargetGroups`, and you can use both the original
3064
+ # `DescribeLoadBalancerTargetGroups` API call and the new
3065
+ # `DescribeTrafficSources` API call on the same Auto Scaling group, we
3066
+ # recommend using the new "traffic sources" API call to simplify how
3067
+ # you manage traffic sources.
3068
+ #
3069
+ # </note>
3070
+ #
3028
3071
  # Gets information about the Elastic Load Balancing target groups for
3029
3072
  # the specified Auto Scaling group.
3030
3073
  #
@@ -3122,12 +3165,22 @@ module Aws::AutoScaling
3122
3165
  req.send_request(options)
3123
3166
  end
3124
3167
 
3168
+ # <note markdown="1"> This API call has been replaced with a new "traffic sources" API
3169
+ # call (`DescribeTrafficSources`) that can describe multiple traffic
3170
+ # sources types. While we continue to support `DescribeLoadBalancers`,
3171
+ # and you can use both the original `DescribeLoadBalancers` API call and
3172
+ # the new `DescribeTrafficSources` API call on the same Auto Scaling
3173
+ # group, we recommend using the new "traffic sources" API call to
3174
+ # simplify how you manage traffic sources.
3175
+ #
3176
+ # </note>
3177
+ #
3125
3178
  # Gets information about the load balancers for the specified Auto
3126
3179
  # Scaling group.
3127
3180
  #
3128
3181
  # This operation describes only Classic Load Balancers. If you have
3129
3182
  # Application Load Balancers, Network Load Balancers, or Gateway Load
3130
- # Balancer, use the DescribeLoadBalancerTargetGroups API instead.
3183
+ # Balancers, use the DescribeLoadBalancerTargetGroups API instead.
3131
3184
  #
3132
3185
  # To determine the attachment status of the load balancer, use the
3133
3186
  # `State` element in the response. When you attach a load balancer to an
@@ -3635,7 +3688,7 @@ module Aws::AutoScaling
3635
3688
  # resp.activities[0].cause #=> String
3636
3689
  # resp.activities[0].start_time #=> Time
3637
3690
  # resp.activities[0].end_time #=> Time
3638
- # resp.activities[0].status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled"
3691
+ # resp.activities[0].status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled", "WaitingForConnectionDraining"
3639
3692
  # resp.activities[0].status_message #=> String
3640
3693
  # resp.activities[0].progress #=> Integer
3641
3694
  # resp.activities[0].details #=> String
@@ -3964,19 +4017,30 @@ module Aws::AutoScaling
3964
4017
  req.send_request(options)
3965
4018
  end
3966
4019
 
3967
- # **Reserved for use with Amazon VPC Lattice, which is in preview and
3968
- # subject to change. Do not use this API for production workloads. This
3969
- # API is also subject to change.**
3970
- #
3971
4020
  # Gets information about the traffic sources for the specified Auto
3972
4021
  # Scaling group.
3973
4022
  #
4023
+ # You can optionally provide a traffic source type. If you provide a
4024
+ # traffic source type, then the results only include that traffic source
4025
+ # type.
4026
+ #
4027
+ # If you do not provide a traffic source type, then the results include
4028
+ # all the traffic sources for the specified Auto Scaling group.
4029
+ #
3974
4030
  # @option params [required, String] :auto_scaling_group_name
3975
4031
  # The name of the Auto Scaling group.
3976
4032
  #
3977
- # @option params [required, String] :traffic_source_type
3978
- # The type of traffic source you are describing. Currently, the only
3979
- # valid value is `vpc-lattice`.
4033
+ # @option params [String] :traffic_source_type
4034
+ # The traffic source type that you want to describe.
4035
+ #
4036
+ # The following lists the valid values:
4037
+ #
4038
+ # * `elb` if the traffic source is a Classic Load Balancer.
4039
+ #
4040
+ # * `elbv2` if the traffic source is a Application Load Balancer,
4041
+ # Gateway Load Balancer, or Network Load Balancer.
4042
+ #
4043
+ # * `vpc-lattice` if the traffic source is VPC Lattice.
3980
4044
  #
3981
4045
  # @option params [String] :next_token
3982
4046
  # The token for the next set of items to return. (You received this
@@ -3991,11 +4055,34 @@ module Aws::AutoScaling
3991
4055
  # * {Types::DescribeTrafficSourcesResponse#traffic_sources #traffic_sources} => Array&lt;Types::TrafficSourceState&gt;
3992
4056
  # * {Types::DescribeTrafficSourcesResponse#next_token #next_token} => String
3993
4057
  #
4058
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4059
+ #
4060
+ #
4061
+ # @example Example: To describe the target groups for an Auto Scaling group
4062
+ #
4063
+ # # This example describes the target groups attached to the specified Auto Scaling group.
4064
+ #
4065
+ # resp = client.describe_traffic_sources({
4066
+ # auto_scaling_group_name: "my-auto-scaling-group",
4067
+ # })
4068
+ #
4069
+ # resp.to_h outputs the following:
4070
+ # {
4071
+ # next_token: "",
4072
+ # traffic_sources: [
4073
+ # {
4074
+ # identifier: "arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-0e2f2665eEXAMPLE",
4075
+ # state: "InService",
4076
+ # type: "vpc-lattice",
4077
+ # },
4078
+ # ],
4079
+ # }
4080
+ #
3994
4081
  # @example Request syntax with placeholder values
3995
4082
  #
3996
4083
  # resp = client.describe_traffic_sources({
3997
4084
  # auto_scaling_group_name: "XmlStringMaxLen255", # required
3998
- # traffic_source_type: "XmlStringMaxLen255", # required
4085
+ # traffic_source_type: "XmlStringMaxLen255",
3999
4086
  # next_token: "XmlString",
4000
4087
  # max_records: 1,
4001
4088
  # })
@@ -4005,6 +4092,8 @@ module Aws::AutoScaling
4005
4092
  # resp.traffic_sources #=> Array
4006
4093
  # resp.traffic_sources[0].traffic_source #=> String
4007
4094
  # resp.traffic_sources[0].state #=> String
4095
+ # resp.traffic_sources[0].identifier #=> String
4096
+ # resp.traffic_sources[0].type #=> String
4008
4097
  # resp.next_token #=> String
4009
4098
  #
4010
4099
  # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/DescribeTrafficSources AWS API Documentation
@@ -4161,7 +4250,7 @@ module Aws::AutoScaling
4161
4250
  # resp.activities[0].cause #=> String
4162
4251
  # resp.activities[0].start_time #=> Time
4163
4252
  # resp.activities[0].end_time #=> Time
4164
- # resp.activities[0].status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled"
4253
+ # resp.activities[0].status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled", "WaitingForConnectionDraining"
4165
4254
  # resp.activities[0].status_message #=> String
4166
4255
  # resp.activities[0].progress #=> Integer
4167
4256
  # resp.activities[0].details #=> String
@@ -4177,6 +4266,16 @@ module Aws::AutoScaling
4177
4266
  req.send_request(options)
4178
4267
  end
4179
4268
 
4269
+ # <note markdown="1"> This API call has been replaced with a new "traffic sources" API
4270
+ # call (`DetachTrafficSources`) that can detach multiple traffic sources
4271
+ # types. While we continue to support `DetachLoadBalancerTargetGroups`,
4272
+ # and you can use both the original `DetachLoadBalancerTargetGroups` API
4273
+ # call and the new `DetachTrafficSources` API call on the same Auto
4274
+ # Scaling group, we recommend using the new "traffic sources" API call
4275
+ # to simplify how you manage traffic sources.
4276
+ #
4277
+ # </note>
4278
+ #
4180
4279
  # Detaches one or more target groups from the specified Auto Scaling
4181
4280
  # group.
4182
4281
  #
@@ -4229,12 +4328,22 @@ module Aws::AutoScaling
4229
4328
  req.send_request(options)
4230
4329
  end
4231
4330
 
4331
+ # <note markdown="1"> This API call has been replaced with a new "traffic sources" API
4332
+ # call (`DetachTrafficSources`) that can detach multiple traffic sources
4333
+ # types. While we continue to support `DetachLoadBalancers`, and you can
4334
+ # use both the original `DetachLoadBalancers` API call and the new
4335
+ # `DetachTrafficSources` API call on the same Auto Scaling group, we
4336
+ # recommend using the new "traffic sources" API call to simplify how
4337
+ # you manage traffic sources.
4338
+ #
4339
+ # </note>
4340
+ #
4232
4341
  # Detaches one or more Classic Load Balancers from the specified Auto
4233
4342
  # Scaling group.
4234
4343
  #
4235
4344
  # This operation detaches only Classic Load Balancers. If you have
4236
4345
  # Application Load Balancers, Network Load Balancers, or Gateway Load
4237
- # Balancer, use the DetachLoadBalancerTargetGroups API instead.
4346
+ # Balancers, use the DetachLoadBalancerTargetGroups API instead.
4238
4347
  #
4239
4348
  # When you detach a load balancer, it enters the `Removing` state while
4240
4349
  # deregistering the instances in the group. When all instances are
@@ -4278,13 +4387,14 @@ module Aws::AutoScaling
4278
4387
  req.send_request(options)
4279
4388
  end
4280
4389
 
4281
- # **Reserved for use with Amazon VPC Lattice, which is in preview and
4282
- # subject to change. Do not use this API for production workloads. This
4283
- # API is also subject to change.**
4284
- #
4285
4390
  # Detaches one or more traffic sources from the specified Auto Scaling
4286
4391
  # group.
4287
4392
  #
4393
+ # When you detach a taffic, it enters the `Removing` state while
4394
+ # deregistering the instances in the group. When all instances are
4395
+ # deregistered, then you can no longer describe the traffic source using
4396
+ # the DescribeTrafficSources API call. The instances continue to run.
4397
+ #
4288
4398
  # @option params [required, String] :auto_scaling_group_name
4289
4399
  # The name of the Auto Scaling group.
4290
4400
  #
@@ -4292,22 +4402,34 @@ module Aws::AutoScaling
4292
4402
  # The unique identifiers of one or more traffic sources you are
4293
4403
  # detaching. You can specify up to 10 traffic sources.
4294
4404
  #
4295
- # Currently, you must specify an Amazon Resource Name (ARN) for an
4296
- # existing VPC Lattice target group. When you detach a target group, it
4297
- # enters the `Removing` state while deregistering the instances in the
4298
- # group. When all instances are deregistered, then you can no longer
4299
- # describe the target group using the DescribeTrafficSources API call.
4300
- # The instances continue to run.
4301
- #
4302
4405
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4303
4406
  #
4407
+ #
4408
+ # @example Example: To detach a target group from an Auto Scaling group
4409
+ #
4410
+ # # This example detaches the specified target group from the specified Auto Scaling group.
4411
+ #
4412
+ # resp = client.detach_traffic_sources({
4413
+ # auto_scaling_group_name: "my-auto-scaling-group",
4414
+ # traffic_sources: [
4415
+ # {
4416
+ # identifier: "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067",
4417
+ # },
4418
+ # ],
4419
+ # })
4420
+ #
4421
+ # resp.to_h outputs the following:
4422
+ # {
4423
+ # }
4424
+ #
4304
4425
  # @example Request syntax with placeholder values
4305
4426
  #
4306
4427
  # resp = client.detach_traffic_sources({
4307
4428
  # auto_scaling_group_name: "XmlStringMaxLen255", # required
4308
4429
  # traffic_sources: [ # required
4309
4430
  # {
4310
- # identifier: "XmlStringMaxLen511",
4431
+ # identifier: "XmlStringMaxLen511", # required
4432
+ # type: "XmlStringMaxLen511",
4311
4433
  # },
4312
4434
  # ],
4313
4435
  # })
@@ -4593,7 +4715,7 @@ module Aws::AutoScaling
4593
4715
  # resp.activities[0].cause #=> String
4594
4716
  # resp.activities[0].start_time #=> Time
4595
4717
  # resp.activities[0].end_time #=> Time
4596
- # resp.activities[0].status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled"
4718
+ # resp.activities[0].status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled", "WaitingForConnectionDraining"
4597
4719
  # resp.activities[0].status_message #=> String
4598
4720
  # resp.activities[0].progress #=> Integer
4599
4721
  # resp.activities[0].details #=> String
@@ -4748,7 +4870,7 @@ module Aws::AutoScaling
4748
4870
  # resp.activities[0].cause #=> String
4749
4871
  # resp.activities[0].start_time #=> Time
4750
4872
  # resp.activities[0].end_time #=> Time
4751
- # resp.activities[0].status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled"
4873
+ # resp.activities[0].status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled", "WaitingForConnectionDraining"
4752
4874
  # resp.activities[0].status_message #=> String
4753
4875
  # resp.activities[0].progress #=> Integer
4754
4876
  # resp.activities[0].details #=> String
@@ -5865,6 +5987,63 @@ module Aws::AutoScaling
5865
5987
  req.send_request(options)
5866
5988
  end
5867
5989
 
5990
+ # Cancels an instance refresh that is in progress and rolls back any
5991
+ # changes that it made. Amazon EC2 Auto Scaling replaces any instances
5992
+ # that were replaced during the instance refresh. This restores your
5993
+ # Auto Scaling group to the configuration that it was using before the
5994
+ # start of the instance refresh.
5995
+ #
5996
+ # This operation is part of the [instance refresh feature][1] in Amazon
5997
+ # EC2 Auto Scaling, which helps you update instances in your Auto
5998
+ # Scaling group after you make configuration changes.
5999
+ #
6000
+ # A rollback is not supported in the following situations:
6001
+ #
6002
+ # * There is no desired configuration specified for the instance
6003
+ # refresh.
6004
+ #
6005
+ # * The Auto Scaling group has a launch template that uses an Amazon Web
6006
+ # Services Systems Manager parameter instead of an AMI ID for the
6007
+ # `ImageId` property.
6008
+ #
6009
+ # * The Auto Scaling group uses the launch template's `$Latest` or
6010
+ # `$Default` version.
6011
+ #
6012
+ # When you receive a successful response from this operation, Amazon EC2
6013
+ # Auto Scaling immediately begins replacing instances. You can check the
6014
+ # status of this operation through the DescribeInstanceRefreshes API
6015
+ # operation.
6016
+ #
6017
+ #
6018
+ #
6019
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-instance-refresh.html
6020
+ #
6021
+ # @option params [String] :auto_scaling_group_name
6022
+ # The name of the Auto Scaling group.
6023
+ #
6024
+ # @return [Types::RollbackInstanceRefreshAnswer] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6025
+ #
6026
+ # * {Types::RollbackInstanceRefreshAnswer#instance_refresh_id #instance_refresh_id} => String
6027
+ #
6028
+ # @example Request syntax with placeholder values
6029
+ #
6030
+ # resp = client.rollback_instance_refresh({
6031
+ # auto_scaling_group_name: "XmlStringMaxLen255",
6032
+ # })
6033
+ #
6034
+ # @example Response structure
6035
+ #
6036
+ # resp.instance_refresh_id #=> String
6037
+ #
6038
+ # @see http://docs.aws.amazon.com/goto/WebAPI/autoscaling-2011-01-01/RollbackInstanceRefresh AWS API Documentation
6039
+ #
6040
+ # @overload rollback_instance_refresh(params = {})
6041
+ # @param [Hash] params ({})
6042
+ def rollback_instance_refresh(params = {}, options = {})
6043
+ req = build_request(:rollback_instance_refresh, params)
6044
+ req.send_request(options)
6045
+ end
6046
+
5868
6047
  # Sets the size of the specified Auto Scaling group.
5869
6048
  #
5870
6049
  # If a scale-in activity occurs as a result of a new `DesiredCapacity`
@@ -6053,9 +6232,9 @@ module Aws::AutoScaling
6053
6232
  req.send_request(options)
6054
6233
  end
6055
6234
 
6056
- # Starts a new instance refresh operation. An instance refresh performs
6057
- # a rolling replacement of all or some instances in an Auto Scaling
6058
- # group. Each instance is terminated first and then replaced, which
6235
+ # Starts an instance refresh. During an instance refresh, Amazon EC2
6236
+ # Auto Scaling performs a rolling update of instances in an Auto Scaling
6237
+ # group. Instances are terminated first and then replaced, which
6059
6238
  # temporarily reduces the capacity available within your Auto Scaling
6060
6239
  # group.
6061
6240
  #
@@ -6067,12 +6246,26 @@ module Aws::AutoScaling
6067
6246
  # start an instance refresh to immediately begin the process of updating
6068
6247
  # instances in the group.
6069
6248
  #
6070
- # If the call succeeds, it creates a new instance refresh request with a
6071
- # unique ID that you can use to track its progress. To query its status,
6072
- # call the DescribeInstanceRefreshes API. To describe the instance
6073
- # refreshes that have already run, call the DescribeInstanceRefreshes
6074
- # API. To cancel an instance refresh operation in progress, use the
6075
- # CancelInstanceRefresh API.
6249
+ # If successful, the request's response contains a unique ID that you
6250
+ # can use to track the progress of the instance refresh. To query its
6251
+ # status, call the DescribeInstanceRefreshes API. To describe the
6252
+ # instance refreshes that have already run, call the
6253
+ # DescribeInstanceRefreshes API. To cancel an instance refresh that is
6254
+ # in progress, use the CancelInstanceRefresh API.
6255
+ #
6256
+ # An instance refresh might fail for several reasons, such as EC2 launch
6257
+ # failures, misconfigured health checks, or not ignoring or allowing the
6258
+ # termination of instances that are in `Standby` state or protected from
6259
+ # scale in. You can monitor for failed EC2 launches using the scaling
6260
+ # activities. To find the scaling activities, call the
6261
+ # DescribeScalingActivities API.
6262
+ #
6263
+ # If you enable auto rollback, your Auto Scaling group will be rolled
6264
+ # back automatically when the instance refresh fails. You can enable
6265
+ # this feature before starting an instance refresh by specifying the
6266
+ # `AutoRollback` property in the instance refresh preferences.
6267
+ # Otherwise, to roll back an instance refresh before it finishes, use
6268
+ # the RollbackInstanceRefresh API.
6076
6269
  #
6077
6270
  #
6078
6271
  #
@@ -6085,12 +6278,6 @@ module Aws::AutoScaling
6085
6278
  # The strategy to use for the instance refresh. The only valid value is
6086
6279
  # `Rolling`.
6087
6280
  #
6088
- # A rolling update helps you update your instances gradually. A rolling
6089
- # update can fail due to failed health checks or if instances are on
6090
- # standby or are protected from scale in. If the rolling update process
6091
- # fails, any instances that are replaced are not rolled back to their
6092
- # previous configuration.
6093
- #
6094
6281
  # @option params [Types::DesiredConfiguration] :desired_configuration
6095
6282
  # The desired configuration. For example, the desired configuration can
6096
6283
  # specify a new launch template or a new version of the current launch
@@ -6104,14 +6291,24 @@ module Aws::AutoScaling
6104
6291
  # launch template for your desired configuration, consider enabling the
6105
6292
  # `SkipMatching` property in preferences. If it's enabled, Amazon EC2
6106
6293
  # Auto Scaling skips replacing instances that already use the specified
6107
- # launch template and version. This can help you reduce the number of
6108
- # replacements that are required to apply updates.
6294
+ # launch template and instance types. This can help you reduce the
6295
+ # number of replacements that are required to apply updates.
6109
6296
  #
6110
6297
  # </note>
6111
6298
  #
6112
6299
  # @option params [Types::RefreshPreferences] :preferences
6113
- # Set of preferences associated with the instance refresh request. If
6114
- # not provided, the default values are used.
6300
+ # Sets your preferences for the instance refresh so that it performs as
6301
+ # expected when you start it. Includes the instance warmup time, the
6302
+ # minimum healthy percentage, and the behaviors that you want Amazon EC2
6303
+ # Auto Scaling to use if instances that are in `Standby` state or
6304
+ # protected from scale in are found. You can also choose to enable
6305
+ # additional features, such as the following:
6306
+ #
6307
+ # * Auto rollback
6308
+ #
6309
+ # * Checkpoints
6310
+ #
6311
+ # * Skip matching
6115
6312
  #
6116
6313
  # @return [Types::StartInstanceRefreshAnswer] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6117
6314
  #
@@ -6240,6 +6437,9 @@ module Aws::AutoScaling
6240
6437
  # checkpoint_percentages: [1],
6241
6438
  # checkpoint_delay: 1,
6242
6439
  # skip_matching: false,
6440
+ # auto_rollback: false,
6441
+ # scale_in_protected_instances: "Refresh", # accepts Refresh, Ignore, Wait
6442
+ # standby_instances: "Terminate", # accepts Terminate, Ignore, Wait
6243
6443
  # },
6244
6444
  # })
6245
6445
  #
@@ -6389,7 +6589,7 @@ module Aws::AutoScaling
6389
6589
  # resp.activity.cause #=> String
6390
6590
  # resp.activity.start_time #=> Time
6391
6591
  # resp.activity.end_time #=> Time
6392
- # resp.activity.status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled"
6592
+ # resp.activity.status_code #=> String, one of "PendingSpotBidPlacement", "WaitingForSpotInstanceRequestId", "WaitingForSpotInstanceId", "WaitingForInstanceId", "PreInService", "InProgress", "WaitingForELBConnectionDraining", "MidLifecycleAction", "WaitingForInstanceWarmup", "Successful", "Failed", "Cancelled", "WaitingForConnectionDraining"
6393
6593
  # resp.activity.status_message #=> String
6394
6594
  # resp.activity.progress #=> Integer
6395
6595
  # resp.activity.details #=> String
@@ -6431,7 +6631,7 @@ module Aws::AutoScaling
6431
6631
  # performance or availability of your application.
6432
6632
  #
6433
6633
  # Note the following about changing `DesiredCapacity`, `MaxSize`, or
6434
- # `MinSize`\:
6634
+ # `MinSize`:
6435
6635
  #
6436
6636
  # * If a scale-in activity occurs as a result of a new `DesiredCapacity`
6437
6637
  # value that is lower than the current size of the group, the Auto
@@ -6514,12 +6714,16 @@ module Aws::AutoScaling
6514
6714
  # One or more Availability Zones for the group.
6515
6715
  #
6516
6716
  # @option params [String] :health_check_type
6517
- # Determines whether any additional health checks are performed on the
6518
- # instances in this group. Amazon EC2 health checks are always on.
6717
+ # A comma-separated list of one or more health check types.
6718
+ #
6719
+ # The valid values are `EC2`, `ELB`, and `VPC_LATTICE`. `EC2` is the
6720
+ # default health check and cannot be disabled. For more information, see
6721
+ # [Health checks for Auto Scaling instances][1] in the *Amazon EC2 Auto
6722
+ # Scaling User Guide*.
6723
+ #
6519
6724
  #
6520
- # The valid values are `EC2` (default), `ELB`, and `VPC_LATTICE`. The
6521
- # `VPC_LATTICE` health check type is reserved for use with VPC Lattice,
6522
- # which is in preview release and is subject to change.
6725
+ #
6726
+ # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html
6523
6727
  #
6524
6728
  # @option params [Integer] :health_check_grace_period
6525
6729
  # The amount of time, in seconds, that Amazon EC2 Auto Scaling waits
@@ -6631,24 +6835,25 @@ module Aws::AutoScaling
6631
6835
  # [1]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html
6632
6836
  #
6633
6837
  # @option params [Integer] :default_instance_warmup
6634
- # The amount of time, in seconds, until a newly launched instance can
6635
- # contribute to the Amazon CloudWatch metrics. This delay lets an
6636
- # instance finish initializing before Amazon EC2 Auto Scaling aggregates
6637
- # instance metrics, resulting in more reliable usage data. Set this
6638
- # value equal to the amount of time that it takes for resource
6639
- # consumption to become stable after an instance reaches the `InService`
6640
- # state. For more information, see [Set the default instance warmup for
6641
- # an Auto Scaling group][1] in the *Amazon EC2 Auto Scaling User Guide*.
6642
- #
6643
- # To manage your warm-up settings at the group level, we recommend that
6644
- # you set the default instance warmup, *even if its value is set to 0
6645
- # seconds*. This also optimizes the performance of scaling policies that
6646
- # scale continuously, such as target tracking and step scaling policies.
6647
- #
6648
- # If you need to remove a value that you previously set, include the
6838
+ # The amount of time, in seconds, until a new instance is considered to
6839
+ # have finished initializing and resource consumption to become stable
6840
+ # after it enters the `InService` state.
6841
+ #
6842
+ # During an instance refresh, Amazon EC2 Auto Scaling waits for the
6843
+ # warm-up period after it replaces an instance before it moves on to
6844
+ # replacing the next instance. Amazon EC2 Auto Scaling also waits for
6845
+ # the warm-up period before aggregating the metrics for new instances
6846
+ # with existing instances in the Amazon CloudWatch metrics that are used
6847
+ # for scaling, resulting in more reliable usage data. For more
6848
+ # information, see [Set the default instance warmup for an Auto Scaling
6849
+ # group][1] in the *Amazon EC2 Auto Scaling User Guide*.
6850
+ #
6851
+ # To manage various warm-up settings at the group level, we recommend
6852
+ # that you set the default instance warmup, *even if it is set to 0
6853
+ # seconds*. To remove a value that you previously set, include the
6649
6854
  # property but specify `-1` for the value. However, we strongly
6650
6855
  # recommend keeping the default instance warmup enabled by specifying a
6651
- # minimum value of `0`.
6856
+ # value of `0` or other nominal value.
6652
6857
  #
6653
6858
  #
6654
6859
  #
@@ -6803,7 +7008,7 @@ module Aws::AutoScaling
6803
7008
  params: params,
6804
7009
  config: config)
6805
7010
  context[:gem_name] = 'aws-sdk-autoscaling'
6806
- context[:gem_version] = '1.85.0'
7011
+ context[:gem_version] = '1.87.0'
6807
7012
  Seahorse::Client::Request.new(handlers, context)
6808
7013
  end
6809
7014