EC2 Auto Scaling

Amazon EC2 Auto Scaling — Auto Scaling Groups, Launch Configurations, desired-capacity reconciliation, and scaling activities. Query protocol.

EC2 Auto Scaling (the autoscaling service) manages EC2 fleets — distinct from Application Auto Scaling (the application-autoscaling service), which scales DynamoDB / ECS / etc. targets.

The wedge: against every other free local emulator an Auto Scaling Group scales to a mock instance (LocalStack #8367 "ASG launches a mock EC2 instead of a Docker instance"; MiniStack's ASG is a Terraform-timeout stub). fakecloud runs EC2 instances as real containers, so an ASG reconciled to its desired capacity launches real instances.

Supported today

  • Launch ConfigurationsCreateLaunchConfiguration, DescribeLaunchConfigurations, DeleteLaunchConfiguration.
  • Auto Scaling GroupsCreateAutoScalingGroup, DescribeAutoScalingGroups, UpdateAutoScalingGroup, DeleteAutoScalingGroup (rejects delete with instances unless ForceDelete). Launch source is a Launch Configuration or an EC2 Launch Template.
  • CapacitySetDesiredCapacity and the DesiredCapacity on create/update reconcile the group's instance set, launching real container-backed EC2 instances (via the EC2 runtime, resolving the launch configuration's AMI/type; a seeded AMI for launch-template-backed groups) or terminating them on scale-in, and recording a Successful scaling activity for each. The launched instances show up in EC2 DescribeInstances — unlike every free rival, whose ASG scales to a mock instance (LocalStack #8367).
  • ActivitiesDescribeScalingActivities returns the launch/terminate activities (this is the op Terraform's aws_autoscaling_group create blocks on, and the one MiniStack lacks — #331).
  • InstancesDescribeAutoScalingInstances reports each group's instances with LifecycleState / HealthStatus.
  • TagsCreateOrUpdateTags, DeleteTags, DescribeTags (with PropagateAtLaunch).

Protocol

AWS Query protocol (form-encoded request, <ActionResponse>...<ResponseMetadata> XML response), endpoint autoscaling.<region>.amazonaws.com.

Roadmap

  • Scaling policies (target-tracking / step), lifecycle hooks, instance refresh, and conformance-harness coverage.