I wrote a script to automatically launch/terminate Mesos slaves on EC2
based on available resources:
https://github.com/thefactory/autoscale-python/blob/master/examples/mesos_ec2.py

Scaling actions are performed by a provider-specific component, so
supporting Google Compute Engine or another provider is simply a matter of
implementing the same (trivial) interface. Same goes for incorporating
other data sources or custom scaling logic: just write a drop-in
replacement for an existing component.

I've started a Python library around this pattern. Current support
is...humble.. (only "Mesos based on disk/mem/cpu free on EC2"), but I'd
love to build out a suite of components to handle different use cases
(non-Mesos; non-EC2; alternative logic; etc). Please check it out:
https://github.com/thefactory/autoscale-python

Thanks to Connor Doyle for the early design feedback. If anybody else has
thoughts on how to improve it, I'd love to hear them!

Reply via email to