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 Configurations —
CreateLaunchConfiguration,DescribeLaunchConfigurations,DeleteLaunchConfiguration. - Auto Scaling Groups —
CreateAutoScalingGroup,DescribeAutoScalingGroups,UpdateAutoScalingGroup,DeleteAutoScalingGroup(rejects delete with instances unlessForceDelete). Launch source is a Launch Configuration or an EC2 Launch Template. - Capacity —
SetDesiredCapacityand theDesiredCapacityon 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 aSuccessfulscaling activity for each. The launched instances show up in EC2DescribeInstances— unlike every free rival, whose ASG scales to a mock instance (LocalStack #8367). - Activities —
DescribeScalingActivitiesreturns the launch/terminate activities (this is the op Terraform'saws_autoscaling_groupcreate blocks on, and the one MiniStack lacks — #331). - Instances —
DescribeAutoScalingInstancesreports each group's instances withLifecycleState/HealthStatus. - Tags —
CreateOrUpdateTags,DeleteTags,DescribeTags(withPropagateAtLaunch).
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.