AutoscalingGroup is the Schema for the AutoscalingGroups API. Provides an Auto Scaling Group resource.
Type
CRD
Group
autoscaling.aws.upbound.io
Version
v1beta1
apiVersion: autoscaling.aws.upbound.io/v1beta1
kind: AutoscalingGroup
AutoscalingGroupSpec defines the desired state of AutoscalingGroup
No description provided.
A list of one or more availability zones for the group. Used for EC2-Classic, attaching a network interface via id from a launch template and default subnets when not specified with vpc_zone_identifier argument. Conflicts with vpc_zone_identifier.
A 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, 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.
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.
A list of processes to suspend for the Auto Scaling Group. The allowed values are Launch, Terminate, HealthCheck, ReplaceUnhealthy, AZRebalance, AlarmNotification, ScheduledActions, AddToLoadBalancer. 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. Conflicts with tags. See Tag below for more details.
Key-value map of resource tags.
A 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.
A 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
Indicates 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.
ProviderConfigReference specifies how the provider that will be used to create, observe, update, and delete this managed resource should be configured.
Policies for referencing.
ProviderReference specifies the provider that will be used to create, observe, update, and delete this managed resource. Deprecated: Please use ProviderConfigReference, i.e. providerConfigRef
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 elastic load balancer names to add to the autoscaling group names. Only valid for classic load balancers. For ALBs, use target_group_arns instead.
A set of aws_alb_target_group ARNs, for use with Application or Network Load Balancing.
Conditions of the resource.
bar
apiVersion: autoscaling.aws.upbound.io/v1beta1
kind: AutoscalingGroup
metadata:
annotations:
meta.upbound.io/example-id: ecs/v1beta1/capacityprovider
upjet.upbound.io/manual-intervention: This resource depends on LaunchConfiguration with manual intervention.
labels:
testing.upbound.io/example-name: bar
name: bar
spec:
forProvider:
availabilityZones:
- us-west-1b
launchConfigurationSelector:
matchLabels:
testing.upbound.io/example-name: as_conf
maxSize: 1
minSize: 1
region: us-west-1
tag:
- key: AmazonECSManaged
propagateAtLaunch: true
value: "true"
foo
apiVersion: autoscaling.aws.upbound.io/v1beta1
kind: AutoscalingGroup
metadata:
annotations:
meta.upbound.io/example-id: ecs/v1beta1/capacityprovider
upjet.upbound.io/manual-intervention: This resource depends on LaunchConfiguration with manual intervention.
labels:
testing.upbound.io/example-name: foo
name: foo
spec:
forProvider:
availabilityZones:
- us-west-1b
launchConfigurationSelector:
matchLabels:
testing.upbound.io/example-name: as_conf
maxSize: 1
minSize: 1
region: us-west-1
tag:
- key: AmazonECSManaged
propagateAtLaunch: true
value: "true"
example
apiVersion: autoscaling.aws.upbound.io/v1beta1
kind: AutoscalingGroup
metadata:
annotations:
meta.upbound.io/example-id: ecs/v1beta1/capacityprovider
upjet.upbound.io/manual-intervention: This resource depends on LaunchConfiguration with manual intervention.
labels:
testing.upbound.io/example-name: example
name: example
spec:
forProvider:
availabilityZones:
- us-west-1b
desiredCapacity: 1
launchConfigurationSelector:
matchLabels:
testing.upbound.io/example-name: as_conf
maxSize: 1
minSize: 1
region: us-west-1
tag:
- key: AmazonECSManaged
propagateAtLaunch: true
value: "true"
test
apiVersion: autoscaling.aws.upbound.io/v1beta1
kind: AutoscalingGroup
metadata:
annotations:
meta.upbound.io/example-id: ecs/v1beta1/capacityprovider
upjet.upbound.io/manual-intervention: This resource indirectly needs a valid AMI ID.
labels:
testing.upbound.io/example-name: test
name: test
spec:
forProvider:
availabilityZones:
- us-west-1b
launchConfigurationSelector:
matchLabels:
testing.upbound.io/example-name: as_conf
maxSize: 1
minSize: 1
region: us-west-1
tag:
- key: AmazonECSManaged
propagateAtLaunch: true
value: "true"
bar
apiVersion: autoscaling.aws.upbound.io/v1beta1
kind: AutoscalingGroup
metadata:
annotations:
upjet.upbound.io/manual-intervention: This resource requires a notification target ARN.
labels:
testing.upbound.io/example-name: bar
name: bar
spec:
forProvider:
desiredCapacity: 4
forceDelete: true
healthCheckGracePeriod: 300
healthCheckType: ELB
initialLifecycleHook:
- defaultResult: CONTINUE
heartbeatTimeout: 2000
lifecycleTransition: autoscaling:EC2_INSTANCE_LAUNCHING
name: foobar
notificationMetadata: |
{
"foo": "bar"
}
notificationTargetArn: arn:aws:sqs:{data.aws_region}}:${data.aws_account_id}:queue1*
roleArn: arn:aws:iam::${data.aws_account_id}:role/S3Access
launchConfiguration: ${aws_launch_configuration.foobar.name}
maxSize: 5
minSize: 2
placementGroupSelector:
matchLabels:
testing.upbound.io/example-name: test
region: us-west-1
tag:
- key: foo
propagateAtLaunch: true
value: bar
- key: lorem
propagateAtLaunch: false
value: ipsum
timeouts:
- delete: 15m
vpcZoneIdentifierRefs:
- name: example1
- name: example2
example
apiVersion: autoscaling.aws.upbound.io/v1beta1
kind: AutoscalingGroup
metadata:
annotations:
meta.upbound.io/example-id: ecs/v1beta1/capacityprovider
upjet.upbound.io/manual-intervention: This resource depends on LaunchConfiguration with manual intervention.
labels:
testing.upbound.io/example-name: example
name: example
spec:
forProvider:
availabilityZones:
- us-west-1b
launchConfigurationSelector:
matchLabels:
testing.upbound.io/example-name: as_conf
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.