Managing Cloud Infrastructure with Scalr
Scalr.net is the company build around the Scalr project, an open-source cloud computing management software. You can think of Scalr as a sysadmin robot that monitors your cloud infrastructure and adapts it automatically to the required workload. We had the chance to interview Sebastian Stadil, CEO and Founder of Scalr.net.
CloudComputingDevelopment.net: What is exactly Scalr software?
Scalr is open source cloud computing management software, which I started to code in 2008 and since that day, helped to manage thousand of applications. Scalr comes on top of an IaaS (like Amazon Web Services or RackSpace). Let’s consider the following example to understand the product better: when a stream of visitors comes to a store’s checkout, a manager decides to open quickly new cash registers to regulate the influx. Scalr plays the same role for your infrastructure whether it is a public cloud hosted on AWS or Rackspace, or a private cloud managed with Cloudstack, OpenStack etc. When web-servers are overloaded, Scalr automatically opens new ones to meet the demand. In contrast, when demand decreases, Scalr automatically shuts down unnecessary servers. The feature is called auto-scaling or automatic scaling. From this simple idea, Scalr evolved into a complete cloud computing management tool. This means that Scalr will replace any crashed servers with a fresh copy, create snapshots of the database, promote the right instance to master or even integrate a PHP framework to connect to your applications.
Scalr seamlessly integrates with third parties software like Chef and can be used on private clouds such as Cloudstack and Openstack. More integrations are on their way: Varnish and HAProxy for 2012 Q3 along with Amazon VPC. In Q2, we are getting ready to launch a new Mission Control dashboard in Scalr, with widgets and monitoring charts, to make your server management even easier (and maybe fun). What Scalr doesn’t do? Scalr is not a PaaS (like CloudFoundry or Heroku): you are not locked into a specific product but you have to install the middleware yourself (although Scalr helps you for that).
CloudComputingDevelopment.net: What does the Scalr.net company do?
Scalr started when I was in High-School. I was already interested in technology and ways of optimizing service capabilities of various computer systems. I drafted an article on my blog on optimizing the frequency of purchase and available space on a hard disk for a given budget. My article got featured on slashdot.org and my blog had received over 500,000 visits in just a few hours. The inevitable happened: my site crashed. I had written an article on optimizing the capabilities of computer systems and I was not even able to manage traffic on my own website. Yet, I was deeply convinced that this subject had a future. The opportunity to work on this issue again presented itself some time later, during a course of hyphenation in Palo Alto. When I returned to France to finish my studies, I began to develop an open source framework to effectively manage the EC2 Amazon service.
Following an article in TechCrunch blog about my work, I received many messages and then realized there was a real expectation and a potential market. So I decided to create the Scalr.net company in 2008. The product range is now very complete around three products. First one is the Hosted Scalr, which is a SaaS to manage and automate your remote instances. Price ranges from 99$ to 2500$ for 80 servers. We also have custom plans for larger companies. On the other hand, companies may have to install Scalr behind a firewall and are still looking for support. That’s why we created Enterprise Scalr, which is a special contract for an installation including support & service. Finally, Open-Source Scalr suits users who want Scalr technology to be managed by themselves and are not afraid to get their hands dirty. We pride ourselves with this simple mission: help to transform every IT department, usually the bottleneck of changes, into a catalyst for innovation.
CloudComputingDevelopment.net: Isn’t the Cloud supposed to bring “elasticity” that solves the scalability problem? Why aren’t cloud hosting companies providing directly the scaling features (Amazon Auto Scaling) provided by Scalr?
The Cloud brings “elasticity” as you can leverage unlimited resources on a Cloud with no upfront investment. That allows you to replace capital expenses with operating expenses (pay-as-you-go); (2) use shared resources for processes like back-up, maintenance, networking (shared expenses); (3) use shared infrastructure that enables you to pay only for those resources you actually use, instead of consuming your maximum load resources at all times (pay-per-use). You can do all this in the Cloud, but an IaaS does not provide these features automatically and directly out-of-the-box.
This is why our clients uses Scalr: built on the top of the IaaS providers’ API, Scalr provides automation. Scaling up is relatively easy: just open new instances as load increases. The difficulty is to do it in a clever way: transfer configuration to the new servers, promote slaves and ensure databases consistency. That where reside all the challenge and because there is potentially no limits to an infrastructure size, cloud management softwares, need to offer rock-solid code to handle to guarantee up-time. Obviously, if AWS start solving some of the problems that cloud management platforms like RightScale and Scalr have set out to solve, this is a threat for us. Increasing agility (cloudformation), decreasing maintenance (amazon linux, rds), adjusting capacity (auto-scaling groups) are some of the cloud providers’ potentials moves. This is why we put innovation at the top of our agenda: our code is tweaked everyday.
CloudComputingDevelopment.net: Which specific issues in scaling up/down are better handled by Scalr than manually?
Cloud management is great for three reasons:
First, it takes the repetition away from managing infrastructure– like mounting that 4th EBS volume on every one of your 12 database servers. You operate at a higher level by defining what components your server farm is composed of, and what each server in it looks like. Cloud management software then applies that to the actual infrastructure. This way you don’t have to repeat yourself: you can manage 10,000 servers as easily as 10. Cloud management brings automation.
Second, it keeps you organized. Cloud infrastructure is constantly changing. Servers are constantly added, removed, or replaced. Same goes for storage volumes, ip addresses, snapshots, etc. This makes it nigh impossible to keep your system of record (lol, a spreadsheet!) up to date. You know that scene from Pulp Fiction when Uma Thurman is OD’ing, and nobody can find the adrenaline shot? Ditto. Cloud management keeps things tidy.
Third, it gives you visibility. How much are you spending on that data processing farm? How much savings did that new caching tier bring you? Has your R&D group gone overbudget? What performance are you getting from your servers? Are there any outliers? When integrated into your monitoring tier, you can get the visibility that managers dream of. Cloud management offers you all this.
CloudComputingDevelopment.net: Who are you competitors and what differentiates Scalr and Scalr.net from them?
RightScale and enStratus are our two main corporate competitors, but frankly we mostly compete against DIY. Many sysadmins built their own tools, sometimes not as clean as it could be and are satisfied about it. We would like to show them that can save time (and money) using Scalr. That’s why we work on both customization and automation. I already developed the all-integrated “Apple” approach Scalr has chosen, so that you can have every tool out-of-the-box. At the same time, we know that every architecture is different and we create two practical customization tools to tweak it the right way for you. First one is the scripting engine + the task scheduler. You can trigger specific actions based on events chosen by yourself. Our customer love these possibilities. Also we created an API to enhance customization and being more competitive against DIY.
Regarding RightScale, the company is funded with $40M, while we are bootstrapping. This means we never received a cent in funding. But, because of our flexible corporate culture and structure, we can add functions in less than two hours. For example, last month, AWS introduced new instances size for x64 systems, m1 and c1. After four hours, these instances were already available in Scalr. I am not sure if RightScale can do that. Our agility to move fast is our best competitive advantage.
CloudComputingDevelopment.net: Who is using the Scalr software?
6000 companies so far have been using Scalr. It is really hard to get an idea of the open-source distribution, but if estimated from the number active people in the community this would be a 5% for open-source and the rest on the hosted service. Many of our clients are small and medium size enterprises which want to make their life easier at a fair value. They love our plans with no on-boarding fees. Scalr allows them to grow without ballooning infrastructure cost. At a larger scale, some companies run between 30 and 80 servers and Scalr is therefore a fundamental piece of their IT department. They enjoy the high-range features included in our IPO and World Domination plans: premium support with guaranteed uptime and Mongo – Chef integration. Eventually, we have some Enterprise Scalr clients to: the biggest one is Samsung Electronics. They are one of our major clients and we have enjoyed very much working with them.
CloudComputingDevelopment.net: What is the target market for Scalr.net?
We define our mission this way: automate all the things. Every IT department which is a bottleneck for changes and major improvements is a target as we believe to have the right solution for him.
CloudComputingDevelopment.net: What is the future evolution of Scalr and Scalr.net?
Keep being on the top of innovation: in the next months we will introduce new features which are already on the public roadmap: Varnish, HAProxy, MySQL Cluster, OpenStack. The implementation of the “Mission Control” dashboard is due for the second quarter of 2012 too. Scalr will concentrate on solving more complex problems everyday. Because of our agility we can move quickly and react faster to the never sleeping cloud ecosystem. The most important thing for us is to build a great product.