Skip to content
AWS ECS autoscaling based on SQS queue metrics using Docker.
Shell Dockerfile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Cronjob.Dockerfile
LICENSE
README.md
crontab
entrypoint.sh
iam-policy.json
publish-Backlog-per-Worker.sh
scaling.sh
task-definition.json

README.md

ecs-autoscaling-sqs-metrics

This repo contains scripts and a Dockerfile for auto-scaling of ECS Tasks based on the number of messages available in an SQS queue.

Getting Started

Instructions how to use this project can be found on my blog https://allaboutaws.com/how-to-auto-scale-aws-ecs-containers-sqs-queue-metrics

Prerequisites

You need the following setup:

Docker (tested Docker version 18.03.0-ce, build 0520e24)

Installing

clone this project:

git clone https://github.com/sh39sxn/mining-aion-coins.git

Build the Docker container (or use the prebuild one at my DockerHub Repo https://hub.docker.com/r/sh39sxn/ecs-autoscaling-sqs-metrics):

cd ecs-autoscaling-sqs-metrics
docker build -t ecs-autoscaling-sqs-metrics:latest -f ./Cronjob.Dockerfile .

Run the Docker container (adjust the environment variables before):

docker run -it -e AWS_DEFAULT_REGION=eu-central-1 -e AWS_ACCESS_KEY_ID=XXX -e AWS_SECRET_ACCESS_KEY=XXX -e AWS_ACCOUNT_ID=XXX -e LATENCY=20 -e PROCESSING_TIME=2 -e SQS_QUEUE_NAME=My-SQS-Queue -e ECS_CLUSTER=My-ECS-Cluster -e ECS_SERVICE=My-ECS-Service -e CW_METRIC=MyBacklogPerTask -e CW_NAMESPACE=ECS-SQS-Scaling -e CW_DIMENSION_NAME=SQS-Queue -e CW_DIMENSION_VALUE=My-SQS-Queue -e MAX_LIMIT_NUMBER_QUEUE_WORKERS=200 ecs-autoscaling-sqs-metrics:latest

Donation

Thank's for any donations if you like this project!

Litecoin address: LdxTMGSUGLWfcULQQ6UWTNcJGGCLysefJ7

Bitcoin address: 1H7GZ2SGQcDiEcbqdimn2C9AM4VGbqrBdx

Ethereum address: 0x2a427da268c081466be59b41e0a7ad556f57e755

Built With

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details

You can’t perform that action at this time.