ecs-service-autoscale-step-sqs

appzen-oss/ecs-service-autoscale-step-sqs/aws

Terraform Module HCL AWS

Terraform module to manage autoscaling for an ECS Service based on an SQS queue

Install
module "ecs-service-autoscale-step-sqs" {
source = "appzen-oss/ecs-service-autoscale-step-sqs/aws"
version = "0.0.17"
}
plain text: /constructs/tfmod-appzen-oss-ecs-service-autoscale-step-sqs-aws/install.txt
⭐ Source on GitHub 📦 Registry page
README

terraform-aws-ecs-service-autoscale-step-sqs ![CircleCI](https://circleci.com/gh/appzen-oss/terraform-aws-ecs-service-autoscale-step-sqs) ![Github release](https://github.com/appzen-oss/terraform-aws-ecs-service-autoscale-step-sqs/releases) Terraform module to manage application autoscaling for an ECS service based on a SQS queue's length Terraform registry Usage Basic Example ``hcl module "" { source = "appzen-oss/ecs-service-autoscale-step-sqs/aws" version = "0.0.1" } ` Inputs | Name | Description | Type | Default | Required | |------|-------------|:----:|:-----:|:-----:| | adjustment\_type\_down | Autoscaling policy down adjustment type (ChangeInCapacity, ExactCapacity, PercentChangeInCapacity) | string | "ChangeInCapacity" | no | | adjustment\_type\_up | Autoscaling policy up adjustmen

Inputs (46)
NameTypeDescriptionDefault
queue_namestringName of SQS queue to monitor required
environmentstringEnvironment (ex: `dev`, `qa`, `stage`, `prod`). (Second or top level namespace. required
namestringBase name for resource required
cluster_namestringName of ECS cluster that service is in required
service_namestringName of ECS service to autoscale required
servicestringTAG: Application (microservice) name"UNDEF-ECSAutoScaleSQS"
high_period_secsstringThe period in seconds over which the high statistic is applied"60"
low_period_secsstringThe period in seconds over which the low statistic is applied"60"
namespace-orgstringPrefix name with the organization. If true, format is: `{org}-{env namespaced nafalse
tagsmapA map of additional tags{}
teamstringTAG: Department/team of people responsible for service"UNDEF-ECSAutoScaleSQS"
high_big_thresholdstringThe value against which the high statistic is compared"0"
queue_up_thresholdstringThreshold for queue_time = ((Queue Size * Worker Timing) / (number of Current Ta"0"
scale_up_countstringThe number of members by which to scale up, when the adjustment bounds are breac"5"
delimiterstringDelimiter to be used between `name`, `namespaces`, `attributes`, etc."-"
scale_big_up_countstringThe value against which the high statistic is compared"20"
queue_task_worker_countstringnumber of Workers per Task in calculation queue_time_threshold"4"
scale_down_min_adjustment_magnitudestringMinimum number of tasks to scale down at a time "0"
scale_up_lower_boundstringThe lower bound for the difference between the alarm threshold and the CloudWatc"0"
scale_down_countstringThe number of members by which to scale down, when the adjustment bounds are bre"-3"
scale_up_min_adjustment_magnitudestringMinimum number of tasks to scale up at a time "0"
componentstringTAG: Underlying, dedicated piece of service (Cache, DB, ...)"UNDEF-ECSAutoScaleSQS"
organizationstringOrganization name (Top level namespace)""
adjustment_type_downstringAutoscaling policy down adjustment type (ChangeInCapacity, PercentChangeInCapaci"ExactCapacity"
adjustment_type_upstringAutoscaling policy up adjustment type (ChangeInCapacity, PercentChangeInCapacity"ChangeInCapacity"
… and 6 more inputs
Resources (5)
aws_appautoscaling_policyaws_appautoscaling_targetaws_cloudwatch_metric_alarmaws_iam_roleaws_iam_role_policy_attachment
Details
FrameworkTerraform Module
LanguageHCL
Version0.0.17
Cloud AWS
★ Stars9
Forks6
Total downloads13.1k
Inputs46
Resources5
Examples3
Namespaceappzen-oss
Updated