Open Source "Open Stack" gives Rackspace edge up on Joyent and Amazon?

jasonmcmunn's picture

At OSCON 2010 this week Rack Space Cloud announced a new initiative to bring "open" to the cloud platform with Open Stack. Giving them out of the box credibility to them is NASA, branding the platform in their case as NEBULA Cloud Computing Platform. I think this is an excellent move. My hopes for this is that it will start to standardize the industry a bit and while it will limit consulting dollars I might make arbitraging between the different suppliers, it will also make it a lot easier to move customers from one site to another.

Background.
So a few years ago, right after they got on the scene and Amazon had proven the cloud concept with EC2, Joyent fired a big shot over the bow of their competitors with an open letter discussing the state of the union with "Grid" (rebuzzed to "Cloud" over the last few years.. I really think Sun and Oracle made "Grid" a dirty word). I tried to find a link to this article (It was really good!). It was written by Jason Hoffman, one of the founders and CTO of Joyent. I found a link to that gives me a 404 at: http://www.joyent.com/joyeurblog/2006/11/27/on-grids-the-ambitions-of-am.... I looked all over for a permalink to it on joyeur.com and joyent.com, and can't find anything.

Amazon definitely trail blazed this territory and I have always wondered if they were profitable in it or not. Regardless of that, as the first person on the scene, it was definitely advantageous for them to stick to proprietary protocols and standards and to encourage lock-in for their customers. Like a giant spider web of computer nodes, they wanted to get people lured into their stack and locked in. Their early use of an API (both SOAP and basic HTTP) was genius and helped them tremendously. Raising the barrier to exit while at the same time lowering the barrier to entry by allowing themselves to essentially ignore everyone else in the space. No reason to validate their tech against any sort of open standards, it would only slow them down.

Joyent, with a fast follow to Amazon, has had a lot of the core technologies in place with their product offerings, but lacked a clear API. They have been someone I personally used for a few consulting gigs and I've always been quite pleased when I signed someone up with them... Once it was up and running it sometimes took 2 months to provision an instance. Absolutely not automated. But they have a lot of great articles talking about performance and a much more "professional" enterprise solution. I don't doubt they have high end performance.

When Rackspace got in the game, they did it with "Mosso" who was selling a complete package with an entry price of only $100/month. Offered everything from LAMP to Microsoft and some things bundled as a service (Email, DNS). They even had Ruby on Rails for a while, but they never seemed to really get a handle on that. They offered capacity on demand that was quasi-transparent to you. You never had to worry about hardware or configuration issues, you just upload your content and use the services. When they finally made the leap to full blown self managed capacity on demand they were quick to learn from the mistakes of Joyent and roll out the API almost immediately.

From a technology point of view, Rackspace and Amazon are based on XEN's Hypervisor (discussed on FLOSS 67)Joyent is based on Open Solaris (discussed on FLOSS 75) zones.

How do you differentiate in this space?
I think it's pretty clear that the primary differentiation mechanisms at this point are quality and price. Especially as some of the older offerings become commoditized (Amazon S3 for storage, for example). You will find that to fight off the commoditization, you will have to continue to innovate (sharks that don't swim suffocate). The problem is that innovation, while it is necessary, can be the enemy of standardization since anyone can move faster than everyone. Partnership (Joyent has long partnered with Facebook and Yahoo developers to cross-sell services) is important, but it's hard to see any of those benefits going directly to the customer.

So that being said, everyone sticks to quality and price. Rackspace has more tiers of product offerings that go cheaper than either Joyent or Amazon. Amazon offers services that neither of the other two do. You could argue that all three have unique services, but I would say Amazon definitely has the lead when it comes to the sheer number and variety of services.

So now, bursting onto the scene is Open Stack which may be game changer for everyone. This should lower the barrier to exit, hopefully without raising the barrier to entry or stifling competition and/or the development process.

Expectations and Questions

So I am interested in what will come out of this. I really want to know how, based on truly different technologies, you're going to see someone migrate services from one provider to another. I really have high expectations for Rackspace. They have definitely thrown down the gauntlet and now it's time to see them deliver.

So the open questions I have for them are:

  1. What is the granularity with this? Is it service level? OS Level?
  2. What governance are you going to have for the standards board
  3. What checks and balances are you putting in place to make sure stay open?
  4. Why the announcement if you have no code? Later this year is a bogus answer (check the FAQ
  5. What kind of help do you need? Who are you going to let contribute?

A broad range of narrow target audiences

The general trend is to further abstract away systems and operations. EC2 got rid of the hardware, Google AppEngine gets rid of the OS (and a whole bunch of other stuff). I think Google is ahead of the game, technology-wise, but MS Azure Appliance is taking the next step. The underlying technology can be debated, but for private use it provides the best experience (with a lot of assumptions made, unfortunately) of the virtualization solutions.

So, the open-source business variant of this will not be to provide VM space (although it will have it's chunk of users), but to offer specialized, pre-configured images for customers to deploy, as well as a set of surrounding services (columnar tables, "classic" databases, messaging subsystems).

For example, images with a specific combination of CRM, document management, email, etc., all preconfigured for the external services (as well as the specific industry, if you want a good start on the next step). You have isolated instances, which can have their own versioning scheme, running whatever makes most sense for your customers. As an ISV, you have the choice of a wide range of products - and if someone doesn't want to upgrade, they don't have to.

It would certainly be nice if OpenStack were further along. Rather than an Azure appliance, I'd rather just have the tools to manage a build-my-own cloud. A viable OSS equivalent would certainly force MS to tip their hand, and just release it as a package.

I'm pretty happy with the state of competition in this space. There's some good leapfrogging going on, and most of it makes changes the regular drudgery.