associate_public_ip_address |
Associate a public IP address with an instance in a VPC. |
bool |
false |
no |
cpu_utilization_high_evaluation_periods |
The number of periods over which data is compared to the specified threshold. |
number |
2 |
no |
cpu_utilization_high_period_seconds |
The period in seconds over which the specified statistic is applied. |
number |
300 |
no |
cpu_utilization_high_statistic |
The statistic to apply to the alarm's associated metric. Either of the following is supported: SampleCount , Average , Sum , Minimum , Maximum . |
string |
"Average" |
no |
cpu_utilization_high_threshold_percent |
The value against which the specified statistic is compared. |
number |
90 |
no |
cpu_utilization_low_evaluation_periods |
The number of periods over which data is compared to the specified threshold. |
number |
2 |
no |
cpu_utilization_low_period_seconds |
The period in seconds over which the specified statistic is applied. |
number |
200 |
no |
cpu_utilization_low_statistic |
The statistic to apply to the alarm's associated metric. Either of the following is supported: SampleCount , Average , Sum , Minimum , Maximum . |
string |
"Average" |
no |
cpu_utilization_low_threshold_percent |
The value against which the specified statistic is compared. |
number |
10 |
no |
default_cooldown |
The amount of time, in seconds, after a scaling activity completes before another scaling activity can start. |
number |
150 |
no |
delimiter |
Delimiter to be used between organization , environment , name and attributes . |
string |
"-" |
no |
desired_capacity |
The number of Amazon EC2 instances that should be running in the group. |
number |
3 |
no |
ebs_encryption |
Enables EBS encryption on the volume (Default: false). Cannot be used with snapshot_id. |
bool |
false |
no |
enable_monitoring |
Enable/disable detailed monitoring. |
bool |
true |
no |
enabled |
Whether to create the resources. Set to false to prevent the module from creating any resources. |
bool |
true |
no |
enabled_metrics |
A list of metrics to collect. The allowed values are GroupMinSize , GroupMaxSize , GroupDesiredCapacity , GroupInServiceInstances , GroupPendingInstances , GroupStandbyInstances , GroupTerminatingInstances , GroupTotalInstances . |
list(string) |
[ "GroupMinSize", "GroupMaxSize", "GroupDesiredCapacity", "GroupInServiceInstances", "GroupPendingInstances", "GroupStandbyInstances", "GroupTerminatingInstances", "GroupTotalInstances" ] |
no |
environment |
Environment (e.g. prod , dev , staging ). |
string |
"" |
no |
force_delete |
Allows deleting the autoscaling group without waiting for all instances in the pool to terminate. You can force an autoscaling group to delete even if it's in the process of scaling a resource. Normally, Terraform drains all the instances before deleting the group. This bypasses that behavior and potentially leaves resources dangling. |
bool |
false |
no |
health_check_grace_period |
Time (in seconds) after instance comes into service before checking health. |
number |
300 |
no |
health_check_type |
Controls how health checking is done. Valid values are EC2 or ELB . |
string |
"EC2" |
no |
iam_instance_profile_name |
The IAM instance profile name to associate with launched instances. |
string |
null |
no |
image_id |
The EC2 image ID to launch. |
string |
"" |
no |
instance_initiated_shutdown_behavior |
Shutdown behavior for the instances. Can be stop or terminate . |
string |
"terminate" |
no |
instance_interruption_behavior |
The behavior when a Spot Instance is interrupted. Can be hibernate, stop, or terminate. (Default: terminate). |
string |
"terminate" |
no |
instance_profile_enabled |
Associate a public IP address with an instance in a VPC. |
bool |
true |
no |
instance_type |
Instance type to launch. |
string |
"t2.nano" |
no |
key_name |
The SSH key name that should be used for the instance. |
string |
"" |
no |
kms_key_arn |
AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. encrypted must be set to true when this is set. |
string |
"" |
no |
label_order |
Label order, e.g. name ,application . |
list(any) |
[ "environment", "name" ] |
no |
load_balancers |
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. |
list(string) |
[] |
no |
managedby |
ManagedBy, eg 'CloudDrove' or 'AnmolNagpal'. |
string |
"[email protected]" |
no |
max_price |
The maximum hourly price you're willing to pay for the Spot Instances. |
string |
"" |
no |
max_size |
The maximum size of the autoscale group. |
number |
3 |
no |
max_size_scaledown |
The maximum size for the Auto Scaling group. Default 0. Set to -1 if you don't want to change the minimum size at the scheduled time. |
number |
1 |
no |
max_size_scaleup |
The maximum size of the autoscale group. |
number |
3 |
no |
metrics_granularity |
The granularity to associate with the metrics to collect. The only valid value is 1Minute. |
string |
"1Minute" |
no |
min_elb_capacity |
Setting this causes Terraform to wait for this number of instances to show up healthy in the ELB only on creation. Updates will not wait on ELB instance number changes. |
number |
null |
no |
min_size |
The minimum size of the autoscale group. |
number |
1 |
no |
min_size_scaledown |
The minimum size for the Auto Scaling group. Default 0. Set to -1 if you don't want to change the minimum size at the scheduled time. |
number |
0 |
no |
min_size_scaleup |
The minimum size of the autoscale group. |
number |
1 |
no |
name |
Name (e.g. app or cluster ). |
string |
"" |
no |
on_demand_enabled |
Whether to create aws_autoscaling_policy and aws_cloudwatch_metric_alarm resources to control Auto Scaling. |
bool |
true |
no |
protect_from_scale_in |
Allows setting instance protection. The autoscaling group will not select instances with this setting for terminination during scale in events. |
bool |
false |
no |
repository |
Terraform current module repo |
string |
"https://github.com/clouddrove/terraform-aws-ec2-autoscaling" |
no |
scale_down_adjustment_type |
Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are ChangeInCapacity , ExactCapacity and PercentChangeInCapacity . |
string |
"ChangeInCapacity" |
no |
scale_down_cooldown_seconds |
The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. |
number |
300 |
no |
scale_down_desired |
The number of Amazon EC2 instances that should be running in the group. |
number |
0 |
no |
scale_down_policy_type |
The scalling policy type, either SimpleScaling , StepScaling or TargetTrackingScaling . |
string |
"SimpleScaling" |
no |
scale_down_scaling_adjustment |
The number of instances by which to scale. scale_down_scaling_adjustment determines the interpretation of this number (e.g. as an absolute number or as a percentage of the existing Auto Scaling group size). A positive increment adds to the current capacity and a negative value removes from the current capacity. |
number |
-1 |
no |
scale_up_adjustment_type |
Specifies whether the adjustment is an absolute number or a percentage of the current capacity. Valid values are ChangeInCapacity , ExactCapacity and PercentChangeInCapacity . |
string |
"ChangeInCapacity" |
no |
scale_up_cooldown_seconds |
The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. |
number |
150 |
no |
scale_up_desired |
The number of Amazon EC2 instances that should be running in the group. |
number |
0 |
no |
scale_up_policy_type |
The scalling policy type, either SimpleScaling , StepScaling or TargetTrackingScaling . |
string |
"SimpleScaling" |
no |
scale_up_scaling_adjustment |
The number of instances by which to scale. scale_up_adjustment_type determines the interpretation of this number (e.g. as an absolute number or as a percentage of the existing Auto Scaling group size). A positive increment adds to the current capacity and a negative value removes from the current capacity. |
number |
1 |
no |
schedule_enabled |
AutoScaling Schedule resource |
bool |
false |
no |
scheduler_down |
What is the recurrency for scaling up operations ? |
string |
"0 19 * * MON-FRI" |
no |
scheduler_up |
What is the recurrency for scaling down operations ? |
string |
"0 6 * * MON-FRI" |
no |
security_group_ids |
A list of associated security group IDs. |
list(string) |
[] |
no |
service_linked_role_arn |
The ARN of the service-linked role that the ASG will use to call other AWS services. |
string |
"" |
no |
spot_desired_capacity |
The number of Amazon EC2 instances that should be running in the group. |
number |
3 |
no |
spot_enabled |
Whether to create the spot instance. Set to false to prevent the module from creating any spot instances. |
bool |
false |
no |
spot_instance_type |
Sport instance type to launch. |
string |
"t2.medium" |
no |
spot_max_size |
The maximum size of the spot autoscale group. |
number |
"1" |
no |
spot_max_size_scaledown |
The maximum size for the Auto Scaling group of spot instances. Default 0. Set to -1 if you don't want to change the minimum size at the scheduled time. |
number |
1 |
no |
spot_min_size |
The minimum size of the spot autoscale group. |
number |
"1" |
no |
spot_min_size_scaledown |
The minimum size for the Auto Scaling group of spot instances. Default 0. Set to -1 if you don't want to change the minimum size at the scheduled time. |
number |
0 |
no |
spot_scale_down_desired |
The number of Amazon EC2 instances that should be running in the group. |
number |
0 |
no |
spot_scale_up_desired |
The number of Amazon EC2 instances that should be running in the group. |
number |
0 |
no |
spot_schedule_enabled |
AutoScaling Schedule resource for spot |
bool |
false |
no |
subnet_ids |
A list of subnet IDs to launch resources in. |
list(string) |
[] |
no |
suspended_processes |
A list of processes to suspend for the AutoScaling 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 autoscaling group from functioning properly. |
list(string) |
[] |
no |
tags |
Additional tags (e.g. map(BusinessUnit ,XYZ ). |
map(any) |
{} |
no |
target_group_arns |
A list of aws_alb_target_group ARNs, for use with Application Load Balancing. |
list(string) |
[] |
no |
termination_policies |
A list of policies to decide how the instances in the auto scale group should be terminated. The allowed values are OldestInstance , NewestInstance , OldestLaunchConfiguration , ClosestToNextInstanceHour , Default . |
list(string) |
[ "Default" ] |
no |
user_data_base64 |
The Base64-encoded user data to provide when launching the instances. |
string |
"" |
no |
volume_size |
The size of ebs volume. |
number |
100 |
no |
volume_type |
The type of volume. Can be standard , gp2 , or io1 . (Default: standard ). |
string |
"standard" |
no |
wait_for_capacity_timeout |
A maximum duration that Terraform should wait for ASG instances to be healthy before timing out. Setting this to '0' causes Terraform to skip all Capacity Waiting behavior. |
string |
"15m" |
no |