Skip to content
v2.275.0

IAutoScalingGroup Interface ​

An AutoScalingGroup.

Properties ​

autoScalingGroupArnstringauto_scaling_group_arnstrautoScalingGroupArnStringAutoScalingGroupArnstringAutoScalingGroupArn*string#
The arn of the AutoScalingGroup.
autoScalingGroupNamestringauto_scaling_group_namestrautoScalingGroupNameStringAutoScalingGroupNamestringAutoScalingGroupName*string#
The name of the AutoScalingGroup.
autoScalingGroupRefAutoScalingGroupReferenceauto_scaling_group_refAutoScalingGroupReferenceautoScalingGroupRefAutoScalingGroupReferenceAutoScalingGroupRefAutoScalingGroupReferenceAutoScalingGroupRefAutoScalingGroupReference#
A reference to a AutoScalingGroup resource.
The environment this resource belongs to.
notes

For resources that are created and managed in a Stack (those created by creating new class instances like new Role(), new Bucket(), etc.), this is always the same as the environment of the stack they belong to.

For referenced resources (those obtained from referencing methods like Role.fromRoleArn(), Bucket.fromBucketName(), etc.), they might be different than the stack they were imported into.

grantPrincipalIPrincipalgrant_principalIPrincipalgrantPrincipalIPrincipalGrantPrincipalIPrincipalGrantPrincipalIPrincipal#
The principal to grant permissions to.
nodeNodenodeNodenodeNodeNodeNodeNodeNode#
The tree node.
The operating system family that the instances in this auto-scaling group belong to.

Is 'UNKNOWN' for imported ASGs.

stackStackstackStackstackStackStackStackStackStack#
The stack in which this resource is defined.

Methods ​

addLifecycleHook(id: string, props: BasicLifecycleHookProps): LifecycleHookdef add_lifecycle_hook(self, id: str, props: BasicLifecycleHookProps) -> LifecycleHookpublic LifecycleHook addLifecycleHook(String id, BasicLifecycleHookProps props)public LifecycleHook AddLifecycleHook(string id, BasicLifecycleHookProps props)func AddLifecycleHook(Id *string, Props BasicLifecycleHookProps) LifecycleHook#
Send a message to either an SQS queue or SNS topic when instances launch or terminate.
addUserData(...commands: string[]): voiddef add_user_data(self, commands: str) -> Nonepublic void addUserData(String commands)public void AddUserData(string commands)func AddUserData(Commands *string)#
Add command to the startup script of fleet instances.

The command must be in the scripting language supported by the fleet's OS (i.e. Linux/Windows). Does nothing for imported ASGs.

addWarmPool(options?: WarmPoolOptions): WarmPooldef add_warm_pool(self, options: typing.Optional[WarmPoolOptions] = None) -> WarmPoolpublic WarmPool addWarmPool(WarmPoolOptions options)public WarmPool AddWarmPool(WarmPoolOptions? options = null)func AddWarmPool(Options WarmPoolOptions) WarmPool#
Add a pool of pre-initialized EC2 instances that sits alongside an Auto Scaling group.
applyRemovalPolicy(policy: RemovalPolicy): voiddef apply_removal_policy(self, policy: RemovalPolicy) -> Nonepublic void applyRemovalPolicy(RemovalPolicy policy)public void ApplyRemovalPolicy(RemovalPolicy policy)func ApplyRemovalPolicy(Policy RemovalPolicy)#
Apply the given removal policy to this resource.
notes

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).

scaleOnCpuUtilization(id: string, props: CpuUtilizationScalingProps): TargetTrackingScalingPolicydef scale_on_cpu_utilization(self, id: str, props: CpuUtilizationScalingProps) -> TargetTrackingScalingPolicypublic TargetTrackingScalingPolicy scaleOnCpuUtilization(String id, CpuUtilizationScalingProps props)public TargetTrackingScalingPolicy ScaleOnCpuUtilization(string id, CpuUtilizationScalingProps props)func ScaleOnCpuUtilization(Id *string, Props CpuUtilizationScalingProps) TargetTrackingScalingPolicy#
Scale out or in to achieve a target CPU utilization.
scaleOnIncomingBytes(id: string, props: NetworkUtilizationScalingProps): TargetTrackingScalingPolicydef scale_on_incoming_bytes(self, id: str, props: NetworkUtilizationScalingProps) -> TargetTrackingScalingPolicypublic TargetTrackingScalingPolicy scaleOnIncomingBytes(String id, NetworkUtilizationScalingProps props)public TargetTrackingScalingPolicy ScaleOnIncomingBytes(string id, NetworkUtilizationScalingProps props)func ScaleOnIncomingBytes(Id *string, Props NetworkUtilizationScalingProps) TargetTrackingScalingPolicy#
Scale out or in to achieve a target network ingress rate.
scaleOnMetric(id: string, props: BasicStepScalingPolicyProps): StepScalingPolicydef scale_on_metric(self, id: str, props: BasicStepScalingPolicyProps) -> StepScalingPolicypublic StepScalingPolicy scaleOnMetric(String id, BasicStepScalingPolicyProps props)public StepScalingPolicy ScaleOnMetric(string id, BasicStepScalingPolicyProps props)func ScaleOnMetric(Id *string, Props BasicStepScalingPolicyProps) StepScalingPolicy#
Scale out or in, in response to a metric.
scaleOnOutgoingBytes(id: string, props: NetworkUtilizationScalingProps): TargetTrackingScalingPolicydef scale_on_outgoing_bytes(self, id: str, props: NetworkUtilizationScalingProps) -> TargetTrackingScalingPolicypublic TargetTrackingScalingPolicy scaleOnOutgoingBytes(String id, NetworkUtilizationScalingProps props)public TargetTrackingScalingPolicy ScaleOnOutgoingBytes(string id, NetworkUtilizationScalingProps props)func ScaleOnOutgoingBytes(Id *string, Props NetworkUtilizationScalingProps) TargetTrackingScalingPolicy#
Scale out or in to achieve a target network egress rate.
scaleOnSchedule(id: string, props: BasicScheduledActionProps): ScheduledActiondef scale_on_schedule(self, id: str, props: BasicScheduledActionProps) -> ScheduledActionpublic ScheduledAction scaleOnSchedule(String id, BasicScheduledActionProps props)public ScheduledAction ScaleOnSchedule(string id, BasicScheduledActionProps props)func ScaleOnSchedule(Id *string, Props BasicScheduledActionProps) ScheduledAction#
Scale out or in based on time.
scaleToTrackMetric(id: string, props: MetricTargetTrackingProps): TargetTrackingScalingPolicydef scale_to_track_metric(self, id: str, props: MetricTargetTrackingProps) -> TargetTrackingScalingPolicypublic TargetTrackingScalingPolicy scaleToTrackMetric(String id, MetricTargetTrackingProps props)public TargetTrackingScalingPolicy ScaleToTrackMetric(string id, MetricTargetTrackingProps props)func ScaleToTrackMetric(Id *string, Props MetricTargetTrackingProps) TargetTrackingScalingPolicy#
Scale out or in in order to keep a metric around a target value.
with(...mixins: IMixin[]): IConstructdef with(self, mixins: IMixin) -> IConstructpublic IConstruct with(IMixin mixins)public IConstruct With(IMixin mixins)func With(Mixins IMixin) IConstruct#
Applies one or more mixins to this construct.

Mixins are applied in order. The list of constructs is captured at the start of the call, so constructs added by a mixin will not be visited.

1 parameter · returns

Parameters

  • mixinsmixinsmixinsmixinsMixins — The mixins to apply.

Returns: This construct for chaining