autoscaling-mixed-instances

HENNGE/autoscaling-mixed-instances/aws

Terraform Module HCL AWS ⏱ stale 1y 9mo

Terraform module which creates Auto Scaling (Mixed Instances) resources on AWS

Install

module "autoscaling-mixed-instances" {
source = "HENNGE/autoscaling-mixed-instances/aws"
version = "3.2.0"
}
⭐ Source on GitHub 📦 Registry page

README

AWS Auto Scaling Group (ASG) Terraform module Terraform module which creates Auto Scaling resources on AWS. These types of resources are supported: Launch Template Auto Scaling Group This module will require more than 1 instance type. Suitable to back ECS Cluster. Terraform versions Terraform 0.12. Pin module version to ~> v3.0. Submit pull-requests to main branch. Terraform 0.11. Pin module version to ~> v1.0. Submit pull-requests to terraform011 branch. Versioning This module uses Semver. x.y.z x shall change when there's major language or breaking feature change (e.g. 0.11 to 0.12 which drastically change the language) y shall change when there's feature addition which is not breaking existing API (e.g. addition of some parameters with default value) z shall change when there's document

Inputs (50)

NameTypeDescriptionDefault
vpc_zone_identifierlist(string)A list of subnet IDs to launch resources in required
namestringCreates a unique name beginning with the specified prefix required
min_sizenumberThe minimum size of the auto scale group required
asg_instance_refresh_healthy_percentagenumberThe amount of capacity in the Auto Scaling group that must remain healthy during required
health_check_typestringControls how health checking is done. Values are - EC2 and ELB required
asg_instance_refresh_warmupnumberThe number of seconds until a newly launched instance is configured and ready to required
asg_instance_refresh_additional_triggerslist(string)Set of additional property names that will trigger an Instance Refresh. A refres required
desired_capacitynumberThe number of Amazon EC2 instances that should be running in the group required
max_instance_lifetimenumberThe maximum amount of time, in seconds, that an instance can be in service, valu required
force_deleteboolAllows deleting the autoscaling group without waiting for all instances in the pfalse
initial_lifecycle_hook_namestringThe name of initial lifecycle hook""
recreate_asg_when_lt_changesboolWhether to recreate an autoscaling group when launch template changesfalse
image_idstringThe EC2 image ID to launch""
enable_monitoringboolEnables/disables detailed monitoring. This is enabled by default.true
default_cooldownnumberThe amount of time, in seconds, after a scaling activity completes before anothe300
initial_lifecycle_hook_notification_target_arnstringThe ARN of the notification target that Auto Scaling will use to notify you when""
instance_typeslist(map(any))Instance types to launch, minimum 2 types must be specified. List of Map of 'ins[ {} ]
target_group_arnslist(string)A list of aws_alb_target_group ARNs, for use with Application Load Balancing[]
min_elb_capacitynumberSetting this causes Terraform to wait for this number of instances to show up he0
asg_namestringCreates a unique name for autoscaling group beginning with the specified prefix""
use_created_lt_latest_versionboolUse version number generated by Launch Template instead of $Latest.false
initial_lifecycle_hook_heartbeat_timeoutstringDefines the amount of time, in seconds, that can elapse before the lifecycle hoo"60"
suspended_processeslist(string)A list of processes to suspend for the AutoScaling Group. The allowed values are[]
protect_from_scale_inboolAllows setting instance protection. The autoscaling group will not select instanfalse
on_demand_percentage_above_base_capacitynumberPercentage split between on-demand and Spot instances above the base on-demand c100
create_ltboolWhether to create launch templatetrue
tags_as_mapmap(any)A map of tags and values in the same format as other resources accept. This will{}
placement_groupstringThe name of the placement group into which you'll launch your instances, if any""
service_linked_role_arnstringThe ARN of the service-linked role that the ASG will use to call other AWS servi""
… and 10 more inputs

Outputs (15)

this_autoscaling_group_desired_capacity — The number of Amazon EC2 instances that should be running in the group
this_autoscaling_group_health_check_grace_period — Time after instance comes into service before checking health
this_autoscaling_group_load_balancers — The load balancer names associated with the autoscaling group
this_launch_template_id — The ID of the launch template
this_launch_template_name — The name of the launch template
this_autoscaling_group_name — The autoscaling group name
this_autoscaling_group_arn — The ARN for this AutoScaling Group
this_autoscaling_group_target_group_arns — List of Target Group ARNs that apply to this AutoScaling Group
this_autoscaling_group_id — The autoscaling group id
this_autoscaling_group_max_size — The maximum size of the autoscale group
this_autoscaling_group_health_check_type — EC2 or ELB. Controls how health checking is done
this_autoscaling_group_vpc_zone_identifier — The VPC zone identifier
this_autoscaling_group_min_size — The minimum size of the autoscale group
this_autoscaling_group_availability_zones — The availability zones of the autoscale group
this_autoscaling_group_default_cooldown — Time between a scaling activity and the succeeding scaling activity

Resources (4)

aws_autoscaling_groupaws_launch_templatenull_resourcerandom_pet

Details

FrameworkTerraform Module
LanguageHCL
Version3.2.0
Cloud AWS
★ Stars10
Forks10
Total downloads41.5k
Inputs50
Outputs15
Resources4
Examples4
LicenseNOASSERTION
NamespaceHENNGE
Updated