Wednesday, November 11, 2015

Important uses for AWS AutoScaling groups beyond automatically scaling out

I recommend always having an AutoScaling group for your instances even if you do not want to automatically scale. Some advantages include:

- Aggregate CloudWatch metrics across your instances.

- Automatically remove and insert instances to one or more ELB's using LoadBalancerNames.

- Keeping instance tags consistent. If you configure the PropogateAtLaunch property to true, each new instance will be automatically tagged.

- Easily pull out an instance (detach) for debugging or development.

- Group your servers for CodeDeploy and new instances will automatically be included.

- Automatic redundancy enforcement. Anytime an instance is deleted by you, a coworker, or magic fairies, it is replaced with a new one.

- Testing deployments and instance configuration.  Just terminate an instance and wait for the new one to get created.

- Use as a deployment mechanism for immutable instance deployments.