buildkite / elastic-ci-stack-for-aws

An auto-scaling cluster of build agents running in your own AWS VPC
https://buildkite.com/docs/quickstart/elastic-ci-stack-aws
MIT License
417 stars 274 forks source link

Allow for more than 4 instance types in the `InstanceTypes` list #1395

Closed evanlivingston closed 2 weeks ago

evanlivingston commented 2 weeks ago

Is your feature request related to a problem? Please describe. Autoscaling groups with only 4 instance types experience a very large rate of spot interruption. When using the Capacity Optimized strategy, a larger pool of instances helps reduce the number of interruptions.

This aligns with with AWS's recommendations about reducing spot interruptions.

Describe the solution you'd like InstanceTypes currently accepts a list of up to 4 instance types. We would like the ability to specify a significantly larger pool of possible instances. In past conversations AWS has mentioned that the pool should be as large as possible, and threw out the number "40" as an example of a good number of instance types to use in a pool.

Describe alternatives you've considered None

Additional context Currently, with 4 instance types, we're seeing spot interruption rates up to 20% during the day. We expect (and AWS has confirmed) that this rate to increase as we get closer to holiday peak season.

SorchaAbel commented 2 weeks ago

Thanks for raising, changed merged :)