Building autoscaling for Triton

“Autoscaling” is a bit of a misnomer. What AWS calls “Auto Scaling Groups” is perhaps better named “managed instance groups” in GCE and “VM Scale Sets” in Azure. In all three cases, the most important details are that the cloud has a definition of the application you intend to run and a number of instances it’s expected to keep running at all times.

Yes, you can tie metrics into it to change the target number of instances, but the first detail to get right is defining what should be running.

All of these factors have been complicated inside Triton, so I put together a team to approach it from the outside via Triton’s public APIs.

Just like Triton, we built everything as open source and you can find the repos in GitHub1, and Paul Stack presented our work at Hashidays. His talk is recorded, presented here with a transcript.

  1. See Triton Service Groups, tsg-cli, and tsg-infrastructure for the core, as well as webconsole-tsg and tsg-graphql for the web console bits. You can also read the preview documentation for service groups and instance templates Terraform resources. [return]