During the 2010 think tank in Napa, the cloud was very present. One of the question was about the "threat" that the cloud represents for Open Source. This is funny because some very well in informed participants mention some key statistics. The major player in the cloud field, namely Amazon and Google, run an open-source (linux based) solution for their cloud.
Some unofficial statistics mention that more than 90% of Amazon EC2 instances run ... Linux. At some point, one could define the cloud as an Open Source OS + Open Source virtualization.
Why open source matters ?
An old open-source theory stated that, when the cost of a computer will reach 250$ then Open Source software will be in a strong position because it will be very difficult to pay hundred of dollars for ... software (was not able to find the reference but this is not my theory, feel free to comment and I will correct this blog entry).
I think that Open Source allows the cloud to exists : as the cost of servers get under 2500$ (lets assume that a server can be used by 10 users, we will find the same kind of ratio as for the initial prediction). In this context, when you manage 100 000s of servers, should you pay for ... operating system ? virtualization layer ? etc. In fact, most of the cloud players (Google, Facebook, Amazon, etc.), as start-ups, rely exclusively on open source. Constraint drive innovation and I really think that the present scale of those companies is a direct consequence of their platform choice : using any type of closed source software would have hurt the control on their platform and kill any innovation in the egg.
From and end-user point of view, the number one OS vendor (Microsoft) adapted itself to the cloud in a very reactive mode. In order to use a proprietary system in the cloud, you have to pay an extra 10c/hours/EC2 instance. If you use 100000s of hours, should you pay this tax ? Should you port your cloud-software to ... Linux ? At a certain level, RedHat and other licence-based commercial distros have the same problems : they have to somehow "rent" you your licence so that you can use them on the cloud. Once again, why pay for this and not use ... a freer distro like Debian or Ubuntu or even Fedora, CentOS or OpenSuse ? As a customer, no doubt you will consider alternatives and cost/benefits as it
What of the dominant players ?
While there is different players, I will concentrate on Amazon as Amazon is clearly in the leadership position : they published the API and offer a multi-tenant cloud infrastructure that is very cheap and very ... scalable. Scalability is not the problem of the user anymore at least from a hardware, storage and bandwidth point of view. However, applications scalability on the cloud is a very young and immature science ;-)
The EC2 API is in the process of becoming a de-facto standard and most of the cloud provider build their solution on top of this API. Others, like Eucalyptus, re-implement the API with a different toolbox (i.e. : other virtualization technologies) and as an open-source : you can have your own private cloud on your servers.
The Cloud : at least an environment that favor open-source !
If you look at the proprietary/closed-source/traditional licence-based business model they have to adapt to the cloud and somehow switch from a multi-instance architecture to a multi-tenant one. They also have to switch from a per-user licence to a per-usage model. This involves all kind of interesting gymnastic like the one Microsoft did : 10c/hour/instance. If you "rent" an instance for one year, your cost for MS Windows in the cloud is .10$*24*365 = 876$. Very expensive IMHO : they don't really believe in the cloud. If you are doing the math, you better buy a bunch of server licences that includes 5 VM : this will be way cheaper.
On the other hand there is no cost involved and no change required to any open-source software is you want to run it on the cloud : just do it ! No licence change, no hassle, almost no difference from a regular deployment in your data-center, no supplier to contact and ask "if you can run it on the cloud/how you can run it, etc.", no special provisioning (to have your precious licence number for each instance or to connect your licence server to your instances).
Moreover, open-source companies that develop open-source software already have a business model that is compatible with the Cloud : their software is already freely downloadable and can be run on any computer. When the old license-based model is used then some adaptation on the business sides of things, for instance usage based vs instance based. When a service-model is used, then no change is needed.
This can be a great opportunity for Open Source : a virgin territory without any legacy players and a business advantage because there is no need to change the existing software to benefit from this new market...