The Scalr team is at the CloudStack Collab Conf, and this post summarizes a few things we learned.

CloudStack has undergone many name changes since Sheng and his team created it, and I’ve been confused for a while about them. So I thought I’d share the fruits of a little investigation with the community.

It all started out as VMops (2008), which became Cloud.com (2010) in what was perhaps the greatest domain purchase and rebranding of the decade, and then became CloudStack following the Citrix acquisition (2011).

Up to version 3.0.0 CloudStack was available under the GPL license. Past that, Citrix decided to donate the CloudStack source and brand name to the Apache Software Foundation, starting by re-licensing the source under the Apache Software License 2.0: this was the 3.0.2 release. Since the brand name was donated as well, Citrix renamed its distribution CloudPlatform, using the same version number as Apache CloudStack: 3.0.2.

Apache CloudStack 3.0.2 did not meet the criteria for an Apache sanctioned release since it contained 3rd party binaries and libraries which while free were not license-compatible for redistribution from an Apache project. These were typically vendor libraries such as the VMware SDK jars.

The Apache CloudStack community proceeded to refactor the code so that the modules that depended on these libraries were made optional and not part of the default build. The license-incompatible binaries were removed from the source tree. Other source files whose provenance was unknown were tracked down and verified to meet (or otherwise rewritten) to meet the Apache standard. Further, the build system was moved to use Apache Maven instead of Apache Ant so that dependencies on libraries could be managed instead of checking in the dependencies into the source tree. In parallel, several pieces of the project infrastructure (git  repo, wiki, bugs, build, domain name) had to be moved to the Apache infrastructure. Not to say the least, it was a herculean effort!

The community decided to call this release 4.0 to reflect the clean split from Citrix control. Since the project is still incubating, the source-only release is called Apache CloudStack 4.0-incubating.

Citrix CloudPlatform meanwhile had customer commitments to meet and continued on the 3.0.x train and is currently at version 3.0.5. The features that went into 3.0.3 to 3.0.5 were contributed to Apache CloudStack and are included in Apache CloudStack 4.0-incubating.

The non-Citrix part of the community grew while adding several cool features on their own such as support for Ceph RBD as a primary storage option for KVM and support for Nicira NVP to support software-defined-networking (SDN).

Where do code contributions go, and how are they shared?

The community works on CloudStack, and all code written gets merged into CloudPlatform, with just a few exceptions. Because CloudPlatform is a commercially licensed and supported product, some community contributions that were merged into CloudStack are not included in it; these are the modules required to support Ceph (modern object storage) and Nicira (software defined networking).

Are there any differences in software distribution?

Not really. CloudStack installs from yum and apt, while CloudPlatform is a download from Citrix, making the former slightly easier.

What’s next?

CloudPlatform will eventually be rebased with CloudStack, and likely sync in version numbers. Perhaps in version 5?

 

http://blog.scalr.com/post/53326214526/the-difference-between-cloudstack-and-cloudplatform

posted on 2014-01-14 18:29  heidsoft  阅读(279)  评论(0编辑  收藏  举报