2. The freedom to study and change the source code so it does what you wish
3. The freedom to redistribute exact copies
4. The freedom to redistribute copies of your modified versions
While the open source definition and the free software definition are nearly identical, they seem to come apart at the seams when it comes to cloud.
"Releasing the server software source code does benefit the community: Suitably skilled users can set up similar servers, perhaps changing the software," Stallman wrote. "But none of these servers would give you control over computing you do on it, unless it's your server. The rest would all be SaaS. SaaS always subjects you to the power of the server operator, and the only remedy is, Don't use SaaS!. Don't use someone else's server to do your own computing on data provided by you."
Meanwhile, the open source world is working feverishly across the cloud stack -- Infrastructure as a Service (IaaS), Platform as a Service (PaaS), SaaS, Data Storage as a Service (DaaS) -- and in cloud management.
The properties of open cloud
Che says Red Hat believes in the open cloud, which he says has seven defining properties:
1. It's open source. "That's the foundation upon which you build," Che says.
2. It's based on collaborative development. "There's got to be a viable, independent community around the project," he says. "That dynamic has to be there, otherwise it's just a proprietary company releasing its source code."
3. It's based on open standards and open formats that are not tied into proprietary technology.
4. It gives you the freedom to use your intellectual property.
5. It gives users a choice of infrastructure. They get to choose their infrastructure provider and cloud provider.
6. It has open APIs. "It's got to be pluggable and extensible," Che says. "It can't be restricted by what you got out of the box."
7. It has to be portable to other clouds. It can't lock you in to a particular vendor.
"One of the areas where we need an open cloud is to give you the ability to have interoperability and portability across different clouds," Che says. "I should be able to manage a hybrid cloud that spans across all these different technologies."
Open source cloud to avoid vendor lock-in
One big step in that interoperability and portability direction is Apache Deltacloud, a project initiated by Red Hat in 2009 and then contributed to the Apache Software Foundation, where it gained Top-Level Project (TLP) status in 2010. With Deltacloud, the Apache Software Foundation is attempting to provide an answer to a problem that hasn't much reared its head yet, but is likely to become pressing in coming years: cloud lock-in.
"The biggest challenge is that there's so much happening in the cloud that users are so busy figuring out how best to use cloud that lock-in is still not a big concern for them," says David Lutterkort, principal software engineer at Red Hat and chair of the Apache Deltacloud project. "It's not that high on peoples' lists yet."
Deltacloud is an API that abstracts differences between clouds, enabling management of resources in different IaaS clouds using a single API. It can essentially be implemented as a wrapper around a large number of clouds, freeing users of cloud computing from dealing with the particulars of each cloud's API.