AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Updates the instance protection settings of the specified instances. This operation cannot be called on instances in a warm pool.

For more information about preventing instances that are part of an Auto Scaling group from terminating on scale in, see Using instance scale-in protection in the Amazon EC2 Auto Scaling User Guide.

If you exceed your maximum limit of instance IDs, which is 50 per Auto Scaling group, the call fails.

Note:

For .NET Core this operation is only available in asynchronous form. Please refer to SetInstanceProtectionAsync.

Namespace: Amazon.AutoScaling
Assembly: AWSSDK.AutoScaling.dll
Version: 3.x.y.z

Syntax

C#
public abstract SetInstanceProtectionResponse SetInstanceProtection(
         SetInstanceProtectionRequest request
)

Parameters

request
Type: Amazon.AutoScaling.Model.SetInstanceProtectionRequest

Container for the necessary parameters to execute the SetInstanceProtection service method.

Return Value


The response from the SetInstanceProtection service method, as returned by AutoScaling.

Exceptions

ExceptionCondition
LimitExceededException You have already reached a limit for your Amazon EC2 Auto Scaling resources (for example, Auto Scaling groups, launch configurations, or lifecycle hooks). For more information, see DescribeAccountLimits in the Amazon EC2 Auto Scaling API Reference.
ResourceContentionException You already have a pending update to an Amazon EC2 Auto Scaling resource (for example, an Auto Scaling group, instance, or load balancer).

Examples

This example enables instance protection for the specified instance.

To enable instance protection for an instance


var client = new AmazonAutoScalingClient();
var response = client.SetInstanceProtection(new SetInstanceProtectionRequest 
{
    AutoScalingGroupName = "my-auto-scaling-group",
    InstanceIds = new List<string> {
        "i-93633f9b"
    },
    ProtectedFromScaleIn = true
});


            

This example disables instance protection for the specified instance.

To disable instance protection for an instance


var client = new AmazonAutoScalingClient();
var response = client.SetInstanceProtection(new SetInstanceProtectionRequest 
{
    AutoScalingGroupName = "my-auto-scaling-group",
    InstanceIds = new List<string> {
        "i-93633f9b"
    },
    ProtectedFromScaleIn = false
});


            

Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5

See Also