Show / Hide Table of Contents

Class CfnAutoScalingGroupPropsMixin.InstancesDistributionProperty

Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.

Inheritance
object
CfnAutoScalingGroupPropsMixin.InstancesDistributionProperty
Implements
CfnAutoScalingGroupPropsMixin.IInstancesDistributionProperty
Inherited Members
object.GetType()
object.MemberwiseClone()
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
Namespace: Amazon.CDK.Mixins.Preview.AWS.AutoScaling.Mixins
Assembly: Amazon.CDK.Mixins.Preview.dll
Syntax (csharp)
public class CfnAutoScalingGroupPropsMixin.InstancesDistributionProperty : CfnAutoScalingGroupPropsMixin.IInstancesDistributionProperty
Syntax (vb)
Public Class CfnAutoScalingGroupPropsMixin.InstancesDistributionProperty Implements CfnAutoScalingGroupPropsMixin.IInstancesDistributionProperty
Remarks

For more information, see Auto Scaling groups with multiple instance types and purchase options in the Amazon EC2 Auto Scaling User Guide .

InstancesDistribution is a property of the AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy property type.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
             // The values are placeholders you should change.
             using Amazon.CDK.Mixins.Preview.AWS.AutoScaling.Mixins;

             var instancesDistributionProperty = new InstancesDistributionProperty {
                 OnDemandAllocationStrategy = "onDemandAllocationStrategy",
                 OnDemandBaseCapacity = 123,
                 OnDemandPercentageAboveBaseCapacity = 123,
                 SpotAllocationStrategy = "spotAllocationStrategy",
                 SpotInstancePools = 123,
                 SpotMaxPrice = "spotMaxPrice"
             };

Synopsis

Constructors

InstancesDistributionProperty()

Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.

Properties

OnDemandAllocationStrategy

The allocation strategy to apply to your On-Demand Instances when they are launched.

OnDemandBaseCapacity

The minimum amount of the Auto Scaling group's capacity that must be fulfilled by On-Demand Instances.

OnDemandPercentageAboveBaseCapacity

Controls the percentages of On-Demand Instances and Spot Instances for your additional capacity beyond OnDemandBaseCapacity .

SpotAllocationStrategy

The allocation strategy to apply to your Spot Instances when they are launched.

SpotInstancePools

The number of Spot Instance pools across which to allocate your Spot Instances.

SpotMaxPrice

The maximum price per unit hour that you are willing to pay for a Spot Instance.

Constructors

InstancesDistributionProperty()

Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.

public InstancesDistributionProperty()
Remarks

For more information, see Auto Scaling groups with multiple instance types and purchase options in the Amazon EC2 Auto Scaling User Guide .

InstancesDistribution is a property of the AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy property type.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
             // The values are placeholders you should change.
             using Amazon.CDK.Mixins.Preview.AWS.AutoScaling.Mixins;

             var instancesDistributionProperty = new InstancesDistributionProperty {
                 OnDemandAllocationStrategy = "onDemandAllocationStrategy",
                 OnDemandBaseCapacity = 123,
                 OnDemandPercentageAboveBaseCapacity = 123,
                 SpotAllocationStrategy = "spotAllocationStrategy",
                 SpotInstancePools = 123,
                 SpotMaxPrice = "spotMaxPrice"
             };

Properties

OnDemandAllocationStrategy

The allocation strategy to apply to your On-Demand Instances when they are launched.

public string? OnDemandAllocationStrategy { get; set; }
Property Value

string

Remarks

Possible instance types are determined by the launch template overrides that you specify.

The following lists the valid values:

    See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandallocationstrategy

    OnDemandBaseCapacity

    The minimum amount of the Auto Scaling group's capacity that must be fulfilled by On-Demand Instances.

    public double? OnDemandBaseCapacity { get; set; }
    Property Value

    double?

    Remarks

    This base portion is launched first as your group scales.

    This number has the same unit of measurement as the group's desired capacity. If you change the default unit of measurement (number of instances) by specifying weighted capacity values in your launch template overrides list, or by changing the default desired capacity type setting of the group, you must specify this number using the same unit of measurement.

    Default: 0

    An update to this setting means a gradual replacement of instances to adjust the current On-Demand Instance levels. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.
    

    See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandbasecapacity

    OnDemandPercentageAboveBaseCapacity

    Controls the percentages of On-Demand Instances and Spot Instances for your additional capacity beyond OnDemandBaseCapacity .

    public double? OnDemandPercentageAboveBaseCapacity { get; set; }
    Property Value

    double?

    Remarks

    Expressed as a number (for example, 20 specifies 20% On-Demand Instances, 80% Spot Instances). If set to 100, only On-Demand Instances are used.

    Default: 100

    An update to this setting means a gradual replacement of instances to adjust the current On-Demand and Spot Instance levels for your additional capacity higher than the base capacity. When replacing instances, Amazon EC2 Auto Scaling launches new instances before terminating the previous ones.
    

    See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-ondemandpercentageabovebasecapacity

    SpotAllocationStrategy

    The allocation strategy to apply to your Spot Instances when they are launched.

    public string? SpotAllocationStrategy { get; set; }
    Property Value

    string

    Remarks

    Possible instance types are determined by the launch template overrides that you specify.

    The following lists the valid values:

      See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotallocationstrategy

      SpotInstancePools

      The number of Spot Instance pools across which to allocate your Spot Instances.

      public double? SpotInstancePools { get; set; }
      Property Value

      double?

      Remarks

      The Spot pools are determined from the different instance types in the overrides. Valid only when the SpotAllocationStrategy is lowest-price . Value must be in the range of 1–20.

      Default: 2

      See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotinstancepools

      SpotMaxPrice

      The maximum price per unit hour that you are willing to pay for a Spot Instance.

      public string? SpotMaxPrice { get; set; }
      Property Value

      string

      Remarks

      If your maximum price is lower than the Spot price for the instance types that you selected, your Spot Instances are not launched. We do not recommend specifying a maximum price because it can lead to increased interruptions. When Spot Instances launch, you pay the current Spot price. To remove a maximum price that you previously set, include the property but specify an empty string ("") for the value.

      If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify one.
      

      Valid Range: Minimum value of 0.001

      See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancesdistribution.html#cfn-autoscaling-autoscalinggroup-instancesdistribution-spotmaxprice

      Implements

      CfnAutoScalingGroupPropsMixin.IInstancesDistributionProperty
      Back to top Generated by DocFX