Interface AutoScalingGroupProps
- All Superinterfaces:
CommonAutoScalingGroupProps
,software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
AutoScalingGroupProps.Jsii$Proxy
Example:
Vpc vpc; InstanceType instanceType; IMachineImage machineImage; AutoScalingGroup.Builder.create(this, "ASG") .vpc(vpc) .instanceType(instanceType) .machineImage(machineImage) // ... .init(CloudFormationInit.fromElements(InitFile.fromString("/etc/my_instance", "This got written during instance startup"))) .signals(Signals.waitForAll(SignalsOptions.builder() .timeout(Duration.minutes(10)) .build())) .build();
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic final class
A builder forAutoScalingGroupProps
static final class
An implementation forAutoScalingGroupProps
-
Method Summary
Modifier and TypeMethodDescriptionbuilder()
default CloudFormationInit
getInit()
Apply the given CloudFormation Init configuration to the instances in the AutoScalingGroup at startup.default ApplyCloudFormationInitOptions
Use the given options for applying CloudFormation Init.default InstanceType
Type of instance to launch.default ILaunchTemplate
Launch template to use.default IMachineImage
AMI to launch.default Number
Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group.default Number
Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group.default MixedInstancesPolicy
Mixed Instances Policy to use.default Boolean
Whether IMDSv2 should be required on launched instances.default IRole
getRole()
An IAM role to associate with the instance profile assigned to this Auto Scaling Group.default ISecurityGroup
Security group to launch the instances in.default UserData
Specific UserData to use.getVpc()
VPC to launch these instances in.Methods inherited from interface software.amazon.awscdk.services.autoscaling.CommonAutoScalingGroupProps
getAllowAllOutbound, getAssociatePublicIpAddress, getAutoScalingGroupName, getBlockDevices, getCapacityRebalance, getCooldown, getDefaultInstanceWarmup, getDesiredCapacity, getGroupMetrics, getHealthCheck, getIgnoreUnmodifiedSizeProperties, getInstanceMonitoring, getKeyName, getKeyPair, getMaxCapacity, getMaxInstanceLifetime, getMinCapacity, getNewInstancesProtectedFromScaleIn, getNotifications, getSignals, getSpotPrice, getSsmSessionPermissions, getTerminationPolicies, getTerminationPolicyCustomLambdaFunctionArn, getUpdatePolicy, getVpcSubnets
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getVpc
VPC to launch these instances in. -
getInit
Apply the given CloudFormation Init configuration to the instances in the AutoScalingGroup at startup.If you specify
init
, you must also specifysignals
to configure the number of instances to wait for and the timeout for waiting for the init process.Default: - no CloudFormation init
-
getInitOptions
Use the given options for applying CloudFormation Init.Describes the configsets to use and the timeout to wait
Default: - default options
-
getInstanceType
Type of instance to launch.launchTemplate
andmixedInstancesPolicy
must not be specified when this property is specifiedDefault: - Do not provide any instance type
-
getLaunchTemplate
Launch template to use.Launch configuration related settings and MixedInstancesPolicy must not be specified when a launch template is specified.
Default: - Do not provide any launch template
-
getMachineImage
AMI to launch.launchTemplate
andmixedInstancesPolicy
must not be specified when this property is specifiedDefault: - Do not provide any machine image
-
getMaxHealthyPercentage
Specifies the upper threshold as a percentage of the desired capacity of the Auto Scaling group.It represents the maximum percentage of the group that can be in service and healthy, or pending, to support your workload when replacing instances.
Value range is 0 to 100. After it's set, both
minHealthyPercentage
andmaxHealthyPercentage
to -1 will clear the previously set value.Both or neither of
minHealthyPercentage
andmaxHealthyPercentage
must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.Default: - No instance maintenance policy.
- See Also:
-
getMinHealthyPercentage
Specifies the lower threshold as a percentage of the desired capacity of the Auto Scaling group.It represents the minimum percentage of the group to keep in service, healthy, and ready to use to support your workload when replacing instances.
Value range is 0 to 100. After it's set, both
minHealthyPercentage
andmaxHealthyPercentage
to -1 will clear the previously set value.Both or neither of
minHealthyPercentage
andmaxHealthyPercentage
must be specified, and the difference between them cannot be greater than 100. A large range increases the number of instances that can be replaced at the same time.Default: - No instance maintenance policy.
- See Also:
-
getMixedInstancesPolicy
Mixed Instances Policy to use.Launch configuration related settings and Launch Template must not be specified when a MixedInstancesPolicy is specified.
Default: - Do not provide any MixedInstancesPolicy
-
getRequireImdsv2
Whether IMDSv2 should be required on launched instances.Default: false
-
getRole
An IAM role to associate with the instance profile assigned to this Auto Scaling Group.The role must be assumable by the service principal
ec2.amazonaws.com
:launchTemplate
andmixedInstancesPolicy
must not be specified when this property is specifiedDefault: A role will automatically be created, it can be accessed via the `role` property
Example:
Role role = Role.Builder.create(this, "MyRole") .assumedBy(new ServicePrincipal("ec2.amazonaws.com")) .build();
-
getSecurityGroup
Security group to launch the instances in.launchTemplate
andmixedInstancesPolicy
must not be specified when this property is specifiedDefault: - A SecurityGroup will be created if none is specified.
-
getUserData
Specific UserData to use.The UserData may still be mutated after creation.
launchTemplate
andmixedInstancesPolicy
must not be specified when this property is specifiedDefault: - A UserData object appropriate for the MachineImage's Operating System is created.
-
builder
- Returns:
- a
AutoScalingGroupProps.Builder
ofAutoScalingGroupProps
-