incubator-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Doug Cutting <cutt...@gmail.com>
Subject Re: [VOTE] CloudStack for Apache Incubator
Date Tue, 10 Apr 2012 13:50:30 GMT
+1

Doug
 On Apr 9, 2012 6:32 PM, "Kevin Kluge" <Kevin.Kluge@citrix.com> wrote:

> Hi All.  I'd like to call for a VOTE for CloudStack to enter the
> Incubator.  The proposal is available at [1] and I have also included it
> below.   Please vote with:
> +1: accept CloudStack into Incubator
> +0: don't care
> -1: do not accept CloudStack into Incubator (please explain the objection)
>
> The vote is open for at least 72 hours from now (until at least 19:00
> US-PST on April 12, 2012).
>
> Thanks for the consideration.
>
> -kevin
>
> [1] http://wiki.apache.org/incubator/CloudStackProposal
>
>
>
>
> Abstract
>
> CloudStack is an IaaS ("Infrastracture as a Service") cloud orchestration
> platform.
>
> Proposal
>
> CloudStack provides control plane software that can be used to create an
> IaaS cloud. It includes an HTTP-based API for user and administrator
> functions and a web UI for user and administrator access. Administrators
> can provision physical infrastructure (e.g., servers, network elements,
> storage) into an instance of CloudStack, while end users can use the
> CloudStack self-service API and UI for the provisioning and management of
> virtual machines, virtual disks, and virtual networks.
>
> Citrix Systems, Inc. submits this proposal to donate the CloudStack source
> code, documentation, websites, and trademarks to the Apache Software
> Foundation ("ASF").
>
> Background
>
> Amazon and other cloud pioneers invented IaaS clouds. Typically these
> clouds provide virtual machines to end users. CloudStack additionally
> provides baremetal OS installation to end users via a self-service
> interface. The management of physical resources to provide the larger goal
> of cloud service delivery is known as "orchestration". IaaS clouds are
> usually described as "elastic" -- an elastic service is one that allows its
> user to rapidly scale up or down their need for resources.
>
> A number of open source projects and companies have been created to
> implement IaaS clouds. Cloud.com started CloudStack in 2008 and released
> the source under GNU General Public License version 3 ("GPL v3") in 2010.
> Citrix acquired Cloud.com, including CloudStack, in 2011. Citrix
> re-licensed the CloudStack source under Apache License v2 in April, 2012.
>
> Rationale
>
> IaaS clouds provide the ability to implement datacenter operations in a
> programmable fashion. This functionality is tremendously powerful and
> benefits the community by providing:
>
> - More efficient use of datacenter personnel
> - More efficient use of datacenter hardware
> - Better responsiveness to user requests
> - Better uptime/availability through automation
>
> While there are several open source IaaS efforts today, none are governed
> by an independent foundation such as ASF. Vendor influence and/or
> proprietary implementations may limit the community's ability to choose the
> hardware and software for use in the datacenter. The community at large
> will benefit from the ability to enhance the orchestration layer as needed
> for particular hardware or software support, and to implement algorithms
> and features that may reduce cost or increase user satisfaction for
> specific use cases. In this respect the independent nature of the ASF is
> key to the long term health and success of the project.
>
> Initial Goals
>
> The CloudStack project has two initial goals after the proposal is
> accepted and the incubation has begun.
>
> The Cloudstack Project's first goal is to ensure that the CloudStack
> source includes only third party code that is licensed under the Apache
> License or open source licenses that are approved by the ASF for use in ASF
> projects. The CloudStack Project has begun the process of removing third
> party code that is not licensed under an ASF approved license. This is an
> ongoing process that will continue into the incubation period. Third party
> code contributed to CloudStack under the CloudStack contribution agreement
> was assigned to Cloud.com in exchange for distributing CloudStack under
> GPLv3. The CloudStack project has begun the process of amending the
> previous CloudStack contribution agreements to obtain consent from existing
> contributors to change the CloudStack project's license. In the event that
> an existing contributor does not consent to this change, the project is
> prepared to remove that contributor's code. Additionally, there are binary
> dependencies on redistributed libraries that are not provided with an
> ASF-approved license. Finally, the CloudStack has source files incorporated
> from third parties that were not provided with an ASF-approved license. We
> have begun the process of re-writing this software. This is an ongoing
> process that will extend into the incubation period. These issues are
> discussed in more detail later in the proposal.
>
> Although CloudStack is open source, many design documents and discussions
> that should have been publicly available and accessible were not
> publicized. The Project's second goal will be to fix this lack of
> transparency by encouraging the initial committers to publicize technical
> documentation and discuss technical issues in a public forum.
>
> Current Status
>
> Meritocracy
>
> CloudStack was originally developed by Sheng Liang, Alex Huang, Chiradeep
> Vittal, and Will Chan. Since the initial CloudStack version, approximately
> 30 others have made contributions to the project. Today, Sheng and Will are
> less involved in code development, but others have stepped in to continue
> the development of their seminal contributions.
>
> Most of the current code contributors are paid contributors, employed by
> Citrix. Over the past six months CloudStack has received several
> contributions from non-Citrix employees for features and bug fixes that are
> important to the contributors. We have developed a process for accepting
> these contributions that includes validating the execution of a CLA and
> incorporating the contribution in the CloudStack in a manner that reflects
> the contributor's identity. This process has not followed the Apache model.
>
> The CloudStack Project has had an open bug database for two years. While
> this database includes ideas for enhancements to CloudStack, the committers
> have historically not asked the greater community for pointed assistance.
> Going forward the Project will encourage all community members to become
> committers and will make clear suggestions for features and bug fixes that
> would most benefit the community and Project.
>
> Community
>
> CloudStack has an existing community comprising approximately 8,000 forum
> members on cloudstack.org and 28,000 registrations for e-mail lists and
> newsletters relating to CloudStack. All forums, developer and administrator
> mailing lists, and IRC channels are active. A number of commercial entities
> (e.g., RightScale, AppFog, EnStratus) and open source projects (e.g.,
> jClouds, Chef) have integrated with CloudStack.
>
> To date, the community comprises users - people that download a CloudStack
> binary and install it to implement an IaaS cloud. The project expects that
> with independent governance and the openness of the Apache development
> model we will significantly increase the amount of developer participation
> within the community.
>
> Core Developers
>
> CloudStack spans a wide array of technologies: user interface,
> virtualization, storage, networking, fault tolerance, database access and
> data modeling, and Java, Python, and bash programming. There is significant
> diversity of knowledge and experience in this regard.
>
> Several of the initial committers have experience with other open source
> projects. Alex Huang contributed to SCM-bug. Anthony Xu, Edison Su, Frank
> Zhang, and Sheng Yang have prior experience with a combination of Xen and
> KVM. Chiradeep Vittal has contributed to OpenStack. David Nalley has been
> contributing to Fedora for several years. David has also contributed to
> Zenoss, Cobbler, GLPI, OCS-NG, OpenGroupware, Ceph, and Sheepdog.
>
> CloudStack development to date has largely been done in the U.S. and India.
>
> CloudStack has largely been developed by paid contributors.
>
> Alignment
>
> CloudStack has significant integration with existing Apache projects, and
> there are several exciting opportunities for future cross-project
> collaboration.
>
> The CloudStack Management Server (i.e., the control plane) is deployed as
> a web application inside one or more Tomcat instances.
>
> The Management Server uses Apache Web Services, Apache Commons, Apache XML
> RPC, Apache log4j, and Apache HttpComponents httpcore. It is built with
> Apache Ant.
>
> There are strong opportunities for collaboration with other Apache
> Projects. Collaboration with Hadoop has at least two exciting aspects:
> - CloudStack could provide an object store technology (similar to Amazon's
> S3 service) in conjunction with the compute service (similar to Amazon's
> EC2 service) that it already offers. HDFS from the Hadoop project is a
> promising technology for the implementation of the object store.
> - It would also be possible to have CloudStack provision Hadoop compute
> nodes, either through virtualization or directly to baremetal. With this
> CloudStack could become an optional or required part of the infrastructure
> control plane for Hadoop.
>
> ZooKeeper might be helpful to implement a distributed cloud control plane
> in the future.
>
> Derby could be used as alternative database; CloudStack currently uses
> MySQL.
>
> ActiveMQ is a good option for some of the communication that occurs in the
> orchestration of the cloud.
>
> It would be natural for Apache libcloud and Apache DeltaCloud to support
> the CloudStack API and public clouds that expose it.
>
> As mentioned earlier the proposers are seeking an independent foundation
> to provide governance for the project. ASF has clearly been successful in
> providing this, and we believe ASF is the best match for the future goals
> of the project.
>
> Known Risks
>
> Orphaned products
>
> Citrix will work with the community to create the most widely deployed
> cloud orchestration software. Citrix's internal "plan of record" commits
> significant budget to developing the Project through 2014. Investment past
> 2014 is unspecified, but likely to continue given known and predicted
> revenues from derivative commercial products.
>
> Citrix is developing a thriving business in conjunction with the prior and
> continued success of the community and use of CloudStack. The project may
> be orphaned in the condition where the Project has failed to obtain either
> non-paid committers or paid committers from other vendors, and the
> committers paid by Citrix are re-assigned to another project.
>
> Inexperience with Open Source
>
> CloudStack has been open source since May, 2010, with the CloudStack 2.0
> release by Cloud.com.
>
> From May, 2010 to August, 2011 CloudStack was "open core", wherein
> approximately 95% of the code was available with a GPLv3 license and 5% of
> the code was proprietary. During this time the bug database was open and
> the source code was available. Project direction and technical discussions
> occurred in a closed fashion. Few technical documents were publicly
> available.
>
> In August, 2011 CloudStack transitioned to 100% open source. The 5%
> proprietary code was released publicly with a GPLv3 license. The bug
> database remained open. Project direction and technical discussions
> occurred in a closed fashion. Some technical documents were shared publicly.
>
> During 2012 the proposers have posted a significant fraction of technical
> documents pertaining to the recent CloudStack 3.0 release publicly. Some
> technical discussion has occurred in the open.
>
> In April, 2012 CloudStack was re-licensed under the Apache License v2.
>
> Several contributors have prior open source experience. This is discussed
> in the "Core Developers" section.
>
> The CloudStack development process must change significantly to conform to
> the Apache model. These changes include: carry on all technical
> conversations in a public forum, develop all technical documentation
> publicly, follow the vote process on contribution approvals, and promote
> individuals beyond the initial committers to committer status, based on
> merit.
>
> Homogenous Developers
>
> The Project has committers in two locations in India, one location in the
> UK, and one location in the U.S. The technical knowledge of the committers
> is diverse, as evidenced by the wide range of technologies that converge in
> CloudStack. The range of professional experience of the committers is
> diverse as well, from a few months to 20+ years.
>
> The initial committers are all associated with the sponsoring entity. The
> Project will have to work with the community to diversify in this area.
>
> Reliance on Salaried Developers
>
> The initial committers are all salaried committers.
>
> The initial committers have worked with great devotion to the project and
> have enjoyed its success. We hope this will create an emotional bond to the
> project that will last beyond their employment with Citrix Systems.
>
> We expect salaried committers from a variety of companies. CloudStack is
> an opportunity for many vendors to enable their software and hardware to
> participate in the changes brought by the development of an API that can
> manage datacenter infrastructure. It is also an opportunity for datacenter
> operators to implement features they find helpful and share them with the
> community.
>
> We hope to attract unpaid committers. CloudStack is interesting technology
> that solves many challenging problems, and cloud computing is popular in
> the industry media now. But, few people will run a CloudStack deployment
> for personal use, and this may limit our ability to attract unpaid
> committers. We hope that the technical domain is interesting to new
> committers that will join us in improving CloudStack.
>
> Relationships with Other Apache Products
>
> Please see the Alignment section above.
>
> Apache Brand Awareness
>
> We expect that licensing CloudStack under the AL and associating it with
> the Apache brand will attract additional contributors and CloudStack users.
> However, we have selected the ASF as the best governance option for the
> project for the reasons discussed in the Rationale. Further, we expect to
> continue development of the CloudStack under the AL with or without the
> support of ASF.
>
> Citrix currently sells a proprietary version of CloudStack released as
> "Citrix CloudStack". For the foreseeable future, Citrix expects to continue
> to sell orchestration software based on CloudStack. Citrix will work with
> the ASF Incubator PMC and within the Podling Branding guidelines to ensure
> that a new branding scheme is selected for Citrix's proprietary version of
> CloudStack that is consistent with ASF's branding policies.
>
> Documentation
>
> The CloudStack project has publicly available administrator documentation,
> source code, forums, and technical specifications. This documentation is
> available at the following sites:
> - http://cloudstack.org: forums, latest news, downloads, blogs; a good
> starting point.
> - http://docs.cloudstack.org: installation guide, administration guide,
> API documentation, technical specifications
> - http://confluence.cloudstack.org: past and future release plans,
> additional technical documentation
> - http://git.cloud.com: current source. See the 3.0.x and master branches.
>
> Initial Source
>
> The genesis of CloudStack's source is discussed in the "Inexperience with
> Open Source" section.
>
> Citrix Systems currently owns the CloudStack code base. Committers use the
> repository at git.cloud.com to access and submit code. This repository is
> located in the U.S.
>
> We propose to donate the basis for the 3.0.x series of CloudStack
> releases. This is the current release stream. Prior CloudStack versions
> have been kept as GPLv3 and currently receive limited maintenance and no
> feature development. The software associated with these prior versions will
> not be donated to ASF. Further, many branches exist and we see no benefit
> in recreating this historical complexity within ASF infrastructure.
>
> Source and Intellectual Property Submission Plan
>
> Multiple intellectual property assets are associated with the CloudStack
> project. First and foremost, the CloudStack source is protected by
> copyright. Upon acceptance into the ASF incubation program, Citrix Systems
> anticipates licensing the CloudStack source to the ASF. The licensed code
> will include all source code from the "master" branch at git.cloud.com.
>
> In addition to the source code, Citrix systems owns a number of trademark
> and domain name assets that are used by the CloudStack project. Citrix
> anticipates donating substantially all of these trademark and domain name
> assets upon acceptance into the ASF incubation program. In particular,
> Citrix anticipates donating at least the CloudStack trademark and related
> domain names.
>
> CloudStack is protected by a number of pending patent applications owned
> by Citrix Systems. Citrix Systems anticipates continuing to prosecute and
> maintain these patent applications upon entry into the ASF incubation
> program. Citrix Systems is dedicated to protecting the larger CloudStack
> community and will continue to obtain patents on CloudStack technology as a
> way to protect contributors and members of the CloudStack community from
> outside threats.
>
> Internal Dependencies
>
> The CloudStack Management Server has some externally developed code
> embedded in it. This code has come from a variety of sources and has a
> variety of licenses, some of which are not approved by ASF for use in
> Apache projects. We have already begun the process of removing and/or
> re-implementing code that does not have an approved license.
>
> [ Please see web page for this content ]
>
> Contributions made to the CloudStack prior to the switch to AL were done
> based on a CLA that did not authorize re-licensing the contribution to AL.
> Citrix legal has prepared a new document that requests contributors to
> authorize the re-license to AL. We are asking each such contributor to sign
> this agreement. We will remove and/or re-implement the contributions of
> prior committers that do not sign this agreement. We do not expect this
> issue to materially impact the project.
>
> Citrix legal has also prepared a new CLA for the project that authorizes
> AL licensing of contributions. This CLA will be used for contributions
> between the switch to AL and an eventual donation of the source to ASF.
>
> External Dependencies
>
> The CloudStack Management Server uses a significant number of libraries.
> These libraries are redistributed with CloudStack in binary form. Some of
> them have licenses that are not approved by ASF for use in Apache projects.
> We will replace them with other libraries with approved licenses or
> re-write the functions provided by the libraries.
>
> We expect that it will take 3 months to remove and/or re-implement the
> problematic embedded source and problematic redistributed libraries.
>
> Binary Dependencies
>
> [ Please see web page for this content ]
>
> System Virtual Machines
>
> The CloudStack uses multiple Debian-based virtual machines to implement
> features of the software. The source code that comprises the Debian-based
> virtual machines is GPL licensed.
>
> The CloudStack source code includes (AL) scripts that will download and
> build this software. This software is downloaded from repositories external
> to git.cloud.com, and will presumably also be external to any
> Apache-owned infrastructure.
>
> The CloudStack will download and deploy virtual machines that are built
> with this GPL software. Once deployed, the CloudStack will install
> AL-licensed software on to these virtual machines.
>
> Since this GPL software is not present in the CloudStack repository we
> believe these mechanisms will be approved by ASF for use in the Project,
> but we have included this explanation for completeness.
>
> Cryptography
>
> The CloudStack makes use of encryption functions available via Java and
> the underlying OS. We expect that the CloudStack will have to follow the
> export control procedures described at
> http://www.apache.org/dev/crypto.html. When the CloudStack was previously
> registered with BIS the open source version qualified for the TSU exception.
>
> The CloudStack uses https to communicate to XenServer and vCenter. ssh and
> scp are used between the Management Server and hypervisor hosts as well.
>
> The CloudStack stores an MD5 hash of user password data. The CloudStack
> uses MySQL encryption to store some data in an encrypted fashion.
>
> The CloudStack stores a pair of API public/secret keypairs for users. This
> is done using javax.crypto.KeyGenerator with HMAC-SHA-1.
>
> The CloudStack does not specify key lengths explicitly. It uses SSH, SCP
> and lets them negotiate encryption.
>
> The CloudStack provides a public HTTP-based API to provision and
> deprovision VPN users. The CloudStack has internal Java-based abstractions
> for managing VPN users. This Java software makes private API calls to
> another system, which will then provision the VPN user in the VPN software
> on that other system. The actual set up of the VPN session is done using
> L2TP/IPSec.
>
> As mentioned earlier the CloudStack includes software to build and later
> deploy Debian-based virtual machines. These VMs are stripped down versions
> of Debian that include encryption sufficient for ssh/scp, https, and IPSec
> VPN to work. The CloudStack does not include the source for these VMs. The
> maximum encrypted throughput of the VPN has not been determined.
>
> Required Resources
>
> Mailing Lists
>
> We request mailing lists to match the mailing lists currently in use, plus
> the recommended private list. These are:
>
>    cloudstack-private: for confidential PPMC discussion
>    cloudstack-dev: for development discussions
>    cloudstack-user: for administrator and discussions
>
> Subversion Directory
>
> The CloudStack has used git for approximately two years. We understand
> that there is a "prototype" git server available. We request an allocation
> on this git server. We believe this will be less disruptive to the
> committers than a change to SVN.
>
> We request "/repos/asf/incubator/cloudstack".
>
> Issue Tracking
>
> We would like an allocation for Jira. CloudStack uses bugzilla today, but
> we have been planning a move to Jira for some time. We request that the
> project name be "CloudStack".
>
> Other Resources
>
> The CloudStack Project includes several websites. Donation of these
> websites was discussed in the IP submission plan. We would like to engage
> in discussion on the logistics of this.
>
> Initial Committers
>
> In the past few months several new developers have joined the Citrix
> CloudStack team. We are recommending that only the developers with several
> months of experience with CloudStack join as initial committers. The
> Project will then follow the meritocratic process to enable the newer team
> members to become committers. We believe this will be a good exercise for
> us as we transition to an Apache development model in the Project.
>
> The list of initial committers follows. At this time none of the initial
> committers has a CLA on file with ASF.
>
>    Abhinandan Prateek, abhinandan.prateek.at.citrix.com
>    Alena Prokharchyk, alena.prokharchyk.at.citrix.com
>    Alex Huang,alex.huang.at.citrix.com
>    Anthony Xu, xuefei.xu.at.citrix.com
>    Brian Federle, brian.federle.at.citrix.com
>    Chiradeep Vittal, chiradeep.vittal.at.citrix.com
>    David Nalley, david.nalley.at.citrix.com
>    Edison Su, edison.su.at.citrix.com
>    Frank Zhang, frank.zhang.at.citrix.com
>    Janardhana Reddy, janardhana.reddy.at.citrix.com
>    Jessica Tomechak, jessica.tomechak.at.citrix.com
>    Jessica Wang, jessica.wang.at.citrix.com
>    Kelven Yang, kelven.yang.at.citrix.com
>    Kevin Kluge, kevin.kluge.at.citrix.com
>    Kishan Kavala, kisha.kavala.at.citrix.com
>    Murali Reddy, murali.reddy.at.citrix.com
>    Nitin Mehta, nitin.mehta.at.citrix.com
>    Prachi Damle, prachi.damle.at.citrix.com
>    Sam Robertson, sam.robertson.at.citrix.com
>    Sheng Yang, sheng.yang.at.citrix.com
>    Sonny Chhen, sonny.chhen.at.citrix.com
>    Will Chan, will.chan.at.citrix.com
>
> Affiliations
>
> The initial committers are all affiliated with Citrix Systems.
>
> Sponsors
>
> Champion
>
> Jim Jagielski
>
> Nominated Mentors
>
> Jim Jagielski, Daniel Kulp, Alex Karasulu, Olivier Lamy, Brett Porter,
> Mohammad Nour, Matt Hogstrom
>
> Sponsoring Entity
>
> We request that the Incubator sponsor this effort.
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: general-unsubscribe@incubator.apache.org
> For additional commands, e-mail: general-help@incubator.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message