AutoscalingGroup is the Schema for the AutoscalingGroups API. Provides an Auto Scaling Group resource.
Type
CRD
Group
autoscaling.aws.upbound.io
Version
apiVersion: autoscaling.aws.upbound.io/v1beta2
kind: AutoscalingGroup
AutoscalingGroupSpec defines the desired state of AutoscalingGroup
No description provided.
A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the vpc_zone_identifier attribute, or for attaching a network interface when an existing network interface ID is specified in a launch template. Conflicts with vpc_zone_identifier.
List of metrics to collect. The allowed values are defined by the underlying AWS API.
One or more Lifecycle Hooks to attach to the Auto Scaling Group before instances are launched. The syntax is exactly the same as the separate aws_autoscaling_lifecycle_hook resource, without the autoscaling_group_name attribute. Please note that this will only work when creating a new Auto Scaling Group. For all other use-cases, please use aws_autoscaling_lifecycle_hook resource.
If this block is configured, add a instance maintenance policy to the specified Auto Scaling group. Defined below.
If this block is configured, start an Instance Refresh when this Auto Scaling Group is updated. Defined below.
Override default parameters for Instance Refresh.
List of percentages for each checkpoint. Values must be unique and in ascending order. To replace all instances, the final number must be 100.
Set of additional property names that will trigger an Instance Refresh. A refresh will always be triggered by a change in any of launch_configuration, launch_template, or mixed_instances_policy.
Reference to a LaunchConfiguration in autoscaling to populate launchConfiguration.
Policies for referencing.
Selector for a LaunchConfiguration in autoscaling to populate launchConfiguration.
Policies for selection.
Nested argument with Launch template specification to use to launch instances. See Launch Template below for more details.
Reference to a LaunchTemplate in ec2 to populate id.
Policies for referencing.
Selector for a LaunchTemplate in ec2 to populate id.
Policies for selection.
Configuration block containing settings to define launch targets for Auto Scaling groups. See Mixed Instances Policy below for more details.
Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.
Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
Nested argument defines the Launch Template. Defined below.
Reference to a LaunchTemplate in ec2 to populate launchTemplateId.
Policies for referencing.
Selector for a LaunchTemplate in ec2 to populate launchTemplateId.
Policies for selection.
List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.
Override the instance type in the Launch Template with instance types that satisfy the requirements.
List of accelerator manufacturer names. Default is any manufacturer.
List of accelerator names. Default is any acclerator.
List of accelerator types. Default is any accelerator type.
List of instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5., m5a., r*, 3. For example, if you specify c5*, you are allowing the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are allowing all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is all instance types.
List of CPU manufacturer names. Default is any manufacturer.
List of instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5., m5a., r*, 3. For example, if you specify c5*, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are excluding all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is no excluded instance types.
List of instance generation names. Default is any generation.
List of local storage type names. Default any storage type.
Nested argument defines the Launch Template. Defined below.
Reference to a LaunchTemplate in ec2 to populate launchTemplateId.
Policies for referencing.
Selector for a LaunchTemplate in ec2 to populate launchTemplateId.
Policies for selection.
Reference to a PlacementGroup in ec2 to populate placementGroup.
Policies for referencing.
Selector for a PlacementGroup in ec2 to populate placementGroup.
Policies for selection.
Reference to a Role in iam to populate serviceLinkedRoleArn.
Policies for referencing.
Selector for a Role in iam to populate serviceLinkedRoleArn.
Policies for selection.
List of processes to suspend for the Auto Scaling Group. The allowed values are Launch, Terminate, HealthCheck, ReplaceUnhealthy, AZRebalance, AlarmNotification, ScheduledActions, AddToLoadBalancer, InstanceRefresh. Note that if you suspend either the Launch or Terminate process types, it can prevent your Auto Scaling Group from functioning properly.
Configuration block(s) containing resource tags. See Tag below for more details.
List of policies to decide how the instances in the Auto Scaling Group should be terminated. The allowed values are OldestInstance, NewestInstance, OldestLaunchConfiguration, ClosestToNextInstanceHour, OldestLaunchTemplate, AllocationStrategy, Default. Additionally, the ARN of a Lambda function can be specified for custom termination policies.
Attaches one or more traffic sources to the specified Auto Scaling group.
List of subnet IDs to launch resources in. Subnets automatically determine which availability zones the group will reside. Conflicts with availability_zones.
References to Subnet in ec2 to populate vpcZoneIdentifier.
Policies for referencing.
Selector for a list of Subnet in ec2 to populate vpcZoneIdentifier.
Policies for selection.
If this block is configured, add a Warm Pool to the specified Auto Scaling group. Defined below
Whether instances in the Auto Scaling group can be returned to the warm pool on scale in. The default is to terminate instances in the Auto Scaling group when the group scales in.
THIS IS A BETA FIELD. It will be honored unless the Management Policies feature flag is disabled. InitProvider holds the same fields as ForProvider, with the exception of Identifier and other resource reference fields. The fields that are in InitProvider are merged into ForProvider when the resource is created. The same fields are also added to the terraform ignore_changes hook, to avoid updating them after creation. This is useful for fields that are required on creation, but we do not desire to update them after creation, for example because of an external controller is managing them, like an autoscaler.
A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the vpc_zone_identifier attribute, or for attaching a network interface when an existing network interface ID is specified in a launch template. Conflicts with vpc_zone_identifier.
List of metrics to collect. The allowed values are defined by the underlying AWS API.
One or more Lifecycle Hooks to attach to the Auto Scaling Group before instances are launched. The syntax is exactly the same as the separate aws_autoscaling_lifecycle_hook resource, without the autoscaling_group_name attribute. Please note that this will only work when creating a new Auto Scaling Group. For all other use-cases, please use aws_autoscaling_lifecycle_hook resource.
If this block is configured, add a instance maintenance policy to the specified Auto Scaling group. Defined below.
If this block is configured, start an Instance Refresh when this Auto Scaling Group is updated. Defined below.
Override default parameters for Instance Refresh.
List of percentages for each checkpoint. Values must be unique and in ascending order. To replace all instances, the final number must be 100.
Set of additional property names that will trigger an Instance Refresh. A refresh will always be triggered by a change in any of launch_configuration, launch_template, or mixed_instances_policy.
Reference to a LaunchConfiguration in autoscaling to populate launchConfiguration.
Policies for referencing.
Selector for a LaunchConfiguration in autoscaling to populate launchConfiguration.
Policies for selection.
Nested argument with Launch template specification to use to launch instances. See Launch Template below for more details.
Reference to a LaunchTemplate in ec2 to populate id.
Policies for referencing.
Selector for a LaunchTemplate in ec2 to populate id.
Policies for selection.
Configuration block containing settings to define launch targets for Auto Scaling groups. See Mixed Instances Policy below for more details.
Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.
Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
Nested argument defines the Launch Template. Defined below.
Reference to a LaunchTemplate in ec2 to populate launchTemplateId.
Policies for referencing.
Selector for a LaunchTemplate in ec2 to populate launchTemplateId.
Policies for selection.
List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.
Override the instance type in the Launch Template with instance types that satisfy the requirements.
List of accelerator manufacturer names. Default is any manufacturer.
List of accelerator names. Default is any acclerator.
List of accelerator types. Default is any accelerator type.
List of instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5., m5a., r*, 3. For example, if you specify c5*, you are allowing the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are allowing all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is all instance types.
List of CPU manufacturer names. Default is any manufacturer.
List of instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5., m5a., r*, 3. For example, if you specify c5*, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are excluding all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is no excluded instance types.
List of instance generation names. Default is any generation.
List of local storage type names. Default any storage type.
Nested argument defines the Launch Template. Defined below.
Reference to a LaunchTemplate in ec2 to populate launchTemplateId.
Policies for referencing.
Selector for a LaunchTemplate in ec2 to populate launchTemplateId.
Policies for selection.
Reference to a PlacementGroup in ec2 to populate placementGroup.
Policies for referencing.
Selector for a PlacementGroup in ec2 to populate placementGroup.
Policies for selection.
Reference to a Role in iam to populate serviceLinkedRoleArn.
Policies for referencing.
Selector for a Role in iam to populate serviceLinkedRoleArn.
Policies for selection.
List of processes to suspend for the Auto Scaling Group. The allowed values are Launch, Terminate, HealthCheck, ReplaceUnhealthy, AZRebalance, AlarmNotification, ScheduledActions, AddToLoadBalancer, InstanceRefresh. Note that if you suspend either the Launch or Terminate process types, it can prevent your Auto Scaling Group from functioning properly.
Configuration block(s) containing resource tags. See Tag below for more details.
List of policies to decide how the instances in the Auto Scaling Group should be terminated. The allowed values are OldestInstance, NewestInstance, OldestLaunchConfiguration, ClosestToNextInstanceHour, OldestLaunchTemplate, AllocationStrategy, Default. Additionally, the ARN of a Lambda function can be specified for custom termination policies.
Attaches one or more traffic sources to the specified Auto Scaling group.
List of subnet IDs to launch resources in. Subnets automatically determine which availability zones the group will reside. Conflicts with availability_zones.
References to Subnet in ec2 to populate vpcZoneIdentifier.
Policies for referencing.
Selector for a list of Subnet in ec2 to populate vpcZoneIdentifier.
Policies for selection.
If this block is configured, add a Warm Pool to the specified Auto Scaling group. Defined below
Whether instances in the Auto Scaling group can be returned to the warm pool on scale in. The default is to terminate instances in the Auto Scaling group when the group scales in.
THIS IS A BETA FIELD. It is on by default but can be opted out through a Crossplane feature flag. ManagementPolicies specify the array of actions Crossplane is allowed to take on the managed and external resources. This field is planned to replace the DeletionPolicy field in a future release. Currently, both could be set independently and non-default values would be honored if the feature flag is enabled. If both are custom, the DeletionPolicy field will be ignored. See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223 and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md
ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured.
Policies for referencing.
PublishConnectionDetailsTo specifies the connection secret config which contains a name, metadata and a reference to secret store config to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource.
WriteConnectionSecretToReference specifies the namespace and name of a Secret to which any connection details for this managed resource should be written. Connection details frequently include the endpoint, username, and password required to connect to the managed resource. This field is planned to be replaced in a future release in favor of PublishConnectionDetailsTo. Currently, both could be set independently and connection details would be published to both without affecting each other.
AutoscalingGroupStatus defines the observed state of AutoscalingGroup.
No description provided.
A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the vpc_zone_identifier attribute, or for attaching a network interface when an existing network interface ID is specified in a launch template. Conflicts with vpc_zone_identifier.
List of metrics to collect. The allowed values are defined by the underlying AWS API.
One or more Lifecycle Hooks to attach to the Auto Scaling Group before instances are launched. The syntax is exactly the same as the separate aws_autoscaling_lifecycle_hook resource, without the autoscaling_group_name attribute. Please note that this will only work when creating a new Auto Scaling Group. For all other use-cases, please use aws_autoscaling_lifecycle_hook resource.
If this block is configured, add a instance maintenance policy to the specified Auto Scaling group. Defined below.
If this block is configured, start an Instance Refresh when this Auto Scaling Group is updated. Defined below.
Override default parameters for Instance Refresh.
List of percentages for each checkpoint. Values must be unique and in ascending order. To replace all instances, the final number must be 100.
Set of additional property names that will trigger an Instance Refresh. A refresh will always be triggered by a change in any of launch_configuration, launch_template, or mixed_instances_policy.
List of elastic load balancer names to add to the autoscaling group names. Only valid for classic load balancers. For ALBs, use target_group_arns instead. To remove all load balancer attachments an empty list should be specified.
Configuration block containing settings to define launch targets for Auto Scaling groups. See Mixed Instances Policy below for more details.
Nested argument containing settings on how to mix on-demand and Spot instances in the Auto Scaling group. Defined below.
Nested argument containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
Nested argument defines the Launch Template. Defined below.
List of nested arguments provides the ability to specify multiple instance types. This will override the same parameter in the launch template. For on-demand instances, Auto Scaling considers the order of preference of instance types to launch based on the order specified in the overrides list. Defined below.
Override the instance type in the Launch Template with instance types that satisfy the requirements.
List of accelerator manufacturer names. Default is any manufacturer.
List of accelerator names. Default is any acclerator.
List of accelerator types. Default is any accelerator type.
List of instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5., m5a., r*, 3. For example, if you specify c5*, you are allowing the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are allowing all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is all instance types.
List of CPU manufacturer names. Default is any manufacturer.
List of instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5., m5a., r*, 3. For example, if you specify c5*, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are excluding all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is no excluded instance types.
List of instance generation names. Default is any generation.
List of local storage type names. Default any storage type.
Nested argument defines the Launch Template. Defined below.
List of processes to suspend for the Auto Scaling Group. The allowed values are Launch, Terminate, HealthCheck, ReplaceUnhealthy, AZRebalance, AlarmNotification, ScheduledActions, AddToLoadBalancer, InstanceRefresh. Note that if you suspend either the Launch or Terminate process types, it can prevent your Auto Scaling Group from functioning properly.
Configuration block(s) containing resource tags. See Tag below for more details.
Set of aws_alb_target_group ARNs, for use with Application or Network Load Balancing. To remove all target group attachments an empty list should be specified.
List of policies to decide how the instances in the Auto Scaling Group should be terminated. The allowed values are OldestInstance, NewestInstance, OldestLaunchConfiguration, ClosestToNextInstanceHour, OldestLaunchTemplate, AllocationStrategy, Default. Additionally, the ARN of a Lambda function can be specified for custom termination policies.
Attaches one or more traffic sources to the specified Auto Scaling group.
List of subnet IDs to launch resources in. Subnets automatically determine which availability zones the group will reside. Conflicts with availability_zones.
If this block is configured, add a Warm Pool to the specified Auto Scaling group. Defined below
Whether instances in the Auto Scaling group can be returned to the warm pool on scale in. The default is to terminate instances in the Auto Scaling group when the group scales in.
Conditions of the resource.
attachment-example
apiVersion: autoscaling.aws.upbound.io/v1beta2
kind: AutoscalingGroup
metadata:
annotations:
meta.upbound.io/example-id: autoscaling/v1beta1/attachment
labels:
testing.upbound.io/example-name: asg
name: attachment-example
spec:
forProvider:
availabilityZones:
- us-west-1b
launchConfigurationSelector:
matchLabels:
testing.upbound.io/example-name: attachment-example
maxSize: 1
minSize: 1
region: us-west-1
tag:
- key: AmazonECSManaged
propagateAtLaunch: true
value: "true"
example
apiVersion: autoscaling.aws.upbound.io/v1beta2
kind: AutoscalingGroup
metadata:
annotations:
meta.upbound.io/example-id: autoscaling/v1beta1/autoscalinggroup
labels:
testing.upbound.io/example-name: example
name: example
spec:
forProvider:
availabilityZones:
- us-west-1b
launchConfigurationSelector:
matchLabels:
testing.upbound.io/example-name: autoscalinggroup-example
maxSize: 1
minSize: 1
region: us-west-1
tag:
- key: AmazonECSManaged
propagateAtLaunch: true
value: "true"
© 2022 Upbound, Inc.
Discover the building blocksfor your internal cloud platform.