Class CfnAutoScalingGroup.LaunchTemplateOverridesProperty.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<CfnAutoScalingGroup.LaunchTemplateOverridesProperty>
- Enclosing interface:
- CfnAutoScalingGroup.LaunchTemplateOverridesProperty
CfnAutoScalingGroup.LaunchTemplateOverridesProperty
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()
Builds the configured instance.instanceRequirements
(IResolvable instanceRequirements) instanceRequirements
(CfnAutoScalingGroup.InstanceRequirementsProperty instanceRequirements) instanceType
(String instanceType) Sets the value ofCfnAutoScalingGroup.LaunchTemplateOverridesProperty.getInstanceType()
launchTemplateSpecification
(IResolvable launchTemplateSpecification) launchTemplateSpecification
(CfnAutoScalingGroup.LaunchTemplateSpecificationProperty launchTemplateSpecification) weightedCapacity
(String weightedCapacity)
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
instanceRequirements
@Stability(Stable) public CfnAutoScalingGroup.LaunchTemplateOverridesProperty.Builder instanceRequirements(IResolvable instanceRequirements) - Parameters:
instanceRequirements
- The instance requirements. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.You can specify up to four separate sets of instance requirements per Auto Scaling group. This is useful for provisioning instances from different Amazon Machine Images (AMIs) in the same Auto Scaling group. To do this, create the AMIs and create a new launch template for each AMI. Then, create a compatible set of instance requirements for each launch template.
If you specify
InstanceRequirements
, you can't specifyInstanceType
.- Returns:
this
-
instanceRequirements
@Stability(Stable) public CfnAutoScalingGroup.LaunchTemplateOverridesProperty.Builder instanceRequirements(CfnAutoScalingGroup.InstanceRequirementsProperty instanceRequirements) - Parameters:
instanceRequirements
- The instance requirements. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.You can specify up to four separate sets of instance requirements per Auto Scaling group. This is useful for provisioning instances from different Amazon Machine Images (AMIs) in the same Auto Scaling group. To do this, create the AMIs and create a new launch template for each AMI. Then, create a compatible set of instance requirements for each launch template.
If you specify
InstanceRequirements
, you can't specifyInstanceType
.- Returns:
this
-
instanceType
@Stability(Stable) public CfnAutoScalingGroup.LaunchTemplateOverridesProperty.Builder instanceType(String instanceType) Sets the value ofCfnAutoScalingGroup.LaunchTemplateOverridesProperty.getInstanceType()
- Parameters:
instanceType
- The instance type, such asm3.xlarge
. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see Instance types in the Amazon Elastic Compute Cloud User Guide . You can specify up to 40 instance types per Auto Scaling group.- Returns:
this
-
launchTemplateSpecification
@Stability(Stable) public CfnAutoScalingGroup.LaunchTemplateOverridesProperty.Builder launchTemplateSpecification(IResolvable launchTemplateSpecification) Sets the value ofCfnAutoScalingGroup.LaunchTemplateOverridesProperty.getLaunchTemplateSpecification()
- Parameters:
launchTemplateSpecification
- Provides a launch template for the specified instance type or set of instance requirements. For example, some instance types might require a launch template with a different AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's specified in theLaunchTemplate
definition. For more information, see Specifying a different launch template for an instance type in the Amazon EC2 Auto Scaling User Guide .You can specify up to 20 launch templates per Auto Scaling group. The launch templates specified in the overrides and in the
LaunchTemplate
definition count towards this limit.- Returns:
this
-
launchTemplateSpecification
@Stability(Stable) public CfnAutoScalingGroup.LaunchTemplateOverridesProperty.Builder launchTemplateSpecification(CfnAutoScalingGroup.LaunchTemplateSpecificationProperty launchTemplateSpecification) Sets the value ofCfnAutoScalingGroup.LaunchTemplateOverridesProperty.getLaunchTemplateSpecification()
- Parameters:
launchTemplateSpecification
- Provides a launch template for the specified instance type or set of instance requirements. For example, some instance types might require a launch template with a different AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's specified in theLaunchTemplate
definition. For more information, see Specifying a different launch template for an instance type in the Amazon EC2 Auto Scaling User Guide .You can specify up to 20 launch templates per Auto Scaling group. The launch templates specified in the overrides and in the
LaunchTemplate
definition count towards this limit.- Returns:
this
-
weightedCapacity
@Stability(Stable) public CfnAutoScalingGroup.LaunchTemplateOverridesProperty.Builder weightedCapacity(String weightedCapacity) - Parameters:
weightedCapacity
- If you provide a list of instance types to use, you can specify the number of capacity units provided by each instance type in terms of virtual CPUs, memory, storage, throughput, or other relative performance characteristic. When a Spot or On-Demand Instance is launched, the capacity units count toward the desired capacity. Amazon EC2 Auto Scaling launches instances until the desired capacity is totally fulfilled, even if this results in an overage. For example, if there are two units remaining to fulfill capacity, and Amazon EC2 Auto Scaling can only launch an instance with aWeightedCapacity
of five units, the instance is launched, and the desired capacity is exceeded by three units. For more information, see Configure instance weighting for Amazon EC2 Auto Scaling in the Amazon EC2 Auto Scaling User Guide . Value must be in the range of 1-999.If you specify a value for
WeightedCapacity
for one instance type, you must specify a value forWeightedCapacity
for all of them.Every Auto Scaling group has three size parameters (
DesiredCapacity
,MaxSize
, andMinSize
). Usually, you set these sizes based on a specific number of instances. However, if you configure a mixed instances policy that defines weights for the instance types, you must specify these sizes with the same units that you use for weighting instances.- Returns:
this
-
build
Builds the configured instance.- Specified by:
build
in interfacesoftware.amazon.jsii.Builder<CfnAutoScalingGroup.LaunchTemplateOverridesProperty>
- Returns:
- a new instance of
CfnAutoScalingGroup.LaunchTemplateOverridesProperty
- Throws:
NullPointerException
- if any required attribute was not provided
-