Skip to content

Latest commit

 

History

History
99 lines (95 loc) · 12.9 KB

File metadata and controls

99 lines (95 loc) · 12.9 KB

Inputs

Name Description Type Default Required
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 "anmol@clouddrove.com" 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

Outputs

Name Description
autoscaling_group_arn The ARN for this AutoScaling Group
autoscaling_group_default_cooldown Time between a scaling activity and the succeeding scaling activity
autoscaling_group_desired_capacity The number of Amazon EC2 instances that should be running in the group
autoscaling_group_health_check_grace_period Time after instance comes into service before checking health
autoscaling_group_health_check_type EC2 or ELB. Controls how health checking is done
autoscaling_group_id The autoscaling group id
autoscaling_group_max_size The maximum size of the autoscale group
autoscaling_group_min_size The minimum size of the autoscale group
autoscaling_group_name The autoscaling group name
launch_template_arn The ARN of the launch template
launch_template_id The ID of the launch template