Open-sourcing Scalr

Posted by on April 2nd, 2008.

Intridea is officially open-sourcing Scalr - a redundant, self-curing, and self-scaling hosting environment build on top of Amazon's EC2.

Scalr utilizes EC2 to provide a multi-tiered hosting environment with pre-built images for load balancers, database servers, and application servers. Designed with flexibility in mind, users can further customize each type of machine to use as nodes in their server farm or customize a generic base image for any number of purposes. The application monitors and maintains the server farm by reconfiguring the entire cluster when machines fail or when new machines are inserted. Additionally Scalr can be setup to replace failed machines and scale up and down based on user configured thresholds. The application provides a simple web-based interface for configuring and monitoring your server farms.

The system was initially designed for MediaPlug, a white label audio, video, and image transcoding service that needed to scale based on customer demand.

The project can be found at http://scalr.intridea.com

The project is still very young, but we're hoping that by open sourcing it the AWS development community can turn this into a robust hosting platform and give users an alternative to the current fee based services available.

Share:

14 Responses to “Open-sourcing Scalr”

  1. David Masover

    I have to ask -- why the decision for PHP? Not to start yet another language flamewar, but it seems interesting, to say the least, that you'd use Ruby on Rails for your actual websites, but PHP for the infrastructure behind them.
  2. Naffis

    Good question. We obviously love Rails and do 95% of our work in Ruby/Rails. The decision for PHP was made in part to make it easier for users of Scalr to install the application. Rails deployments take a bit of expertise and it's outside the skill set of many. I this his makes it attractive and useful to a wider audience.
  3. Collin

    Very interesting. Do you have any use-cases or tutorials available or in the pipe for managing a Rails application with scalr? We're tackling similar concerns(but in Rails for Rails) and saving our development time is always a big priority. Maybe we could contribute/learn from each other.
  4. naffis

    We don't have any docs atm. We've used it for Rails apps although this was before elastic IP's so we had to restart mongrels when certain machines died and new ones were brought online. I welcome anyone to join the project and contribute. There's a lot of room for improvement. It would be great to get some images for a standard Rails environment.
  5. niyogi

    Good move on not being a RoR zealot and using PHP where it mattered - code portability for what seems to be a fantastic idea. Great job folks!
  6. smoody

    One Question: And this more about depending on EC2: What happens if the AMI instances used for MySQL crash? Is the database managed by that instance gone? The best I can tell, people are doing regular backups of their databases to S3, but as the size of the database grows and the number of database servers increases, then having to restore could result in site downtime. Or am I wrong?
  7. naffis

    The database on the servers will be in a master-slave setup. You need two db servers up at minimum for redunancy. If the master fails the other db server is promoted and a new slave is brought up and synced. A similar process takes place when the slave fails. The rest of the machines in the farm are reconfigured appropriately to reflect the new database machines. The database is also regularly backed up to S3.
  8. smoody

    Very cool. Thanks for your response. Can't wait to try it out!
  9. Brian Breslin

    so what about the availability zones, will that eventually get integrated into this?
  10. naffis

    Yeah we're planning to add that or maybe someone in the community will add it.
  11. Sean Bannister

    I really like the fact that you went with PHP, this is going to give a really large community of developers. I look forward to helping with development.
  12. yoyo

    Can I use it for a farm of java servers(jboss,tomcat) ?
  13. Josh

    Is SCALR designed to be run from AWS itself or should it be run on a system outside of the AWS environment?
  14. David

    How does memcache play into Scalr? Should it be used or not, or is it already? By the way, please create a ColdFusion (CFML) dev kit for Scalr v2. Thanks!


Leave a Reply