Developing products for XenServer as a platform for OpenStack or CloudStack
Many developers working with the XenServer APIs are also interested in developing products where XenServer is the platform for other Citrix products such as XenDesktop or is a platform underlying OpenStack or CloudStack. This page details a few resources for those interested in developing products for use in OpenStack or CloudStack environments.
CloudStack Apache license for CloudStack
Vendors can be assured that the Apache license will help them protect their IP. Anything built on or around CloudStack can remain proprietary and doesn’t need to be contributed back to the public space. That’s the main benefit of the Apache license vs GPL, and is usually the #1 concern/confusion vendors have.
How to get architectural advice for CloudStack
Development Resources for CloudStack
Most discussions occur on the cloudstack-dev mailing list, from time to time some information is summarised on the blogs at https://blogs.apache.org/cloudstack/
Citrix CloudPlatform is a commercial product, powered by Apache CloudStack, is a unified cloud management platform that combines the best cloud foundation for private enterprise workloads with the Amazon-style scale, elasticity and operational efficiency of cloud workloads.
- Cloud Platform Release Notes
- CloudPlatform release documentation
- Product home page
- CloudPlatform Marketplace (clouds using CloudPlatform can be found using the search facility on this page)
- CloudPlatform Reference Architecture
- CloudPlatform End-User API
What products do CloudPlatform clouds use?
Citrix has recently launched a cloud market place search facility, on this page; where CloudPlatform clouds are starting to list themselves, it is interesting to see how many are offering various ISV products to provide functionality such as backup, e.g.:
Development resources for OpenStack
XenServer already has a strong integration with OpenStack – see https://wiki.openstack.org/wiki/HypervisorSupportMatrix for details on some of the features supported by XenServer and how they compare to, for example, KVM/libvirt.
- In terms of integration with libvirt, although libvirt professes to be cross-hypervisor it is actually quite KVM specific – ranging from the features that it offers to the way it integrates with tools that XenServer also uses, such as qemu. Many of the concepts XenServer provides for enterprise-level virtualisation, such as management of pools, are entirely absent from libvirt. See https://wiki.openstack.org/wiki/XenAPI#Discussion for the rationale for have a separate driver – most of which continues to apply.
- An interesting point on this is that new “linux hypervisors” supported by OpenStack are continuing to use alternatives to libvirt – see https://github.com/dotcloud/openstack-docker/blob/master/docs/nova_blueprint.md
- Primarily XenServer’s OpenStack roadmap will be represented by blueprints in the nova project (see https://blueprints.launchpad.net/nova/+specs?searchtext=xenapi) – although when nearing the end of one of the development cycles for OpenStack the list of blueprints outstanding is very small and does not typically represent what will be completed during the next cycle.